From 11e387bf84dee8e238997c3ee9019b2e51069755 Mon Sep 17 00:00:00 2001 From: Igor Fontana de Nardin <igor.fontana@irit.fr> Date: Mon, 21 Oct 2024 18:14:19 +0200 Subject: [PATCH] Changes in the artifact pdf --- artifact-overview.typ | 32 ++++++++++++++++-------- notebooks/simulation-output-analysis.Rmd | 8 +++--- 2 files changed, 26 insertions(+), 14 deletions(-) diff --git a/artifact-overview.typ b/artifact-overview.typ index 59feaa9..ffd167d 100644 --- a/artifact-overview.typ +++ b/artifact-overview.typ @@ -6,7 +6,7 @@ #let artifact-code-git-repo-irit = "https://gitlab.irit.fr/sepia-pub/open-science/artifact-europar24-lightweight-power-pred-sched" #let artifact-code-sh-permalink = "https://archive.softwareheritage.org/swh:1:rev:5a15139dadde8d923703ece93745fa250b1a0c53;origin=https://framagit.org/batsim/artifact-europar24-lightweight-power-pred-sched.git;visit=swh:1:snp:968650e57128ea88b02a858279a7054f62f0a0b0" #let artifact-code-git-commit = "5a15139dadde8d923703ece93745fa250b1a0c53" -#let zenodo-doi = "10.5281/zenodo.11173631" +#let zenodo-doi = "10.5281/zenodo.13961003" #let zenodo-url = "https://doi.org/" + zenodo-doi #set page( @@ -74,7 +74,7 @@ *Article.* Light-weight prediction for improving energy consumption in HPC platforms\ *Quick links*. #set list(marker: none, body-indent: 3.5mm) - - Preprint PDF on HAL. #url("https://hal.science/hal-04566184") + // - Preprint PDF on HAL. #url("https://hal.science/hal-04566184") - Artifact data on Zenodo. #url(zenodo-url) - Artifact Nix binary cache. #url("https://lightweight-pred-sched-europar24.cachix.org") - Artifact code Git repository. #link(artifact-code-git-repo-irit)[IRIT], #link(artifact-code-git-repo)[Framagit] @@ -435,6 +435,8 @@ nix develop .#py-scripts --command m100-pred-merge-jobfiles -d ./m100-data/ == Predicting Job mean and maximum power consumption +#text(fill: red)[*Warning: This section will be completed after the article submission.*] + #fullbox(footer:[#emph-overhead[Memory: 128 Go. Time (sequential): 72:00:00.]])[ ```sh mkdir ./m100-data/total_power_mean_predictions_users_allmethods_mean @@ -461,11 +463,14 @@ The expected output data has been stored on #link(zenodo-url)[Zenodo]. ./m100-data/total_power_mean_predictions_users_allmethods_mean tar -cvzf ./m100-data/power_pred_users_allmethods_mean.tar.gz \ ./m100-data/total_power_mean_predictions_users_allmethods_max + tar -cvzf ./m100-data/power_pred_users_allmethods_std.tar.gz \ + ./m100-data/total_power_std_predictions_users_allmethods_max ``` #filehashes(( "fdcc47998a7e998abde325162833b23e", "power_pred_users_allmethods_max.tar.gz", "954f782a75c9a5b21c53a95c0218e220", "power_pred_users_allmethods_mean.tar.gz", + "7335fce385f20d891efd85a91a4fd9d7", "power_pred_users_allmethods_std.tar.gz" )) ] @@ -480,6 +485,8 @@ The following command populates the `./user-power-predictions/data` by extractin tar xf ./user-power-predictions/*mean.tar.gz --directory ./user-power-predictions/data nix develop .#merge-m100-power-predictions --command \ tar xf ./user-power-predictions/*max.tar.gz --directory ./user-power-predictions/data + nix develop .#merge-m100-power-predictions --command \ + tar xf ./user-power-predictions/*std.tar.gz --directory ./user-power-predictions/data nix develop .#merge-m100-power-predictions --command \ gunzip ./user-power-predictions/data/*/*.gz ``` @@ -548,7 +555,7 @@ Required input files. ``` #filehashes(( "e1b4475f55938ad6de4ca500bddc7908", "expe-sched/workload-params.json", - "3a7e7d8183dcb733d6b49d86b2ab3b14", "expe-sched/simu-instances.json", + "a597d3940c3ebbe5c2bdab53718daa54", "expe-sched/simu-instances.json", )) ] @@ -563,6 +570,8 @@ To make things more convenient for the generation of simulation inputs, all the tar xf ./user-power-predictions/*mean.tar.gz --directory ./user-power-predictions/tmp nix develop .#merge-m100-power-predictions --command \ tar xf ./user-power-predictions/*max.tar.gz --directory ./user-power-predictions/tmp + nix develop .#merge-m100-power-predictions --command \ + tar xf ./user-power-predictions/*std.tar.gz --directory ./user-power-predictions/tmp nix develop .#merge-m100-power-predictions --command \ gunzip ./user-power-predictions/tmp/*/*.gz nix develop .#merge-m100-power-predictions --command \ @@ -572,7 +581,7 @@ To make things more convenient for the generation of simulation inputs, all the ``` #filehashes(( - "86a056a9d61cca59b80adf95fa8bff22", "./m100-data/22-job-power-estimations.csv", + "f91d0e57a6d8fa4678ae788a3a8c1de2", "m100-data/22-job-power-estimations.csv", )) ] @@ -590,7 +599,7 @@ Similarly, Marconi100 job traces are also merged into a single file. ``` #filehashes(( - "c7d00104663b13e2992ec10749d6a162", "m100-data/22-jobs-with-prediction.csv" + "90d9d606bb4c70146a2cb222b9e67bd2", "m100-data/22-jobs-with-prediction.csv" )) ] @@ -641,7 +650,8 @@ In particular to populate the `/tmp/wlds` directory you can *download file* `wor ``` #filehashes(( - "2f31cf5a3ca6b2f46a2d426c9558f351", "expe-sched/simu-campaign-agg-result.csv" + "35432a7728f00b3b591f162186851ec5", "expe-sched/simu-campaign-exec-state.json", + "3eca005f2030a76595cb74d8b16e1f81", "expe-sched/simu-campaign-agg-result.csv" )) ] @@ -659,11 +669,13 @@ Required input files. ``` #filehashes(( - "660144ea7340a7accf4eb8c7c2a7a3fa", "notebooks/fig4-sched-mean-power-distribution.svg", - "df07dec01ea5dd176ef406b26638d180", "notebooks/fig5-sched-mtt-diff-distribution.svg", - "e00304f9f2fd1819b72ca8b6b802db9c", "notebooks/simulation-output-analysis.html", + "5b9a3f5b79b72f10a619c6794a9a4645", "notebooks/proportion-above-powercap.svg", + "e77a0130dde9c1a71e82362662919251", "notebooks/sched-algo-comparison.svg", + "1521efb0253e0811ec9d52afc4a24cd5", "notebooks/sched-mean-power-distribution.svg", + "87c68a77d3b91970a62e3217f30dd20d", "notebooks/sched-mtt-distribution.svg", + "541ff9cee830292066331b030177cb07", "notebooks/simulation-output-analysis.html", ), fill: (x, y) => { - if y == 3 { red.lighten(80%) } + if y == 5 { red.lighten(80%) } }, ) diff --git a/notebooks/simulation-output-analysis.Rmd b/notebooks/simulation-output-analysis.Rmd index 7a3880d..c8e084d 100644 --- a/notebooks/simulation-output-analysis.Rmd +++ b/notebooks/simulation-output-analysis.Rmd @@ -284,7 +284,7 @@ data_nz %>% x="Job power estimator" ) + scale_fill_grey(start=0.8, end=1) -ggsave("./sched-mean-power-distribution.pdf", width=8*scale, height=4*scale) +ggsave("./sched-mean-power-distribution.svg", width=8*scale, height=4*scale) ``` Here is the code that produces the summarized power underutilization values seen in Section 6.5 of the article. @@ -342,7 +342,7 @@ data_nz %>% x="Job power estimator" ) + scale_fill_grey(start=0.8, end=1) -ggsave("./sched-mtt-distribution.pdf", width=8*scale, height=4*scale) +ggsave("./sched-mtt-distribution.svg", width=8*scale, height=4*scale) ``` Here is the code that produces the summarized scheduling performance degradation values seen in Section 6.5 of the article. @@ -405,7 +405,7 @@ data_nz %>% y="Proportion of time \n above powercap" ) + scale_y_continuous(labels = scales::percent) -ggsave("./proportion-above-powercap.pdf", width=8*scale, height=3*scale) +ggsave("./proportion-above-powercap.svg", width=8*scale, height=3*scale) ``` **Conclusions**: Only `real_mean` and `mean` exceed the powercap on the analyzed workloads. They both exceed the powercap frequently, but `mean` breaks the powercap more frequently than `real_mean`. @@ -597,7 +597,7 @@ p4 = data_nz %>% layout <- matrix(c(1, 2, 3, 4), ncol = 2, nrow=2, byrow = TRUE) g <- arrangeGrob(p1, p2, p3, p4, layout_matrix = layout, bottom = "Scheduling") -ggsave(file="./sched-algo-comparison.pdf", g) +ggsave(file="./sched-algo-comparison.svg", g) ``` ## Mean power consumption -- GitLab