|
1 | 1 | {% for core_value in core_values %} |
2 | | -touch {{ results_directory }}/perf_and_hwpc_{{ core_value }} |
3 | | -mkdir -p {{ results_directory }}/hwpc_and_perf_{{ core_value }} |
| 2 | + {% for cpu_ops_per_core in cpu_ops_per_core_list %} |
| 3 | +touch {{ results_directory }}/perf_and_hwpc_{{ core_value }}_{{ cpu_ops_per_core }} |
| 4 | +mkdir -p {{ results_directory }}/hwpc_and_perf_{{ core_value }}_{{ cpu_ops_per_core }} |
4 | 5 | for i in {1..{{ nb_iterations }}}; do |
5 | 6 | ### HWPC sensor dedicated to stress-ng with {{ core_value }} CPU * {{ cpu_ops_per_core }} OPS |
6 | | - docker run --rm -d --net=host --privileged --pid=host --name {{ hwpc_and_perf_configs.get(core_value).unwrap().name }}_$i \ |
| 7 | + docker run --rm -d --net=host --privileged --pid=host --name {{ hwpc_and_perf_configs.get(core_value).unwrap().name }}_{{ cpu_ops_per_core }}_$i \ |
7 | 8 | -v /sys:/sys \ |
8 | 9 | -v /var/lib/docker/containers:/var/lib/docker/containers:ro \ |
9 | 10 | -v /tmp/power-api-sensor-reporting:/reporting \ |
10 | 11 | -v $(pwd):{{ hwpc_home_directory }} \ |
11 | 12 | powerapi/hwpc-sensor:1.4.0 \ |
12 | | - -n {{ hwpc_and_perf_configs.get(core_value).unwrap().name }}_$i \ |
| 13 | + -n {{ hwpc_and_perf_configs.get(core_value).unwrap().name }}_{{ cpu_ops_per_core }}_$i \ |
13 | 14 | -p {{ hwpc_and_perf_configs.get(core_value).unwrap().cgroup_basepath }} \ |
14 | | - -r {{ hwpc_and_perf_configs.get(core_value).unwrap().output.type }} -U {{ hwpc_home_directory }}/{{ results_directory }}/hwpc_and_perf_{{ core_value }}/hwpc_and_perf_{{ core_value }}_$i \ |
| 15 | + -r {{ hwpc_and_perf_configs.get(core_value).unwrap().output.type }} -U {{ hwpc_home_directory }}/{{ results_directory }}/hwpc_and_perf_{{ core_value }}/hwpc_and_perf_{{ core_value }}_{{ cpu_ops_per_core }}_$i \ |
15 | 16 | {% if hwpc_alone_configs.get(core_value).unwrap().system.rapl.events.len() > 0 %} -s "rapl" {%~ for event in hwpc_alone_configs.get(core_value).unwrap().system.rapl.events %}-e "{{ event }}" {% endfor %}{% endif %} {% if hwpc_alone_configs.get(core_value).unwrap().system.msr.events.len() > 0 %} -s "msr" {%~ for event in hwpc_alone_configs.get(core_value).unwrap().system.msr.events %}-e "{{ event }}" {% endfor %} {% endif %} {% if hwpc_alone_configs.get(core_value).unwrap().system.core.events.len() > 0 %} -c "core" {%~ for event in hwpc_alone_configs.get(core_value).unwrap().system.core.events %}-e "{{ event }}" {% endfor %} {% endif %} |
16 | 17 |
|
17 | 18 | ### PERF with {{ core_value }} CPU * {{ cpu_ops_per_core }} OPS |
18 | | - sudo perf stat -a -o /tmp/perf_and_hwpc_{{ core_value }}_$i {% for perf_event in perf_events.iter() %}-e "{{ perf_event }}" {% endfor %} stress-ng --cpu {{ core_value }} --cpu-ops {{ core_value * cpu_ops_per_core }} -q |
19 | | - cat /tmp/perf_and_hwpc_{{ core_value }}_$i >> {{ results_directory }}/perf_and_hwpc_{{ core_value }} |
20 | | - docker rm -f {{ hwpc_and_perf_configs.get(core_value).unwrap().name }}_$i |
| 19 | + sudo perf stat -a -o /tmp/perf_and_hwpc_{{ core_value }}_{{ cpu_ops_per_core }}_$i {% for perf_event in perf_events.iter() %}-e "{{ perf_event }}" {% endfor %} stress-ng --cpu {{ core_value }} --cpu-ops {{ core_value * cpu_ops_per_core }} -q |
| 20 | + cat /tmp/perf_and_hwpc_{{ core_value }}_{{ cpu_ops_per_core }}_$i >> {{ results_directory }}/perf_and_hwpc_{{ core_value }}_{{ cpu_ops_per_core }} |
| 21 | + docker rm -f {{ hwpc_and_perf_configs.get(core_value).unwrap().name }}_{{ cpu_ops_per_core }}_$i |
21 | 22 | sleep 15 |
22 | 23 | done |
23 | 24 |
|
| 25 | + {% endfor %} |
24 | 26 | {% endfor %} |
0 commit comments