print'Other time since import %.3fs %.1f%%'%(other_time,other_time/total_time*100)
print'Other time since import %.3fs %.1f%%'%(other_time,other_time/total_time*100)
print'%i Theano fct call, %.3fs per call'%(total_fct_call,time_per_call)
print'%i Theano fct call, %.3fs per call'%(total_fct_call,time_per_call)
print
print
print"List of apply that don't have float64 as input but have float64 in outputs. Usefull to know if we forgot some cast when using floatX=float32 or gpu code."
print"List of apply that don't have float64 as input but have float64 in outputs. Usefull to know if we forgot some cast when using floatX=float32 or gpu code."
...
@@ -1236,7 +1244,7 @@ if 0: # old code still to be ported from ProfileMode
...
@@ -1236,7 +1244,7 @@ if 0: # old code still to be ported from ProfileMode
scalar_op_amdlibm_speed_up=[scal.Mod,scal.Pow,scal.Ceil,scal.Floor,scal.RoundHalfToEven,scal.RoundHalfAwayFromZero,scal.Log,scal.Log2,scal.Log10,scal.Log1p,scal.Exp,scal.Sqrt,scal.Abs,scal.Cos,scal.Sin,scal.Tan,scal.Tanh,scal.Cosh,scal.Sinh,T.nnet.sigm.ScalarSigmoid,T.nnet.sigm.ScalarSoftplus]#Abs, Mod in float{32,64} only
scal.Sqrt,scal.Abs,scal.Cos,scal.Sin,scal.Tan,scal.Tanh,scal.Cosh,scal.Sinh,T.nnet.sigm.ScalarSigmoid,T.nnet.sigm.ScalarSoftplus]# Abs, Mod in float{32,64} only
print" - With the default gcc libm, exp in float32 is slower than in float64! Try Theano flags floatX=float64 or install amdlibm and set the theano flags lib.amdlibm=True"
print" - With the default gcc libm, exp in float32 is slower than in float64! Try Theano flags floatX=float64 or install amdlibm and set the theano flags lib.amdlibm=True"
#tip 4
#tip 4
fora,tinapply_time.iteritems():
fora,tinapply_time.iteritems():
node=a
node=a
if(isinstance(node.op,T.Dot)and
if(isinstance(node.op,T.Dot)and
...
@@ -1326,7 +1340,7 @@ if 0: # old code still to be ported from ProfileMode
...
@@ -1326,7 +1340,7 @@ if 0: # old code still to be ported from ProfileMode
"Currently they are: %s"%
"Currently they are: %s"%
[i.typeforiinnode.inputs])
[i.typeforiinnode.inputs])
#tip 5
#tip 5
fora,tinapply_time.iteritems():
fora,tinapply_time.iteritems():
node=a
node=a
ifisinstance(node.op,RandomFunction):
ifisinstance(node.op,RandomFunction):
...
@@ -1414,7 +1428,7 @@ if 0: # old code still to be ported from ProfileMode
...
@@ -1414,7 +1428,7 @@ if 0: # old code still to be ported from ProfileMode
tb=b_time.pop(a,0)
tb=b_time.pop(a,0)
r[a]+=ta-tb
r[a]+=ta-tb
#they are missing in a
#they are missing in a
fora,tinb_time.items():
fora,tinb_time.items():
r.setdefault(a,0)
r.setdefault(a,0)
r[a]+=t
r[a]+=t
...
@@ -1435,8 +1449,6 @@ if 0: # old code still to be ported from ProfileMode
...
@@ -1435,8 +1449,6 @@ if 0: # old code still to be ported from ProfileMode