Skip to content

Commit

Permalink
corrected stdout for elapsedtime and papi extensions
Browse files Browse the repository at this point in the history
  • Loading branch information
Youngsung Kim committed Sep 25, 2017
1 parent 4bbabcf commit 613b34e
Show file tree
Hide file tree
Showing 4 changed files with 38 additions and 18 deletions.
4 changes: 2 additions & 2 deletions examples/simple-region/src/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,8 @@ ROW := 4
COL := 4

# uncommand followings to build with PAPI library
PAPI_DIR := /path/to/PAPI
PAPI_LIB := ${PAPI_DIR}/lib/libpapi.a
#PAPI_DIR := /path/to/PAPI
#PAPI_LIB := ${PAPI_DIR}/lib/libpapi.a

FC := ifort
FC_FLAGS := -DROW=${ROW} -DCOL=${COL}
Expand Down
2 changes: 1 addition & 1 deletion examples/simple/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -12,12 +12,12 @@ test:
--cmd-clean "cd ${SRC_DIR}; make clean" \
--cmd-build "cd ${SRC_DIR}; make build" \
--cmd-run "cd ${SRC_DIR}; make run" \
--repr-papi header=${PAPI_DIR}/include/f90papi.h,static=${PAPI_DIR}/lib/libpapi.a,event=PAPI_TOT_INS \
${SRC}:${CALLSITE}

# additional flags
# --repr-code enable \
# --repr-etime nbins=5,ndata=20 \
# --repr-papi header=${PAPI_DIR}/include/f90papi.h,static=${PAPI_DIR}/lib/libpapi.a,event=PAPI_TOT_INS \
# --source alias=/path/a:path/b # add this option if your system requires alias paths \
# --rebuild all \
# --check tolerance=1.0D-14 \
Expand Down
23 changes: 19 additions & 4 deletions kgen/elapsedtime/main.py
Original file line number Diff line number Diff line change
Expand Up @@ -429,10 +429,25 @@ def run(self):
triples = []
for binnum, etimebin in enumerate(etimebins):
bin_triples = []
print 'From bin # %d [ %f (sec) ~ %f (sec) ] %f %% of %d'%(binnum, \
binnum*(etimemax-etimemin)/nbins + etimemin if binnum > 0 else etimemin, \
(binnum+1)*(etimemax-etimemin)/nbins + etimemin if binnum < (nbins-1) else float('inf'), \
countdist[binnum] * 100, totalcount)
range_begin = binnum*(etimemax-etimemin)/nbins + etimemin if binnum > 0 else etimemin
range_end = (binnum+1)*(etimemax-etimemin)/nbins + etimemin if binnum < (nbins-1) else None

bunit = 'sec'
if range_begin < 1.E-6:
bunit = 'usec'
range_begin *= 1.E6

if range_end is None:
print 'From bin # %d [ %f (%s) ~ ] %f %% of %d'%(binnum, \
range_begin, bunit, countdist[binnum] * 100, totalcount)
else:
eunit = 'sec'
if range_end < 1.E-6:
eunit = 'usec'
range_end *= 1.E6

print 'From bin # %d [ %f (%s) ~ %f (%s) ] %f %% of %d'%(binnum, \
range_begin, bunit, range_end, eunit, countdist[binnum] * 100, totalcount)

for invokenum in sorted(etimebin.keys()):
if len(bin_triples) >= datacollect[binnum]: break
Expand Down
27 changes: 16 additions & 11 deletions kgen/papicounter/main.py
Original file line number Diff line number Diff line change
Expand Up @@ -329,8 +329,8 @@ def run(self):

try:

papimin = float(cfg.get('papi.summary', 'minimum_papicounter').strip())
papimax = float(cfg.get('papi.summary', 'maximum_papicounter').strip())
papimin = int(cfg.get('papi.summary', 'minimum_papicounter').strip())
papimax = int(cfg.get('papi.summary', 'maximum_papicounter').strip())
npapis = int(cfg.get('papi.summary', 'number_papicounters').strip())
papidiff = papimax - papimin

Expand All @@ -341,9 +341,9 @@ def run(self):
nbins = max(min(Config.model['types']['papi']['nbins'], npapis), 2)

kgutils.logger.info('nbins = %d'%nbins)
kgutils.logger.info('papimin = %f'%papimin)
kgutils.logger.info('papimax = %f'%papimax)
kgutils.logger.info('papidiff = %f'%papidiff)
kgutils.logger.info('papimin = %d'%papimin)
kgutils.logger.info('papimax = %d'%papimax)
kgutils.logger.info('papidiff = %d'%papidiff)
kgutils.logger.info('npapis = %d'%npapis)


Expand Down Expand Up @@ -397,10 +397,15 @@ def run(self):
triples = []
for binnum, papibin in enumerate(papibins):
bin_triples = []
print 'From bin # %d [ %f (sec) ~ %f (sec) ] %f %% of %d'%(binnum, \
binnum*(papimax-papimin)/nbins + papimin if binnum > 0 else papimin, \
(binnum+1)*(papimax-papimin)/nbins + papimin if binnum < (nbins-1) else float('inf'), \
countdist[binnum] * 100, totalcount)
range_begin = int(binnum*(papimax-papimin)/nbins + papimin) if binnum > 0 else papimin
range_end = int((binnum+1)*(papimax-papimin)/nbins + papimin) if binnum < (nbins-1) else None

if range_end is None:
print 'From bin # %d [ %d ~ ] %f %% of %d'%(binnum, \
range_begin, countdist[binnum] * 100, totalcount)
else:
print 'From bin # %d [ %d ~ %d ] %f %% of %d'%(binnum, \
range_begin, range_end, countdist[binnum] * 100, totalcount)

for invokenum in sorted(papibin.keys()):
if len(bin_triples) >= datacollect[binnum]: break
Expand All @@ -417,8 +422,8 @@ def run(self):
triples.extend(bin_triples)

print 'Number of bins: %d'%nbins
print 'Minimun papi count: %f'%papimin
print 'Maximum papi count: %f'%papimax
print 'Minimun papi count: %d'%papimin
print 'Maximum papi count: %d'%papimax
#print 'Selected invocation triples:'
#print ','.join([ ':'.join([ str(n) for n in t ]) for t in triples])

Expand Down

0 comments on commit 613b34e

Please sign in to comment.