MLPerf Storage 基准测试
Last updated
sudo apt-get install mpich
git clone -b v0.5 --recurse-submodules https://github.com/mlcommons/storage.git
cd storage
pip3 install -r dlio_benchmark/requirements.txt./benchmark.sh datasize --workload unet3d --num-accelerators 4 --host-memory-in-gb 32./benchmark.sh datasize --workload unet3d --num-accelerators 4 --host-memory-in-gb 32
The benchmark will run for approx 11 minutes (best case)
Minimum 1600 files are required, which will consume 218 GB of storage
----------------------------------------------
Set --param dataset.num_files_train=1600 with ./benchmark.sh datagen/run commands./benchmark.sh datagen --workload unet3d --num-parallel ${num-parallel} --param dataset.num_files_train=1600 --param dataset.data_folder=${dataset.data_folder}alluxio.user.position.reader.streaming.async.prefetch.enable=true
alluxio.user.position.reader.streaming.async.prefetch.thread=256
alluxio.user.position.reader.streaming.async.prefetch.part.length=4MB
alluxio.user.position.reader.streaming.async.prefetch.max.part.number=4./benchmark.sh run --workload ${workload} --num-accelerators ${num-accelerators} --results-dir ${results-dir} --param dataset.data_folder=${dataset.data_folder} --param dataset.num_files_train=${dataset.num_files_train}{
"model": "unet3d",
"start": "2024-05-27T14:46:24.458325",
"num_accelerators": 20,
"hostname": "ip-172-31-24-47",
"metric": {
"train_au_percentage": [
99.18125818824699,
99.01649117920554,
98.95473494676878,
98.31108303926722,
98.2658474647346
],
"train_au_mean_percentage": 98.74588296364462,
"train_au_meet_expectation": "success",
"train_au_stdev_percentage": 0.38102089124716115,
"train_throughput_samples_per_second": [
57.07382805038776,
57.1334916113455,
56.93601336110315,
56.72469392071424,
56.64526420320678
],
"train_throughput_mean_samples_per_second": 56.90265822935148,
"train_throughput_stdev_samples_per_second": 0.19058788132211907,
"train_io_mean_MB_per_second": 7955.518180172248,
"train_io_stdev_MB_per_second": 26.64594945050442
},
"num_files_train": 28125,
"num_files_eval": 0,
"num_samples_per_file": 1,
"epochs": 5,
"end": "2024-05-27T15:27:39.203932"
}sample-results
|---run-1
|---host-1
|---summary.json
|---host-2
|---summary.json
....
|---host-n
|---summary.json
|---run-2
|---host-1
|---summary.json
|---host-2
|---summary.json
....
|---host-n
|---summary.json
.....
|---run-5
|---host-1
|---summary.json
|---host-2
|---summary.json
....
|---host-n
|---summary.json./benchmark.sh reportgen --results-dir sample-results{
"overall": {
"model": "unet3d",
"num_client_hosts": 1,
"num_benchmark_runs": 5,
"train_num_accelerators": "20",
"num_files_train": 28125,
"num_samples_per_file": 1,
"train_throughput_mean_samples_per_second": 56.587322998616344,
"train_throughput_stdev_samples_per_second": 0.3842685544298719,
"train_throughput_mean_MB_per_second": 7911.431396900177,
"train_throughput_stdev_MB_per_second": 53.72429981238494
},
"runs": {
"run-5": {
"train_throughput_samples_per_second": 57.06105089062497,
"train_throughput_MB_per_second": 7977.662939935283,
"train_num_accelerators": "20",
"model": "unet3d",
"num_files_train": 28125,
"num_samples_per_file": 1
},
"run-2": {
"train_throughput_samples_per_second": 56.18386238258097,
"train_throughput_MB_per_second": 7855.023869277903,
"train_num_accelerators": "20",
"model": "unet3d",
"num_files_train": 28125,
"num_samples_per_file": 1
},
"run-1": {
"train_throughput_samples_per_second": 56.90265822935148,
"train_throughput_MB_per_second": 7955.518180172248,
"train_num_accelerators": "20",
"model": "unet3d",
"num_files_train": 28125,
"num_samples_per_file": 1
},
"run-3": {
"train_throughput_samples_per_second": 56.69229017116294,
"train_throughput_MB_per_second": 7926.10677895614,
"train_num_accelerators": "20",
"model": "unet3d",
"num_files_train": 28125,
"num_samples_per_file": 1
},
"run-4": {
"train_throughput_samples_per_second": 56.09675331936137,
"train_throughput_MB_per_second": 7842.845216159307,
"train_num_accelerators": "20",
"model": "unet3d",
"num_files_train": 28125,
"num_samples_per_file": 1
}
}
}