From b71a0a26ef63ffcb0a7341ea5e25aed037fd6475 Mon Sep 17 00:00:00 2001 From: "Julian M. Kunkel" Date: Wed, 19 Aug 2020 19:01:48 +0100 Subject: [PATCH 1/3] Fix Color map for job vis. --- fig/job-timeseries4296426.pdf | Bin 0 -> 17347 bytes fig/job-timeseries5024292.pdf | Bin 0 -> 13543 bytes fig/job-timeseries7488914-30.pdf | Bin 0 -> 12451 bytes fig/job-timeseries7488914.pdf | Bin 0 -> 12806 bytes paper/main.tex | 42 +++++++++++++++++++++++++++---- scripts/create-paper-vis.sh | 13 ++++++++++ scripts/plot-single-job.py | 25 +++++++++++++++--- scripts/plot.R | 2 +- 8 files changed, 72 insertions(+), 10 deletions(-) create mode 100644 fig/job-timeseries4296426.pdf create mode 100644 fig/job-timeseries5024292.pdf create mode 100644 fig/job-timeseries7488914-30.pdf create mode 100644 fig/job-timeseries7488914.pdf create mode 100755 scripts/create-paper-vis.sh diff --git a/fig/job-timeseries4296426.pdf b/fig/job-timeseries4296426.pdf new file mode 100644 index 0000000000000000000000000000000000000000..499ae3b268f7ce0413ec9a96e176e0aaf151ab35 GIT binary patch literal 17347 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 literal 0 HcmV?d00001 diff --git a/fig/job-timeseries5024292.pdf b/fig/job-timeseries5024292.pdf new file mode 100644 index 0000000000000000000000000000000000000000..7aea45fe0f19bcd80ddaa61709adffef7bb459e7 GIT binary patch literal 13543 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 F{{zn&1gii5 literal 0 HcmV?d00001 diff --git a/fig/job-timeseries7488914-30.pdf b/fig/job-timeseries7488914-30.pdf new file mode 100644 index 0000000000000000000000000000000000000000..12c6b1522bfea210986187c8241d345e99ad0ce1 GIT binary patch literal 12451 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 literal 0 HcmV?d00001 diff --git a/fig/job-timeseries7488914.pdf b/fig/job-timeseries7488914.pdf new file mode 100644 index 0000000000000000000000000000000000000000..344cd110f469037f20c92d1bf00c40169a7b00f1 GIT binary patch literal 12806 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 20, with IO read or write and maybe one other metrics. + \item job-short: shorter length, e.g. 5-10, that has a little bit IO in at least two metadata metrics (more better). + \item job-mixed: + \item job-long: a very IO intensive longer job, e.g., length $>$ 20, with IO read or write and maybe one other metrics. \end{itemize} For each reference job: create CSV file which contains all jobs with: @@ -151,6 +154,35 @@ Insert job profiles for closest 10 jobs. Potentially, analyze how the rankings of different similarities look like. +\Cref{fig:refJobs} + +\begin{figure} +\begin{subfigure}{0.8\textwidth} +\includegraphics[width=\textwidth]{job-timeseries4296426} +\caption{Job-S} \label{fig:job-S} +\end{subfigure} + +\caption{Reference jobs: timeline of mean IO activity} +\label{fig:refJobs} +\end{figure} + + +\begin{figure}\ContinuedFloat + +\begin{subfigure}{0.8\textwidth} +\includegraphics[width=\textwidth]{job-timeseries5024292} +\caption{Job-M} \label{fig:job-M} +\end{subfigure} + +\begin{subfigure}{0.8\textwidth} +\includegraphics[width=\textwidth]{job-timeseries7488914-30.pdf} +\caption{Job-L (first 30 segments of 400; remaining segments are similar)} +\label{fig:job-L} +\end{subfigure} +\caption{Reference jobs: timeline of mean IO activity; non-shown timelines are 0} +\end{figure} + + \section{Summary and Conclusion} \label{sec:summary} diff --git a/scripts/create-paper-vis.sh b/scripts/create-paper-vis.sh new file mode 100755 index 0000000..38db050 --- /dev/null +++ b/scripts/create-paper-vis.sh @@ -0,0 +1,13 @@ +#!/bin/bash + +# This script calls all other scripts to re-create the figures for the paper + +mkdir fig +for job in 5024292 4296426 7488914 ; do +./scripts/plot-single-job.py $job "fig/job-" +done + +for file in fig/*.pdf ; do + pdfcrop $file output.pdf + mv output.pdf $file +done diff --git a/scripts/plot-single-job.py b/scripts/plot-single-job.py index 426f59e..28874dc 100755 --- a/scripts/plot-single-job.py +++ b/scripts/plot-single-job.py @@ -5,12 +5,25 @@ import sys from pandas import DataFrame from pandas import Grouper from matplotlib import pyplot +import matplotlib.cm as cm jobs = [sys.argv[1]] prefix = sys.argv[2] print("Plotting the job: " + str(jobs)) +# Color map +colorMap = { "md_file_create": cm.tab10(0), +"md_file_delete": cm.tab10(1), +"md_mod": cm.tab10(2), +"md_other": cm.tab10(3), +"md_read": cm.tab10(4), +"read_bytes": cm.tab10(5), +"read_calls": cm.tab10(6), +"write_bytes": cm.tab10(7), +"write_calls": cm.tab10(8) +} + # Plot the timeseries def plot(prefix, header, row): x = { h : d for (h, d) in zip(header, row)} @@ -36,27 +49,31 @@ def plot(prefix, header, row): groups = data.groupby(["metrics"]) metrics = DataFrame() labels = [] + colors = [] for name, group in groups: metrics[name] = [x[2] for x in group.values] labels.append(name) + colors.append(colorMap[name]) - ax = metrics.plot(subplots=True, legend=False, sharex=True, grid = True, sharey=True, colormap='jet', marker='.', markersize=10, figsize=(8, 2 + 2 * len(labels))) + fsize = (8, 1 + 1.5 * len(labels)) + + ax = metrics.plot(subplots=True, legend=False, sharex=True, grid = True, sharey=True, marker='.', markersize=10, figsize=fsize, color=colors) for (i, l) in zip(range(0, len(labels)), labels): ax[i].set_ylabel(l) pyplot.xlabel("Segment number") - pyplot.savefig(prefix + "timeseries" + jobid + ".png") + pyplot.savefig(prefix + "timeseries" + jobid + ".pdf") # Plot first 30 segments if len(timeseries) <= 50: return - ax = metrics.plot(subplots=True, legend=False, sharex=True, grid = True, sharey=True, colormap='jet', marker='.', markersize=10, xlim=(0,30)) + ax = metrics.plot(subplots=True, legend=False, sharex=True, grid = True, sharey=True, marker='.', color=colors, markersize=10, xlim=(0,30), figsize=fsize) for (i, l) in zip(range(0, len(labels)), labels): ax[i].set_ylabel(l) pyplot.xlabel("Segment number") - pyplot.savefig(prefix + "timeseries" + jobid + "-30.png") + pyplot.savefig(prefix + "timeseries" + jobid + "-30.pdf") ### end plotting function diff --git a/scripts/plot.R b/scripts/plot.R index fc79b76..a47d515 100755 --- a/scripts/plot.R +++ b/scripts/plot.R @@ -34,7 +34,7 @@ print(summary(e)) ggsave("ecdf-0.5.png") # histogram for the jobs -ggplot(data, aes(similarity), group=alg_name) + geom_histogram(color="black", binwidth=0.025) + aes(fill = alg_name) + facet_grid(alg_name ~ ., switch = 'y') + scale_y_continuous(limits=c(0, 100), oob=squish) + scale_color_brewer(palette = "Set2") + ylab("Count (cropped at 100)") +ggplot(data, aes(similarity), group=alg_name) + geom_histogram(color="black", binwidth=0.025) + aes(fill = alg_name) + facet_grid(alg_name ~ ., switch = 'y') + scale_y_continuous(limits=c(0, 100), oob=squish) + scale_color_brewer(palette = "Set2") + ylab("Count (cropped at 100)") + theme(legend.position = "none") ggsave("hist-sim.png") # load job information, i.e., the time series per job From 743f1f0e39efa42c832dbf49cafdc68deedbda58 Mon Sep 17 00:00:00 2001 From: "Julian M. Kunkel" Date: Wed, 19 Aug 2020 19:23:10 +0100 Subject: [PATCH 2/3] Plot diagrams more recognizable. --- fig/job-timeseries4296426.pdf | Bin 17347 -> 16781 bytes fig/job-timeseries5024292.pdf | Bin 13543 -> 13918 bytes fig/job-timeseries7488914-30.pdf | Bin 12451 -> 12935 bytes fig/job-timeseries7488914.pdf | Bin 12806 -> 13282 bytes scripts/plot-single-job.py | 46 +++++++++++++++++++++++++++---- 5 files changed, 40 insertions(+), 6 deletions(-) diff --git a/fig/job-timeseries4296426.pdf b/fig/job-timeseries4296426.pdf index 499ae3b268f7ce0413ec9a96e176e0aaf151ab35..ff98db4311b9ad1a572250a5fa4c7a27f88cfe54 100644 GIT binary patch delta 5541 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 delta 4882 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 Q1i+#IBm@RCwK0SI2d$M2CjbBd diff --git a/fig/job-timeseries5024292.pdf b/fig/job-timeseries5024292.pdf index 7aea45fe0f19bcd80ddaa61709adffef7bb459e7..67a2ec881fd48753a36122ec26512d0a8fa13f13 100644 GIT binary patch delta 4385 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 U$qy#t8xvs=&CFJ)csLXP0ayvcrT_o{ diff --git a/fig/job-timeseries7488914.pdf b/fig/job-timeseries7488914.pdf index 344cd110f469037f20c92d1bf00c40169a7b00f1..2e3e375f5d59bf58c4d72b2411c8cc8e7f3a83be 100644 GIT binary patch delta 3488 zcmai0dpuO>8#jcSBH2QOllvH%bIzQZITJhOT1jrhlt_h<`_!O~FqL0}Y80=_CTf>Z zD_u-?w5yOvh4R_b)+U!l6joR1HkPI__Gq7L6-u821RwjI^II2hVb>|BGyg9ZNr{(#tSs& zgw6jg^xgT5OIHied#X6@ar*T7%F`3WYs$b;r=*p_y;-tPQ-QLc@<6hITiV270EOYm$#W$PsmT0B^;RMf$h-~+KBjvRrMJbz|(z?A5FuQG4Sos+su(hX1Co|hv-#;z8G*G8TsN2EKaea#k z1CC~R1wHP`((M>=3eY884IT0p`E&?d0-QE?ywUj>y4+3Vly@-vm|yJxsnmA}`mOfKQ#8rFF;HjU$}ce0phJs55zd+2R!UeB04RBc+6 zt{a_m$*z`U$S%c&5>f1+RtazSny_4xkwW94)5uv-e{YvhUvZxM>iD7EA6wq?uYCS{ zUGm2pyML|mwR7G%=sNQ7*ZG$!Ql766B$!X^d$Gze#*14bep&aycPMJitgU+QDVmmA z)%f02{mLjm)oq8nji?Um&%{L1l7gVcnvL_mmQxW_!7G{!PEb^{VO#Y_sCyT^I5;44B?XD+*c= zJ8vw}+&#H{^l{&d{IFtc%Gn9ct?#3{0$h{;LD>puD9^QjLsmSO>~$f_{dxtV$&1{U z^t}cnkUiJYGxc#`$qmJ^w2dXIqWJd7l$@}dw%^%S;{_e$OPTbxqc)e4x*oqsI->Fo z%I44Yvogv#qfLw+m!J!p<0npLZDeXkAsbk)S^kbYCU3cXDdY4L9PZ^=s_EC;-?ky= zyehoT$#MC?LH8SmV9(|Sq2!$FfhOe5E)`i5wT-U6o_=>PlFQ5@O4xqbL(YP6?M_Zo z&46$5=S%8^gYlyebIxO_-0l)97l#fVY}%;*{^EP2{(h+Cem9QO z`sDB`##try0eWZck=ijkSkQMBG7&Bv?dwT7?McwJEU#J_onjhUgnbA7WAMN^3TFcS9qqn0R z6GiGYi0pbEx@{mGuHp_4v>Kouq}9i?ibXYbUX%cbv%2|luZ;s^=GA8V>ff#N%DlY% za^%S+_MvA;1Kxs#83De>Z*(`=UOQRP?Ag~~;MM&h*iYxXxDMaSPaX8n9kp9BEH!w4 zn3zX{$~&E5v)4GeKdEbQShU^OlFrNmPe+gVl{oOM462RZHVlX7dbb6?{XcraRdjWX(45Z!%e zuEECU7FE0Cr*5rrg>>z%*5R(9KAzzf#^Ih`7uNH%s(0;5E7qD1KXb3O9LjI+7wQg` zCy6o|@22)x?p|{1m!TV#^MA?P-CEQ1>11N37)*wI8V=n2AuPSZwy2Kts^9HGQo^JB zE0=RD!_D8pysA)}4Q-9?d+z$}MeqBYk8LS_#&L?OD*JBa)$(oe#ToulgA@An@4H>j zp)_v5vm0ODb-s;QVRNodkZt?dHZVCGpM|1SI#@oZaWK&uz+SwgO*8evTKv%Yhp;iLEK!j3Du*q3-x%@h59_8c{KL4(R^T^MuO*c zXnD%P=JdG={9`J1z(mbl53|OpFoH6skp7uTAf<2yiZq%OkM<2uQL~hI&HuVtLPLX! z(7BiBoKQ++u1?%^YR}$%)@jb#tJ?Ew>wD^y6&CO{{st!MBmoCP=nxEf5h+_CgfV3W zLI^%(1xr4cQx+FO;VCO5Y^P*`Oii{yC^}_@LMV00iiA*X%8G(e+LRRyp)wjCB+2G0 zAupN>2~Zi+)J{UEjE)acWpptRRmK&weQOXGqRRMUA*zfoHk8km_+^~2Kky)`j5Q9T z%2?x~gSq^eARb>5D5H;us5mt5tC9pRU$TfP#^zsEVKZPNi$#oy<#V@25qA|(#jq#r zab6*i8bei%FvSO$xBkwh<33@+5#AIwWzhwi*ExE+&cdbrcEUi7r`ud+|a7&|6|5R?^cU zfXn(8zD}Y2vQoDQS3PT%N>)>7_)EMJ(u^!VW*klc_2wjCZHfR@5(%W47K2YDX=0jUuGv-s_`%XbJZ!$009?oxfI_-U zV1O;A=D^s}`>UoCmgNMd)FbAT&k__d7#J;s6)^;OFLRf6AP&lw8BQ5Z%kmX56ognC zkR1}3Tf zf8r$kl0iqL-6|db>>5nRq}?>b$B_3iV49p529+W2W8iX$;IKe?woE6%5oyED@L_a0 zF*uzmx2-r6m&=%mNV|PH9uuWatrh$$VoN6W$pP3y3Blt|w2ux$nBt~GS z^jQ6$m<ui5d`w=m{{CNb%zFVj)a+kgkai;X#<} zEM4OW`PtfG&Nz*ZJK8xo;r31r2s2Ll|MS4>KWr7p9 zXuwp+Qlv7-^8EQCr_jfCOAd~H(GZ7dt++p4nwZkEZlCG#rLS`4{$A^msgj~-9<+aA zyzALVM@`a^vdX#A8udeCy;93mHrSpSyvAzl_9u9PRpb4r!F-|90Nv(@)7YirB}ZFM z9^2Pt-8w+~VXf=i@!My|HfLRjhKv`bZl%;5FmW~#3yz=DiQ|b5wKN86tGBOg-SX}h z+t}!611rcsh5wzI8yePa{cv?#39QN4d9CeN1^`&_Euy8-= zZv6Q*wXJbPgVdgJH#D}g_+6oEjcfg?`u>ZIN$)>WcZ}T^0KsSU^)2m`n1#v!Q6YnM zD$1f8$L3Z&?=@=r6qk@~|EBEkqiuQg#Lj*$n~qy-`o6bGvx{0m2U`2xkv#gH*R^l| zn+s}(7e8hV1by&W+nQEC-qYdL)ls&6B0Vc4)^$(2A~(b$KFQIp;u+Io{qy}Fuk6T3 zuYOsVmROm5rh3Hk#f_qFvA^?eFT17U*inbwBI8fGtQbF2{g9H_1rD(BClgi^lDeoi z6TFo@*1r0=?D7FCRi1LTUWiM>!2|Qk2Ue*DC}$JCwX*Nb7K6B+qC+UpjhoiN zwX{tacxwH0_h?7Gi(cE(`^ps($=4z8v|5*^_UR){Iud2;W}kE7Q$tm!xKGN{tR0Fb zE~o!`k$dQp%h@pAOGk(NwOSR#@e)R*w>v9e@`Tvw?zcN_v{e-BX4%C)D%takXX5!z z^M>pbugfJ>_sZhBn{!=m?hG)?kvpm)`m|`@2Hjq^^!2=`(dfsWox-}?Mcu`dRr{ju zWksg7dYt8Lw|w<=J~5bLuEeQwqiH-n z$uKt4*||Se>N$`rO|gql2oh6`!gD*yO9$GG$(46Jy&HV2a;+9WODa6o;*)19=@u3E z)VK|GCx*x6dQA)sFZ1flvg!5Ab}KE|Yu{p`6coX4H_X5Ke*M`Off6ncDcD?Pj z<-2@I%yCw+I2U*;aMzwP>6LCtVB@CiO=(xIHPw9?2~VJDysyi-r5|BBysh9%_VnaO&k2p&t7qjw%rF1GQG|Bu8brjb7KU?hH5jPX!#LL>E13*P+MF14;V zMGy41iSDDhJCw$2@jZtX=6oA~u3|E^vk2YxO7nw?O2lDv`h!Zk`hp%%oZFhm|KgT! z4mS_DdUoQ6mv{56z(G}p5{w{JP_0@A0Dd*Nj5owF#V_!aIMAc^21L$V^6kl(uPI_d z2n~WESG<`YgwSQkA3_*1#DNf|3d32$c&)K&V_Wg6GfS zhqFWZSfE__Hwcw0M|1dCj!fFh3eVyBhx+ZpBU7mu5Qi?vRuN}vZovV8CQ+=hbUqHe z)gp;EYAfKtYHcI2aG3@UxGXagSLkTsz)>Bdcvv?a2kz+-LGp^5AaDgyJh&3V0r!D z-T7igA{z(t42a?+k~R)Z8j!#Pqk2$pNCXmNcMw1#0&9~(kZ(j3tFJkSQ$XpU#uQdS z8DPlNWvbhBU~jfk26ma9p1R3Z;1wjy=&1qmApAFgAe1R*r*SZhpfGTT2_lq+**EPQ z7SF_toW{XqbZQ~Y;3#y=(it3sj`eLihaywUUPo?NEv>m1YHD hA#49nj5mZGAmIWQUm)aj0`LfebplTy{N!SX{})PMTT1`{ diff --git a/scripts/plot-single-job.py b/scripts/plot-single-job.py index 28874dc..638ebcf 100755 --- a/scripts/plot-single-job.py +++ b/scripts/plot-single-job.py @@ -24,6 +24,28 @@ colorMap = { "md_file_create": cm.tab10(0), "write_calls": cm.tab10(8) } +markerMap = { "md_file_create": "^", +"md_file_delete": "v", +"md_other": ".", +"md_mod": "<", +"md_read": ">", +"read_bytes": "h", +"read_calls": "H", +"write_bytes": "D", +"write_calls": "d" +} + +linestyleMap = { "md_file_create": ":", +"md_file_delete": ":", +"md_mod": ":", +"md_other": ":", +"md_read": ":", +"read_bytes": "--", +"read_calls": "--", +"write_bytes": "-.", +"write_calls": "-." +} + # Plot the timeseries def plot(prefix, header, row): x = { h : d for (h, d) in zip(header, row)} @@ -50,16 +72,23 @@ def plot(prefix, header, row): metrics = DataFrame() labels = [] colors = [] + style = [] for name, group in groups: metrics[name] = [x[2] for x in group.values] labels.append(name) + style.append(linestyleMap[name] + markerMap[name]) colors.append(colorMap[name]) fsize = (8, 1 + 1.5 * len(labels)) + fsizeFixed = (8, 3) - ax = metrics.plot(subplots=True, legend=False, sharex=True, grid = True, sharey=True, marker='.', markersize=10, figsize=fsize, color=colors) - for (i, l) in zip(range(0, len(labels)), labels): - ax[i].set_ylabel(l) + if len(labels) < 4 : + ax = metrics.plot(legend=True, sharex=True, grid = True, sharey=True, markersize=10, figsize=fsizeFixed, color=colors, style=style) + ax.set_ylabel("Value") + else: + ax = metrics.plot(subplots=True, legend=False, sharex=True, grid = True, sharey=True, markersize=10, figsize=fsize, color=colors, style=style) + for (i, l) in zip(range(0, len(labels)), labels): + ax[i].set_ylabel(l) pyplot.xlabel("Segment number") pyplot.savefig(prefix + "timeseries" + jobid + ".pdf") @@ -68,9 +97,14 @@ def plot(prefix, header, row): if len(timeseries) <= 50: return - ax = metrics.plot(subplots=True, legend=False, sharex=True, grid = True, sharey=True, marker='.', color=colors, markersize=10, xlim=(0,30), figsize=fsize) - for (i, l) in zip(range(0, len(labels)), labels): - ax[i].set_ylabel(l) + + if len(labels) < 4 : + ax = metrics.plot(legend=True, xlim=(0,30), sharex=True, grid = True, sharey=True, markersize=10, figsize=fsizeFixed, color=colors, style=style) + ax.set_ylabel("Value") + else: + ax = metrics.plot(subplots=True, xlim=(0,30), legend=False, sharex=True, grid = True, sharey=True, markersize=10, figsize=fsize, color=colors, style=style) + for (i, l) in zip(range(0, len(labels)), labels): + ax[i].set_ylabel(l) pyplot.xlabel("Segment number") pyplot.savefig(prefix + "timeseries" + jobid + "-30.pdf") From 70739e74d556204ceb178ac48af798e70721d253 Mon Sep 17 00:00:00 2001 From: "Julian M. Kunkel" Date: Thu, 20 Aug 2020 11:48:27 +0100 Subject: [PATCH 3/3] Optimization --- fig/job-timeseries4296426.pdf | Bin 16781 -> 16479 bytes fig/job-timeseries5024292.pdf | Bin 13918 -> 13563 bytes fig/job-timeseries7488914-30.pdf | Bin 12935 -> 12293 bytes fig/job-timeseries7488914.pdf | Bin 13282 -> 12634 bytes paper/main.tex | 21 +++++++++++---------- scripts/create-paper-vis.sh | 9 +++++---- scripts/plot-single-job.py | 16 ++++++++++------ scripts/plot.R | 15 +++++---------- 8 files changed, 31 insertions(+), 30 deletions(-) diff --git a/fig/job-timeseries4296426.pdf b/fig/job-timeseries4296426.pdf index ff98db4311b9ad1a572250a5fa4c7a27f88cfe54..1fa9c7105acf71dca5edf41c58d95241fc9a0c49 100644 GIT binary patch delta 8442 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 diff --git a/fig/job-timeseries5024292.pdf b/fig/job-timeseries5024292.pdf index 67a2ec881fd48753a36122ec26512d0a8fa13f13..1c1a0bfaa797f67818f90549384f14882bb0359d 100644 GIT binary patch delta 5639 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 Rli__PpU38K{1*DN{|jd3CZ+%Y delta 5957 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 AZ2$lO diff --git a/fig/job-timeseries7488914-30.pdf b/fig/job-timeseries7488914-30.pdf index 2afceb7315524a05c6c2461e77182b5f209254b5..629d16d0f8c28ddfec4eb0111c8a6964b3457c60 100644 GIT binary patch delta 4869 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 delta 5520 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�smtyLr&75{B6g?d{JHM)a1=*T9*)A4$ip%6!l$tcHI=7Hi8uxvqgf1e_yHU? z8wNof7=}@qi+X@q1%t>qFuX>?P&Nljp$Vh3HyWluxm0A02BKV8hR49TFwRDugFiUX z4>e#+SR6EAI4lVoFj&Q4CO{PsJR%9oqf!F(jKE+yfnluy!^bd)@^LDejXH<&p}sX? zJT^~_L5e<#VkpjqcB7tQ!YGbWnNS19rZSZVj03-OXuy~#EcKc&<`|QpOa F<9{O`ouvQ( delta 5728 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 diff --git a/paper/main.tex b/paper/main.tex index 5b1da12..c8a0838 100644 --- a/paper/main.tex +++ b/paper/main.tex @@ -136,25 +136,26 @@ Check time series algorithms: \section{Evaluation} \label{sec:evaluation} -Two study examples (two reference jobs): +In the following, we assume a job is given and we aim to identify similar jobs. +We chose several reference jobs with different compute and IO characteristics visualized in \Cref{fig:refJobs}: \begin{itemize} - \item job-short: shorter length, e.g. 5-10, that has a little bit IO in at least two metadata metrics (more better). - \item job-mixed: - \item job-long: a very IO intensive longer job, e.g., length $>$ 20, with IO read or write and maybe one other metrics. + \item Job-S: performs postprocessing on a single node. This is a typical process in climate science where data products are reformatted and annotated with metadata to a standard representation (so called CMORization). The post-processing is IO intensive. + \item Job-M: a typical MPI parallel 8-hour compute job on 128 nodes which writes time series data after some spin up. %CHE.ws12 + \item Job-L: a 66-hour 20-node job. + The initialization data is read at the beginning. + Then only a single master node writes constantly a small volume of data; in fact, the generated data is too small to be categorized as IO relevant. \end{itemize} -For each reference job: create CSV file which contains all jobs with: -\begin{itemize} - \item JOB ID, for each algorithm: the coding and the computed ranking $\rightarrow$ thus one long row. -\end{itemize} -Alternatively, could be one CSV for each algorithm that contains JOB ID, coding + rank +For each reference job and algorithm, we created a CSV files with the computed similarity for all other jobs. + + +Sollte man was zur Laufzeit der Algorithmen sagen? Denke Daten zu haben wäre sinnvoll. Create histograms + cumulative job distribution for all algorithms. Insert job profiles for closest 10 jobs. Potentially, analyze how the rankings of different similarities look like. -\Cref{fig:refJobs} \begin{figure} \begin{subfigure}{0.8\textwidth} diff --git a/scripts/create-paper-vis.sh b/scripts/create-paper-vis.sh index 38db050..db9e1c7 100755 --- a/scripts/create-paper-vis.sh +++ b/scripts/create-paper-vis.sh @@ -7,7 +7,8 @@ for job in 5024292 4296426 7488914 ; do ./scripts/plot-single-job.py $job "fig/job-" done -for file in fig/*.pdf ; do - pdfcrop $file output.pdf - mv output.pdf $file -done +# Remove whitespace around jobs +# for file in fig/*.pdf ; do +# pdfcrop $file output.pdf +# mv output.pdf $file +# done diff --git a/scripts/plot-single-job.py b/scripts/plot-single-job.py index 638ebcf..60ce6c0 100755 --- a/scripts/plot-single-job.py +++ b/scripts/plot-single-job.py @@ -7,8 +7,8 @@ from pandas import Grouper from matplotlib import pyplot import matplotlib.cm as cm -jobs = [sys.argv[1]] -prefix = sys.argv[2] +jobs = sys.argv[1].split(",") +prefix = sys.argv[2].split(",") print("Plotting the job: " + str(jobs)) @@ -80,7 +80,9 @@ def plot(prefix, header, row): colors.append(colorMap[name]) fsize = (8, 1 + 1.5 * len(labels)) - fsizeFixed = (8, 3) + fsizeFixed = (8, 2) + + pyplot.close('all') if len(labels) < 4 : ax = metrics.plot(legend=True, sharex=True, grid = True, sharey=True, markersize=10, figsize=fsizeFixed, color=colors, style=style) @@ -91,7 +93,7 @@ def plot(prefix, header, row): ax[i].set_ylabel(l) pyplot.xlabel("Segment number") - pyplot.savefig(prefix + "timeseries" + jobid + ".pdf") + pyplot.savefig(prefix + "timeseries" + jobid + ".pdf", bbox_inches='tight') # Plot first 30 segments if len(timeseries) <= 50: @@ -107,7 +109,7 @@ def plot(prefix, header, row): ax[i].set_ylabel(l) pyplot.xlabel("Segment number") - pyplot.savefig(prefix + "timeseries" + jobid + "-30.pdf") + pyplot.savefig(prefix + "timeseries" + jobid + "-30.pdf", bbox_inches='tight') ### end plotting function @@ -116,6 +118,7 @@ def plot(prefix, header, row): with open('job-io-datasets/datasets/job_codings.csv') as csv_file: csv_reader = csv.reader(csv_file, delimiter=',') line_count = 0 + job = 0 for row in csv_reader: if line_count == 0: header = row @@ -125,4 +128,5 @@ with open('job-io-datasets/datasets/job_codings.csv') as csv_file: if not row[0].strip() in jobs: continue else: - plot(prefix, header, row) + plot(prefix[job], header, row) + job += 1 diff --git a/scripts/plot.R b/scripts/plot.R index a47d515..086d029 100755 --- a/scripts/plot.R +++ b/scripts/plot.R @@ -19,10 +19,8 @@ data = read.csv(file) # Columns are: jobid alg_id alg_name similarity data$alg_id = as.factor(data$alg_id) -print(nrow(data)) - -# FILTER, TODO -data = data %>% filter(similarity <= 1.0) +cat("Job count:") +cat(nrow(data)) # empirical cummulative density function (ECDF) ggplot(data, aes(similarity, color=alg_name, group=alg_name)) + stat_ecdf(geom = "step") + xlab("SIM") + ylab("Fraction of jobs") + theme(legend.position="bottom") + scale_color_brewer(palette = "Set2") @@ -51,13 +49,10 @@ plotJobs = function(jobs){ md = metadata[metadata$jobid %in% jobs,] print(summary(md)) - # print the job timeline + # print the job timelines r = e[ordered, ] - for (row in 1:length(jobs)) { - prefix = sprintf("%s-%f-%.0f-", level, r[row, "similarity"], row) - job = r[row, "jobid"] - system(sprintf("scripts/plot-single-job.py %s %s", job, prefix)) - } + prefix = do.call("sprintf", list("%s-%.0f-", level, r$similarity)) + system(sprintf("scripts/plot-single-job.py %s %s", paste(r$jobid, collapse=","), paste(prefix, collapse=","))) } # Store the job ids in a table, each column is one algorithm