Skip to content

Pass the digest directly to buildbox-run

Rohit Kothur requested to merge rkothur/pass-digest-directly into master

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

Edited by Rohit Kothur

Merge request reports