Improve import performance

  • Add fast path for CAS-to-CAS subdirectory import without filter
  • Use variable-length argument list for Directory.descend()
  • Reduce number of os.path.join() calls
  • Use CasBasedDirectory as sandbox root for import and filter elements

With this branch I see a 40% reduction in staging time for CAS-based sandbox (BuildBox, remote execution). I also see a 30-40% reduction in execution time for the BuildStream test suite due to the import element optimization.

Edited by Jürg Billeter

Merge request reports

Loading