CoolFace
Datasetpublic

Qinghao/AcmeTrace

Acme Trace This repository hosts the public releases of Acme traces from the Shanghai AI Lab, encompassing workloads spanning from March 2023 to August 2023. We encourage anyone to use the traces for academic purposes, and if you had any questions, feel free to send an email to us, or file an issue on Github. Furthermore, we have conducted a thorough analysis of the Acme workloads, detailed in our NSDI '24 paper titled Characterization of Large Language Model Development in the… See the full description on the dataset page: https://huggingface.co/datasets/Qinghao/AcmeTrace.

sourceHugging Faceupdated 3y agoView on Hugging Face
10likes738downloads
Dataset Card

Acme Trace

This repository hosts the public releases of Acme traces from the Shanghai AI Lab, encompassing workloads spanning from March 2023 to August 2023. We encourage anyone to use the traces for academic purposes, and if you had any questions, feel free to send an email to us, or file an issue on Github.

Furthermore, we have conducted a thorough analysis of the Acme workloads, detailed in our NSDI '24 paper titled Characterization of Large Language Model Development in the Datacenter.

<!-- ### Note that due to space constraints on GitHub, our cluster utilization files are not hosted here. If you're interested in accessing these files, they are available on HuggingFace (~80GB). <span style="font-size:20px;font-weight:bold;"> Link:</span> <img src="https://huggingface.co/datasets/huggingface/badges/raw/main/dataset-on-hf-sm.svg"> -->

<!-- [Acme Full Dataset](https://huggingface.co/datasets/Qinghao/AcmeTrace) -->

Acme Dataset

The main trace characteristics, dataset structure and schema are:

Main Characteristics:

  • Full Dataset size: 80GB (on HuggingFace)
  • Dataset size: 109MB
  • Duration: 6 months
  • Number of independent GPU clusters: 2
  • Total number of jobs: 880,740
  • Total number of GPU jobs: 470,497

Dataset Structure

📦AcmeTrace
 ┣ 📂data
 ┃ ┣ 📂job_trace 
 ┃ ┃ ┣ 📂trace_previous_work              (Prior job traces for comparison)
 ┃ ┃ ┃ ┣ 📜helios_trace.csv
 ┃ ┃ ┃ ┣ 📜xxx.csv
 ┃ ┃ ┣ 📜trace_kalos.csv                  (Job trace file, collected from scheduler)
 ┃ ┃ ┗ 📜trace_seren.csv
 ┃ ┣ 📂utilization
 ┃ ┃ ┣ 📂ipmi                             (Power of different server models in Seren, collected from IPMI)
 ┃ ┃ ┃ ┣ 📜CPU_D_Power.csv
 ┃ ┃ ┃ ┣ 📜GPU_AB_Power.csv
 ┃ ┃ ┃ ┗ 📜GPU_C_Power.csv
 ┃ ┃ ┣ 📂kalos                            (Resource utilization logs, collected from DCGM & Prometheus)
 ┃ ┃ ┃ ┣ 📜DRAM_ACTIVE.csv
 ┃ ┃ ┃ ┣ 📜xxx.csv
 ┃ ┃ ┣ 📂seren
 ┃ ┃ ┃ ┣ 📜DRAM_ACTIVE.csv
 ┃ ┃ ┃ ┣ 📜xxx.csv
 ┃ ┃ ┣ 📂util_pkl                         (Processed pickle files for plotting)
 ┃ ┃ ┃ ┣ 📜gpu_power_kalos.pkl
 ┃ ┃ ┃ ┣ 📜xxx.pkl
 ┃ ┣ 📜cluster_summary.csv
 ┃ ┣ 📜generate_utilization_pkl.ipynb     (Parse utilization files and generate pickles)
 ┃ ┗ 📜utils.py
 ┣ 📂figure                               (Examples of trace visualization)
 ┃ ┣ 📜bar_job_state.pdf
 ┃ ┣ 📜xxx.pdf
 ┣ 📜LICENSE.txt
 ┣ 📜README.md
 ┗ 📜analysis.ipynb                       (Scripts for plotting)

Schema and Description

1. Job Trace

Description

Provides rich information on all jobs submitted to scheduler in each cluster.

  • trace_seren.csv Example
job_idusernode_numgpu_numcpu_numtypestatesubmit_timestart_timeend_timedurationqueuegpu_time
5778432u590718128OtherFAILED2023-03-01 00:18:22+08:002023-03-01 00:18:54+08:002023-03-01 00:20:51+08:0011732936.0
5778469u590718128OtherCOMPLETED2023-03-01 00:23:58+08:002023-03-01 00:24:11+08:002023-03-01 01:09:04+08:0026931321544.0
  • trace_kalos.csv Example
job_idusernode_numgpu_numcpu_nummem_per_pod_GBshared_mem_per_podtypestatesubmit_timestart_timeend_timefail_timestop_timedurationqueuegpu_time
dlctk696s0jbvitvuf7948649601000100.0OtherFAILED2023-05-17 11:00:58+00:002023-05-17 11:01:08+00:002023-05-17 11:01:16+00:002023-05-17 11:01:16+00:001810.01152.0
dlc1t2ypl09b8qtpuf7948649601000100.0OtherCANCELLED2023-05-17 11:28:42+00:002023-05-17 11:28:54+00:002023-05-17 11:30:04+00:002023-05-17 11:30:04+00:008212.05248.0
Schema
FieldDescription
job_idunique id of the job
userhashed id for the user, prefix is 'u'
node_numnumber of nodes in the job
gpu_numnumber of GPUs required for the job
cpu_numnumber of CPUs required for the job
typeworkload type in LLM development
statethe job's status upon termination <sup>1</sup>
submit_timethe job's submission time
start_timethe job's start execution time
end_timethe job's termination time
durationtotal job execution time of the job <sup>2</sup>
queuetotal job queue time of the job <sup>3</sup>
gpu_timetotal GPU resource consumed by the job <sup>4</sup>

Only in Kalos: | Field | Description | | ------------- | --------------------------------------------------- | | mem_per_pod_GB | Pod memory resource configuration | | shared_mem_per_pod | Pod memory resource configuration | | fail_time | the time that failure occurs | | stop_time | the time that job stops |

Notes
  1. 1.A job can end up with one of five statuses: (1) COMPLETED: it is finished successfully; (2) CANCELLED: it is terminated by the user; (3) FAILED: it is terminated due to internal or external errors; (4) TIMEOUT: the execution time is out of limit; (5) NODE_FAIL: it is terminated due to the node crash. TIMEOUT and NODE_FAIL are very rare in our traces, and are regarded as failed in our analysis.
  2. 2.Calculated from the difference between end_time and start_time. (Unit: seconds)
  3. 3.Calculated from the difference between start_time and submit_time. (Unit: seconds)
  4. 4.Calculated from the product between duration and gpu_num.

2. Resource Utilization

Description

Cluster resource utilization monitoring data, collected from DCGM, IPMI and Prometheus.

  • NODE_CPU_UTILIZATION.csv Example
Time10.140.1.1010.140.1.5410.140.1.9010.140.1.4110.140.1.9810.140.0.16610.140.1.410.140.1.4010.140.1.13410.140.0.14710.140.1.11910.140.0.18410.140.0.15110.140.0.25410.140.1.8310.140.0.24610.140.1.7810.140.1.10310.140.1.15510.140.1.8710.140.1.10610.140.1.14010.140.1.15010.140.1.10710.140.1.17210.140.1.9510.140.0.14610.140.1.12510.140.1.5010.140.1.11210.140.0.15910.140.0.14410.140.0.21510.140.1.3610.140.1.14310.140.1.14710.140.1.1410.140.1.8510.140.1.5610.140.0.24310.140.0.24210.140.1.6310.140.0.13210.140.0.25510.140.1.5910.140.1.13010.140.0.21810.140.0.22010.140.1.2710.140.1.6710.140.1.13610.140.1.8410.140.0.19010.140.1.12110.140.1.14610.140.1.3810.140.0.23210.140.1.1810.140.1.6610.140.0.20510.140.1.15410.140.1.17010.140.0.17910.140.0.13510.140.1.10210.140.1.7210.140.0.24910.140.1.13810.140.1.2410.140.1.6010.140.1.8210.140.0.23310.140.1.2310.140.0.24110.140.0.24810.140.1.6810.140.1.110.140.0.21910.140.1.11610.140.0.15710.140.0.17810.140.1.2910.140.1.5710.140.0.16310.140.1.5210.140.1.17710.140.1.1110.140.1.2610.140.1.3410.140.1.9210.140.0.21110.140.0.16110.140.0.13110.140.1.12410.140.0.23810.140.1.4410.140.0.23710.140.1.7910.140.1.1710.140.0.21410.140.1.15310.140.1.11710.140.1.10910.140.0.16710.140.0.20710.140.0.13410.140.1.9910.140.1.3110.140.1.12710.140.0.25010.140.1.13910.140.1.5310.140.1.12310.140.1.7710.140.0.13310.140.0.25110.140.1.5510.140.1.1210.140.1.1910.140.1.4710.140.1.11810.140.1.6110.140.1.11010.140.1.6410.140.1.12910.140.0.21710.140.1.10410.140.0.24410.140.0.21310.140.1.9710.140.0.13610.140.1.2210.140.1.3210.140.1.17110.140.1.15110.140.1.9610.140.1.4610.140.0.15810.140.1.5110.140.1.8610.140.1.3010.140.0.15610.140.1.4310.140.1.7410.140.1.8910.140.1.16910.140.1.8010.140.1.210.140.1.10810.140.1.9310.140.1.7310.140.0.18010.140.1.7110.140.1.8810.140.0.20910.140.1.8110.140.0.15210.140.1.2810.140.1.5810.140.0.23610.140.0.13810.140.0.14910.140.0.20610.140.1.1510.140.0.24010.140.0.20310.140.1.510.140.1.3710.140.0.14310.140.0.16010.140.0.25210.140.1.7510.140.1.11510.140.0.24710.140.1.610.140.1.1610.140.0.21610.140.0.15010.140.1.2510.140.0.20810.140.1.6210.140.1.17310.140.1.13710.140.1.910.140.1.6510.140.1.11110.140.1.13510.140.1.11410.140.1.13210.140.0.15410.140.0.20410.140.1.9110.140.1.12010.140.1.10510.140.1.13110.140.0.16510.140.0.21010.140.0.14810.140.1.13310.140.0.23910.140.1.1310.140.1.14410.140.0.13710.140.0.23410.140.1.14210.140.1.16810.140.0.23510.140.0.14010.140.1.3910.140.0.15310.140.0.13910.140.1.310.140.1.710.140.1.9410.140.1.14510.140.1.14910.140.1.15210.140.1.3510.140.0.14110.140.1.6910.140.1.10010.140.1.12610.140.0.14210.140.0.18510.140.1.4210.140.0.23110.140.0.25310.140.0.21210.140.1.2110.140.1.14810.140.1.4910.140.1.12810.140.0.16410.140.1.7010.140.1.4510.140.0.16210.140.1.10110.140.0.14510.140.1.2010.140.1.17610.140.1.3310.140.1.11310.140.1.12210.140.1.7610.140.1.14110.140.1.810.140.0.15510.140.1.48
2023-07-01 08:00:00+08:008.1017.8098.0340.4370.6728.9888.3958.2058.7632.0376.6619.1779.0178.09614.4238.040.3540.340.8438.660.6578.1040.9027.0060.1078.2988.5466.4138.16.6338.1679.2469.0552.9637.9950.7078.11910.5316.6547.7074.6260.84825.2747.958.0147.9089.3139.1847.8770.4848.4516.1370.1246.1630.3168.3439.0247.9228.4270.45567.470.3957.4879.1427.8988.0717.7170.7557.8698.1938.3688.9118.1087.9348.2698.1618.3499.2526.9334.8237.5278.427.2439.1668.040.0927.9218.288.0270.3658.719.3020.888.0558.8178.079.3168.0648.0619.3197.1015.2217.0867.7019.2598.8575.0797.9448.028.2448.0388.2695.1086.9711.7878.0958.0558.2758.3967.7876.8988.22416.3230.6718.0719.1258.0047.8888.7855.4120.6218.0047.916.72710.3270.4138.4997.7358.2558.0878.0015.9088.2398.2797.2720.148.1860.5266.7716.3866.7637.3086.7418.0478.8837.0598.797.8648.0659.4740.4819.1799.5798.1579.0637.3398.2956.819.0299.0378.0420.7176.6757.8388.1928.0389.0048.6218.1178.17722.4670.1983.48.0867.866.8914.3767.1445.3318.9247.6680.3327.9617.9588.1645.7418.9388.9696.3728.8168.36112.629.1499.1518.3748.8319.3329.1818.1428.6531.4498.2688.4818.5680.46859.94266.0768.1918.968.2230.4788.0239.1299.68.1649.5188.1729.5518.01214.5448.1548.0699.3440.3578.090.4638.0827.6578.1390.1648.1436.566.6328.0188.0658.2888.6678.078
Schema
FieldDescription
Timesampling timestamp, interval is 15 seconds
10.140.xx.xxserver ip