-
Notifications
You must be signed in to change notification settings - Fork 2
Stats
A job is a compilation request. A command line like:
cl /c a.cpp b.cpp
creates 2 jobs:
- one for a.cpp
- one for b.cpp
The number of cache hits for job requests.
Similar to job hit, except this counter increments when a job was resolved using the distributed Stash.
The number of cache misses for job requests.
The number of jobs that were discarded because some combination of options were not supported.
This happens, for example, when using PDB (program database with /Zi) and PCH (pre-compiled header with /Yc) options at the same time. Using PDB's and PCH's individually are supported, but not both options simultaneously. In this scenario, caching is disabled but compilation will still benefit from automatic multi-threading and the correct output will be generated.
Other unsupported options include:
- /ZI: generating PDBs for edit and continue. This often does not work well for projects of any complexity and using /Zi or /Z7 is preferred.
- /Fi: set pre-processed output file
- /Fm: create a map file
- /FR: generate a browse file
and options that generate no output like /Zs (syntax check only)
The statistics page in the dashboard will list a running count of unsupported jobs. To improve performance modify the build system to exclude the use of parameter combinations that force Stashed to abandon caching work.
Blobs represent any compilation outputs: .obj
, .pch
, .pdb
files.
A command line like:
cl /c /Yc a.cpp
would request 2 blobs:
- one for a.obj
- one for a.pch
The number of cache hits for blob requests
Similar to blob hit, except this counter increments when a blob was fetched from the distributed Stash.
The number of cache misses for blob requests
The CPU time is measured per job. The real compilation time might be shorter as jobs are run in parallel.
Time spent compiling. This time is often larger than real time as it measures time for jobs run in parallel. E.g.: 8 compile jobs that take 30 seconds each tallies 240 seconds of CPU compile time, but may finish around 30 seconds later because they each are running simultaneously.
This is the time saved by fetching from the cache. It takes the real CPU time it took to generate the requested output then subtracts the time it took to locate the cache entry and return it to the user.
© 2017 Playscale Pte. Ltd.