This folder contains a set of files that are included from libc/benchmarks/MemorySizeDistributions.cpp
.
Offloading this data to individual files helps
Most filenames are of the form {MemoryFunctionName}{WorkloadID}.csv
. They contain a single line of comma separated real values representing the probability that a particular size occurs. e.g.
"0,1"
indicates that only the size 1
occurs,"0.5,0.5"
indicates sizes 0
and 1
occur with the same frequency.These files usually contains sizes from 0
to 4096
inclusive. To save on space trailing zeros are discarded.
As identified in the automemcpy paper:
GoogleA
<-> service 4
GoogleB
<-> database 1
GoogleD
<-> storage
GoogleL
<-> logging
GoogleM
<-> service 2
GoogleQ
<-> database 2
GoogleS
<-> database 3
GoogleU
<-> service 3
GoogleW
<-> service 1
Uniform384To4096
is an additional synthetic workload that simply returns a uniform repartition of the sizes from 384
to 4096
inclusive.
Except for GoogleD
, all distributions are gathered over one week worth of data.