Pass the digest directly to buildbox-run
NOTE: This MR is paired with buildbox-common!60 (closed)
Description
This MR provides a small optimization by removing the writing of an input Digest
to a file and instead passing it directly on the command line to the runner. Since BuildGrid delivers its payloads in Digest
form, this should provide an improvement when used with BuildGrid.
This is by no means a significant sample size, but I kicked off a couple of builds in the rkothur/performance
branch (which is identical to this branch except it prints timings of the worker thread) and the rkothur/old-timings
branch (which is identical to master
except it prints timings). Here are some timings using a file that takes a longer time to compile than the hello.cpp
in buildbox-e2e
's master branch:
rkothur/old-timings | rkothur/performance |
---|---|
4.71874s | 4.53277s |
5.02252s | 4.80189s |
5.04901s | 4.76195s |
I also renamed the --action
argument in the Runner to --action-file
to clarify the difference between the two, so I've passed in the new name here as well.
This MR is paired with buildbox-common!60 (closed), which is why I've altered the docker image used by the e2e test in this MR. Once they are both merged. I can flip the e2e branch back to :latest
.
In the future I'll be taking up some proper profiling work to address more significant bottlenecks, but this seemed like a pretty quick win.
Changes proposed in this merge request:
- Write input
Digest
to a file - Rename
--action
to--action-file
- Switch CI branch to
:push-back
(temporarily)
This merge request, when merged, will address issue/bug:
Performance optimization