Skip to content

Commit fdfd337

Browse files
authored
Merge branch 'development' into decoder-engine
2 parents d9f6ed5 + 1398e1e commit fdfd337

2 files changed

Lines changed: 19 additions & 2 deletions

File tree

libexec/scaling

Lines changed: 18 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ def cli():
66
cli.add_argument('-y','--yaml', metavar='YAML',help='path to YAML file',required=True)
77
cli.add_argument('-c','--clara', metavar='DIR',help='CLARA_HOME path (default=$CLARA_HOME)',default=os.getenv('CLARA_HOME',None))
88
cli.add_argument('-t','--threads',metavar='#',help='threads (default=4,8)',default='4,8')
9-
cli.add_argument('-e','--events', metavar='#',help='events per threads (default=2550)',default=555,type=int)
9+
cli.add_argument('-e','--events', metavar='#',help='events per threads (default=2555)',default=2555,type=int)
1010
cli.add_argument('-N','--numa', metavar='#',help='NUMA socket (default=None, choices=[0,1])',default=None,type=int,choices=[0,1])
1111
cli.add_argument('datafile', help='input EVIO/HIPO data file')
1212
cfg = cli.parse_args()
@@ -123,6 +123,22 @@ def save(benchmarks):
123123
for row in table(benchmarks):
124124
f.write(' '.join([str(x) for x in row])+'\n')
125125

126+
def plot():
127+
import os,shutil,subprocess
128+
if shutil.which('gnuplot'):
129+
g = os.path.dirname(os.path.abspath(__file__))+'/scaling.gpl'
130+
r = subprocess.run(['gnuplot',g], capture_output=True, text=True)
131+
if r.returncode == 0:
132+
with open('scaling.svg','w') as f:
133+
f.write(r.stdout)
134+
print('Info: created scaling.svg from scaling.txt and scaling.gpl!')
135+
else:
136+
print(r.stdout)
137+
print(r.stderr)
138+
print('Error: gnuplot failed!')
139+
else:
140+
print('Warning: gnuplot is not in $PATH.')
141+
126142
if __name__ == '__main__':
127143
cfg = cli()
128144
import os
@@ -133,4 +149,5 @@ if __name__ == '__main__':
133149
benchmarks.append([threads, benchmark(cfg, threads, log)])
134150
show(benchmarks)
135151
save(benchmarks)
152+
plot()
136153

libexec/scaling.gpl

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -67,6 +67,7 @@ set key nobox inside top left
6767
f(x) = m*x
6868
m = 2
6969

70+
set fit quiet
7071
set fit nolog
7172
fit [0:24] f(x) datafile using 1:(1/$2*1e3) via m
7273
rate = sprintf('%.1f Hz/CPU',m)
@@ -84,7 +85,6 @@ plot datafile \
8485
'' using 1:($5) pt 9 with points title 'Reader' ,\
8586
'' using 1:((column($#-1))) pt 11 with points title 'Writer' ,\
8687

87-
#set logscale y
8888
set size 0.6,1.0
8989
set origin 0.4,0.0
9090
set key outside right vertical

0 commit comments

Comments
 (0)