Commit 2f537899 authored by Ondrej Vysocky's avatar Ondrej Vysocky
Browse files

ENH removed mericMeasurementCounters from README #1 #61

parent 22954c52
......@@ -16,6 +16,7 @@
- test/environment_taurus updated and renamed to test/environment_default.source
- default MERIC mode is RUN (3) instead of HDEEM (0)
- CPU core and uncore frequency may be specified without unit in Hz or with unit
- removed mericMeasurementCounters - when runing an application several times with the same configuration MERIC_ITERATION=$iteration must be exported
### 05.06.2018 #################################################################
- fixed single RAPL overflow
......
......@@ -223,6 +223,10 @@ Default compilation expects Intel compiler, if you want to compile using GCC use
6 = davide - energy measurement on CINECA D.A.V.I.D.E. system
7 = time - storing runtime of the regions only
export MERIC_ITERATION=0
- if runing an application several times with the same configuration MERIC_ITERATION=$iteration must be exported
- always start with 0
export MERIC_BARRIERS=all
all = all barriers are applied (default)
mpi = use MPI barriers only
......@@ -360,17 +364,11 @@ export MERIC_MODE=6 # time measurement only
--------------------------------------------------------------------------------
# 7] Code dynamism investigation #
--------------------------------------------------------------------------------
MERIC's output is stored in two directories:
* mericMeasurement
# contains result files in folders with names of the regions
# to change output folder name export MERIC_OUTPUT_DIR="NEW_NAME"
# 3 types of data in CSV files:
# CALLTREE - the first line of every CSV file, it's a call stack, so we can see, where is the measured region nested
# Section label (e.g. '# Job info') - determines a "category" of following data in a file7
# Data - tuples (mostly pairs) structured like a hash map: key, value
* mericMeasurementCounters
# Program start counters, stored in .tmp files.
MERIC's output is stored in the directory in default named `mericMeasurement` that contains result files in folders with names of the regions. To change output folder name export MERIC_OUTPUT_DIR="NEW_NAME".
Each csv file carry 3 types of data:
* CALLTREE - the first line of every CSV file, it's a call stack, so we can see, where is the measured region nested
* Section label (e.g. '# Job info') - determines a "category" of following data in a file7
* Data - tuples (mostly pairs) structured like a hash map: key, value
To find the best settings for each region, you should run your code with several possible settings. The content of the MERIC's output directories, can be analysed using our RADAR tool, that generates a MERIC configuration file for production runs of the application and LaTeX report describing the application behavior.
......@@ -382,14 +380,18 @@ To find the best settings for each region, you should run your code with several
for cpu_freq in {25..12..1}
do
for uncore_freq in {30..12..1} # or {30..12..2}
do
for iter in {0..3}
do
export MERIC_NUM_THREADS=$thread
export MERIC_FREQUENCY=${cpu_freq}00MHz
export MERIC_UNCORE_FREQUENCY=${uncore_freq}00HMz
export MERIC_ITERATION=$iter
./test
done
done
done
done
```
# Edit description file `measurementInfo.json` in your output data folder. This step is not compulsory but this file helps you keep information what you have measured.
......
......@@ -10,7 +10,7 @@
### PRINT LIST OF ENV VARIABLES ###
variables()
{
for exp in MERIC_FREQUENCY MERIC_UNCORE_FREQUENCY MERIC_NUM_THREADS MERIC_COUNTERS MERIC_CONTINUAL MERIC_DETAILED MERIC_AGGREGATE MERIC_DEBUG MERIC_SAMPLES MERIC_MODE MERIC_OUTPUT_DIR MERIC_OUTPUT_FILENAME MERIC_REGION_OPTIONS MERIC_BARRIERS
for exp in MERIC_FREQUENCY MERIC_UNCORE_FREQUENCY MERIC_NUM_THREADS MERIC_COUNTERS MERIC_CONTINUAL MERIC_DETAILED MERIC_AGGREGATE MERIC_DEBUG MERIC_SAMPLES MERIC_MODE MERIC_OUTPUT_DIR MERIC_OUTPUT_FILENAME MERIC_REGION_OPTIONS MERIC_BARRIERS MERIC_ITERATION
do
if [ ! -z ${!exp} ]
then
......@@ -43,6 +43,7 @@ fi
export MERIC_FREQUENCY=0 # no DVFS
export MERIC_UNCORE_FREQUENCY=0 # no UFS
export MERIC_NUM_THREADS=0 # non-OpenMP application
export MERIC_ITERATION=0 # iteration of the same configuration run
export MERIC_COUNTERS=papi # perfevent, papi
export MERIC_MODE=3 # {hdeem=0, rapl=1, both=2, run=3, jetson=4, thunder=5, davide=6, time=7}
export MERIC_AGGREGATE=1 # aggregated data from all the nodes
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment