siso: add -reapi_walkdir_stream flag

WalkDir is implemented by using GetTree gRPC call.
GetTree is streaming call so it would hold gRPC stream
long time, so gRPC stream would be saturated and
other gRPC call need to wait for free gRPC stream.

To compare performance, implement WalkDir by using BatchReadBlobs,
which is unary call, so it would need more roundtrip
than streaming call, but it would release gRPC stream soon,
so reduce gRPC stream waiting time of other gRPC call.

Bug: b/539291862
Change-Id: I6c40e39e65375d9124fc1e8f55f1e4b3a3e7a74e
Reviewed-on: https://chromium-review.googlesource.com/c/build/+/8162420
Auto-Submit: Fumitoshi Ukai <ukai@google.com>
Reviewed-by: Yuke Liao <liaoyuke@google.com>
Commit-Queue: Yuke Liao <liaoyuke@google.com>
2 files changed
tree: bfa835c0b305516b3f93ae3b0a6daee18e2fd34b
  1. bench/
  2. gong/
  3. hashigo/
  4. infra/
  5. kajiya/
  6. kzipinfo/
  7. remote-apis/
  8. runmc/
  9. siso/
  10. .gitignore
  11. .golangci.yml
  12. .style.yapf
  13. BUILD_OWNERS
  14. BUILD_TEAM_OWNERS
  15. CONTRIBUTING.md
  16. LICENSE
  17. OWNERS
  18. PRESUBMIT.py
  19. README.md
  20. WATCHLISTS
README.md

build.git repository

This repository contains tools developed and owned by the Chrome Build Team.

Quick start

The steps for getting the code are:

  1. Install depot_tools
  2. Run git clone https://chromium.googlesource.com/build

We use the standard Go module workflow to work on our projects.

Links