Files
TheRock/compiler/amd-llvm/libc/benchmarks/distributions/README.md
T
derek.holloway 7502bf64a4
CodeQL / Analyze (actions) (push) Canceled after 0s
CodeQL / Analyze (python) (push) Canceled after 0s
pre-commit / pre-commit (push) Canceled after 0s
Multi-Arch CI / setup (push) Canceled after 0s
Publish build_manylinux_x86_64 images / publish_build_manylinux_x86_64 (push) Canceled after 0s
Setup (Multi-Arch) / setup (push) Canceled after 0s
Multi-Arch CI / Linux::${{ fromJSON(needs.setup.outputs.linux_build_config || '{}').build_variant_label || 'skip' }} (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Publish no_rocm_image_ubi10 image / publish_no_rocm_image_ubi10 (push) Canceled after 0s
Multi-Arch CI / Windows::${{ fromJSON(needs.setup.outputs.windows_build_config || '{}').build_variant_label || 'skip' }} (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Multi-Arch CI / Manifest Diff (push) Canceled after 0s
TheRock Manifest Diff Report / Generate Manifest Diff Report (push) Canceled after 0s
Multi-Arch CI / CI Summary (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04 (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04_ocl_rt images / publish_no_rocm_image_ubuntu24_04_ocl_rt (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04_rocgdb (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04_rocgdb images / publish_no_rocm_image_ubuntu24_04_rocgdb (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04_ocl_rt (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Unit Tests / Unit Tests :: ubuntu-24.04 (push) Canceled after 0s
Unit Tests / Unit Tests :: windows-2022 (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04_media (push) Canceled after 0s
Unit Tests / Unit Tests Summary (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04_openmpi (push) Canceled after 0s
Flatten subprojects into a single base monorepo
2026-09-02 16:34:47 -07:00

1.4 KiB

Size distributions for memory functions under specific workloads

This folder contains a set of files that are included from libc/benchmarks/MemorySizeDistributions.cpp.

Offloading this data to individual files helps

  • C++ editors (large arrays are usually not well handled by editors),
  • and allows processing data by other tools to perform analysis or graph rendering.

Format

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.

Workloads

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.

Note

Except for GoogleD, all distributions are gathered over one week worth of data.