Loading README.md +23 −12 Original line number Diff line number Diff line Loading @@ -40,7 +40,6 @@ applications (both baseline and Juggler-integrated version) can be accessed via the following (this) repository: ``` {.bash language="bash"} https://code.ornl.gov/fub/juggler ``` Loading @@ -66,7 +65,7 @@ Installation Clone Juggler runtime and application suite from the git repo: ``` {.bash language="bash"} $ git clone git@code.ornl.gov:fub/juggler.git $ git clone https://code.ornl.gov/fub/juggler.git $ JUGGLER_HOME=$(pwd)/juggler ``` Loading Loading @@ -112,12 +111,11 @@ combine the values from all runs in a *tab separated value* format. $ bash exp 1 output execTime 2 formattedResults1.csv ``` \medskip Parsed values will be written into `formattedResults1.csv`, in a tabular format. There will be 7 columns in total, one for each application. The number of rows in the csv file will be equal to $nRuns \times 4$, (i.e. 20, when main experiment is run with 5 runs). The first 15 rows will be for $LRR$, $GRR$ and $LF$, nRuns x 4, (= 20, when main experiment is run with 5 runs). The first 15 rows will be for LRR, GRR and LF, respectively, in groups of five. The last 5 rows will be for global barriers. Loading @@ -128,12 +126,17 @@ combine the values from all runs in a *tab separated value* format. ``` The parsed output will be written into `formattedResults2.csv` file, and the values will be either SUCCESS or FAIL. and the values will be either SUCCESS or FAIL. Please note that, since serial execution takes too long, the verification runs are only once per each applciation, even if multiple (i.e. 5) runs are specified. 3. **To parse task load deviations** (i.e. Figure 5), run: 3. **To parse task load deviations** , which is the data used to draw Figure 5), run: ``` {.bash language="bash"} $ bash exp 1 output avgTaskLoad 2 formattedResults3.csv $ bash exp 1 output minTaskLoad 2 formattedResults4.csv $ bash exp 1 output maxTaskLoad 2 formattedResults5.csv ``` Loading @@ -142,7 +145,7 @@ Experiment customization **Number of runs** for each type of run in the main experiment can be modified by changing the input parameters of `exp` script, as explained in A.4. above. Additionally, if only specific subset of applications is desired to be tested, the values in the bash array, named `$APPS`, in the `exp` script Loading @@ -160,6 +163,10 @@ the *key string* and *column number* to the value parser (i.e. *\"exp $ bash exp 1 output.PROF write_sector_misses 7 formatted.tsv ``` Please note that, profiling runs take longer to execute, and sometimes may not run to completion, due to the fact that nvprof does not play nice with the persistent threads approach that Juggler uses. 2. Host runtime and inspection loop overhead breakdown: ``` {.bash language="bash"} Loading @@ -177,6 +184,10 @@ the *key string* and *column number* to the value parser (i.e. *\"exp $ bash exp 1 output totalTime 2 formatted.tsv ``` Please note that this data includes large data transfers that exist in both Juggler and baseline. Therefore, timings obtained via this method does not accurately represent benefits of Juggler. **Compiling & Running single application:** In our test suite, applications are distinguished with compiler directives, to optimize the Loading Loading
README.md +23 −12 Original line number Diff line number Diff line Loading @@ -40,7 +40,6 @@ applications (both baseline and Juggler-integrated version) can be accessed via the following (this) repository: ``` {.bash language="bash"} https://code.ornl.gov/fub/juggler ``` Loading @@ -66,7 +65,7 @@ Installation Clone Juggler runtime and application suite from the git repo: ``` {.bash language="bash"} $ git clone git@code.ornl.gov:fub/juggler.git $ git clone https://code.ornl.gov/fub/juggler.git $ JUGGLER_HOME=$(pwd)/juggler ``` Loading Loading @@ -112,12 +111,11 @@ combine the values from all runs in a *tab separated value* format. $ bash exp 1 output execTime 2 formattedResults1.csv ``` \medskip Parsed values will be written into `formattedResults1.csv`, in a tabular format. There will be 7 columns in total, one for each application. The number of rows in the csv file will be equal to $nRuns \times 4$, (i.e. 20, when main experiment is run with 5 runs). The first 15 rows will be for $LRR$, $GRR$ and $LF$, nRuns x 4, (= 20, when main experiment is run with 5 runs). The first 15 rows will be for LRR, GRR and LF, respectively, in groups of five. The last 5 rows will be for global barriers. Loading @@ -128,12 +126,17 @@ combine the values from all runs in a *tab separated value* format. ``` The parsed output will be written into `formattedResults2.csv` file, and the values will be either SUCCESS or FAIL. and the values will be either SUCCESS or FAIL. Please note that, since serial execution takes too long, the verification runs are only once per each applciation, even if multiple (i.e. 5) runs are specified. 3. **To parse task load deviations** (i.e. Figure 5), run: 3. **To parse task load deviations** , which is the data used to draw Figure 5), run: ``` {.bash language="bash"} $ bash exp 1 output avgTaskLoad 2 formattedResults3.csv $ bash exp 1 output minTaskLoad 2 formattedResults4.csv $ bash exp 1 output maxTaskLoad 2 formattedResults5.csv ``` Loading @@ -142,7 +145,7 @@ Experiment customization **Number of runs** for each type of run in the main experiment can be modified by changing the input parameters of `exp` script, as explained in A.4. above. Additionally, if only specific subset of applications is desired to be tested, the values in the bash array, named `$APPS`, in the `exp` script Loading @@ -160,6 +163,10 @@ the *key string* and *column number* to the value parser (i.e. *\"exp $ bash exp 1 output.PROF write_sector_misses 7 formatted.tsv ``` Please note that, profiling runs take longer to execute, and sometimes may not run to completion, due to the fact that nvprof does not play nice with the persistent threads approach that Juggler uses. 2. Host runtime and inspection loop overhead breakdown: ``` {.bash language="bash"} Loading @@ -177,6 +184,10 @@ the *key string* and *column number* to the value parser (i.e. *\"exp $ bash exp 1 output totalTime 2 formatted.tsv ``` Please note that this data includes large data transfers that exist in both Juggler and baseline. Therefore, timings obtained via this method does not accurately represent benefits of Juggler. **Compiling & Running single application:** In our test suite, applications are distinguished with compiler directives, to optimize the Loading