fpakc/runs/cylFlow/compCPUTime.gp
Jorge Gonzalez fd42e0f3f9 Huge improvement in reset (by increasing a little bit push time) using
OMP locks to assign particles to cells in the pushing step.

Trying to combine push+reset and  collision+scatter did not work.
2020-10-17 18:46:10 +02:00

116 lines
4.6 KiB
Gnuplot

set terminal qt enhanced 1 persist size 1600, 1000 font "Times ,10"
set style line 1 pt 4 lc rgb "#B50427" #Squares red
set style line 2 pt 6 lc rgb "#3B4CC1" #Circles blue
set style line 3 pt 1 lc rgb "#2CA02C" #Crosses green
set style line 4 pt 2 lc rgb "#FE7F0E" #Exes orange
set style line 5 pt 8 lc rgb "#D6696B" #Triangles light red
set style line 10 lt 1 lw 2.0 lc rgb "black" #Black solid line
name1 = "Base Case"
folder1 = "base_case/"
name2 = "OMP LOCK 1"
folder2 = "OMP_LOCK_1/"
name3 = "OMP LOCK 2"
folder3 = "2020-10-17_18.33.45/"
name4 = "Reset with List Parallel"
folder4 = "2020-10-11_15.20.09/"
set key box opaque
set pointsize 1.5
set ylabel "Time per particle (ms)"
set xrange [0:500]
set xlabel "Iteration"
set multiplot layout 2,3
set title "Total"
plot folder1."cpuTime.dat" u 1:(1e3*$3) t name1 ls 1, \
folder2."cpuTime.dat" u 1:(1e3*$3) t name2 ls 2, \
folder3."cpuTime.dat" u 1:(1e3*$3) t name3 ls 3, \
folder4."cpuTime.dat" u 1:(1e3*$3) t name4 ls 4
set title "Push"
plot folder1."cpuTime.dat" u 1:(1e3*$4) t name1 ls 1, \
folder2."cpuTime.dat" u 1:(1e3*$4) t name2 ls 2, \
folder3."cpuTime.dat" u 1:(1e3*$4) t name3 ls 3, \
folder4."cpuTime.dat" u 1:(1e3*$4) t name4 ls 4
set title "Reset"
plot folder1."cpuTime.dat" u 1:(1e3*$5) t name1 ls 1, \
folder2."cpuTime.dat" u 1:(1e3*$5) t name2 ls 2, \
folder3."cpuTime.dat" u 1:(1e3*$5) t name3 ls 3, \
folder4."cpuTime.dat" u 1:(1e3*$5) t name4 ls 4
set title "Collisions"
plot folder1."cpuTime.dat" u 1:(1e3*$6) t name1 ls 1, \
folder2."cpuTime.dat" u 1:(1e3*$6) t name2 ls 2, \
folder3."cpuTime.dat" u 1:(1e3*$6) t name3 ls 3, \
folder4."cpuTime.dat" u 1:(1e3*$6) t name4 ls 4
set title "Weighting"
plot folder1."cpuTime.dat" u 1:(1e3*$7) t name1 ls 1, \
folder2."cpuTime.dat" u 1:(1e3*$7) t name2 ls 2, \
folder3."cpuTime.dat" u 1:(1e3*$7) t name3 ls 3, \
folder4."cpuTime.dat" u 1:(1e3*$7) t name4 ls 4
set title "Num. particles"
plot folder1."cpuTime.dat" u 1:($2) t name1 ls 1, \
folder2."cpuTime.dat" u 1:($2) t name2 ls 2, \
folder3."cpuTime.dat" u 1:($2) t name3 ls 3, \
folder4."cpuTime.dat" u 1:($2) t name4 ls 4
unset multiplot
# set terminal qt enhanced 2 persist size 1600, 1000 font "Times ,10"
#
# set style line 1 pt 4 lc rgb "#B50427" #Squares red
# set style line 2 pt 6 lc rgb "#3B4CC1" #Circles blue
# set style line 3 pt 1 lc rgb "#2CA02C" #Crosses green
# set style line 4 pt 2 lc rgb "#FE7F0E" #Exes orange
# set style line 5 pt 8 lc rgb "#D6696B" #Triangles light red
# set style line 10 lt 1 lw 2.0 lc rgb "black" #Black solid line
#
# set key box opaque
# set pointsize 1.5
#
# set ylabel "Time per particle (micros)"
# set xrange [0:500]
# set xlabel "Iteration"
#
#
# set multiplot layout 2,3
# set title "Total"
# plot folder1."cpuTime.dat" u 1:(1e6*$3/$2) t name1 ls 1, \
# folder2."cpuTime.dat" u 1:(1e6*$3/$2) t name2 ls 2, \
# folder3."cpuTime.dat" u 1:(1e6*$3/$2) t name3 ls 3, \
# folder4."cpuTime.dat" u 1:(1e6*$3/$2) t name4 ls 4
#
# set title "Push"
# plot folder1."cpuTime.dat" u 1:(1e6*$4/$2) t name1 ls 1, \
# folder2."cpuTime.dat" u 1:(1e6*$4/$2) t name2 ls 2, \
# folder3."cpuTime.dat" u 1:(1e6*$4/$2) t name3 ls 3, \
# folder4."cpuTime.dat" u 1:(1e6*$4/$2) t name4 ls 4
#
# set title "Reset"
# plot folder1."cpuTime.dat" u 1:(1e6*$5/$2) t name1 ls 1, \
# folder2."cpuTime.dat" u 1:(1e6*$5/$2) t name2 ls 2, \
# folder3."cpuTime.dat" u 1:(1e6*$5/$2) t name3 ls 3, \
# folder4."cpuTime.dat" u 1:(1e6*$5/$2) t name4 ls 4
#
# set title "Collisions"
# plot folder1."cpuTime.dat" u 1:(1e6*$6/$2) t name1 ls 1, \
# folder2."cpuTime.dat" u 1:(1e6*$6/$2) t name2 ls 2, \
# folder3."cpuTime.dat" u 1:(1e6*$6/$2) t name3 ls 3, \
# folder4."cpuTime.dat" u 1:(1e6*$6/$2) t name4 ls 4
#
# set title "Weighting"
# plot folder1."cpuTime.dat" u 1:(1e6*$7/$2) t name1 ls 1, \
# folder2."cpuTime.dat" u 1:(1e6*$7/$2) t name2 ls 2, \
# folder3."cpuTime.dat" u 1:(1e6*$7/$2) t name3 ls 3, \
# folder4."cpuTime.dat" u 1:(1e6*$7/$2) t name4 ls 4
#
# unset multiplot