提交 f1a0decc authored 作者: Frederic's avatar Frederic

during time profile, print the raw log during execution.

上级 bedd4529
......@@ -240,6 +240,12 @@ def run(stdout, stderr, argv, theano_nose, batch_size, time_profile,
prof_master_nosort = []
prof_rawlog = []
dummy_out = open(os.devnull, 'w')
path_rawlog = os.path.join(sav_dir, 'timeprof_rawlog')
stamp = str(datetime.datetime.now()) + '\n\n'
f_rawlog = open(path_rawlog, 'w')
f_rawlog.write('TIME-PROFILING OF THEANO\'S NOSETESTS'
' (raw log)\n\n' + stamp)
f_rawlog.flush()
for test_floor in xrange(1, n_tests + 1, batch_size):
for test_id in xrange(test_floor, min(test_floor + batch_size,
n_tests + 1)):
......@@ -257,8 +263,10 @@ def run(stdout, stderr, argv, theano_nose, batch_size, time_profile,
# recovering and processing data from pipe
err = proc.stderr.read()
# building the raw log
prof_rawlog.append(err)
# print the raw log
f_rawlog.write(err)
f_rawlog.flush()
# parsing the output
l_err = err.split()
try:
......@@ -295,6 +303,7 @@ def run(stdout, stderr, argv, theano_nose, batch_size, time_profile,
# appending tuple to master list
prof_master_nosort.append(prof_tuple)
print '%s%% time-profiled' % ((test_id * 100) // n_tests)
f_rawlog.close()
# sorting tests according to running-time
prof_master_sort = sorted(prof_master_nosort,
......@@ -303,11 +312,8 @@ def run(stdout, stderr, argv, theano_nose, batch_size, time_profile,
# saving results to readable files
path_nosort = os.path.join(sav_dir, 'timeprof_nosort')
path_sort = os.path.join(sav_dir, 'timeprof_sort')
path_rawlog = os.path.join(sav_dir, 'timeprof_rawlog')
f_nosort = open(path_nosort, 'w')
f_sort = open(path_sort, 'w')
f_rawlog = open(path_rawlog, 'w')
stamp = str(datetime.datetime.now()) + '\n\n'
fields = ('Fields: computation time; nosetests sequential id;'
' test name; parent class (if any); outcome\n\n')
f_nosort.write('TIME-PROFILING OF THEANO\'S NOSETESTS'
......@@ -327,11 +333,6 @@ def run(stdout, stderr, argv, theano_nose, batch_size, time_profile,
f_sort.write(s_sort)
f_nosort.close()
f_sort.close()
f_rawlog.write('TIME-PROFILING OF THEANO\'S NOSETESTS'
' (raw log)\n\n' + stamp)
for i in xrange(len(prof_rawlog)):
f_rawlog.write(prof_rawlog[i])
f_rawlog.close()
if __name__ == '__main__':
sys.exit(main())
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论