Hi,
<type> = Py shows that the Python interface is used for that Op. However, 
in Scan's case, that Python implementation uses Cython, so most of the 
performance of C should be there.
Python code can also execute the computation on the GPU. In that case, you 
can see in the Op list that the scan Ops print as "forall_inplace,gpu,...", 
which confirm they are actually running on the GPU.

On Monday, June 5, 2017 at 12:01:06 PM UTC-4, Haining Yu wrote:
>
> Hello,
>
> I have a question about how to read theano profiling results. I am running 
> a RNN model, where the gradient is calculated via theano.scan. When I 
> profile the code, I can see that the bulk of time is spent on theano.scan. 
> Moreover I notice that the type of call is Py rather than C. 
>
> My questions are: 
> 1. does <type> = Py imply that the code is running as python code? 
> 2. does this also imply the code is executed on CPU (instead of GPU)?
>
> Thanks,
> Haining
>
> Below is results from profiling:
>
> Class
> ---
> <% time> <sum %> <apply time> <time per call> <type> <#call> <#apply> 
> <Class name>
>   99.3%    99.3%     624.260s       1.90e-01s     Py    3284       2   
> theano.scan_module.scan_op.Scan
>    0.2%    99.5%       1.237s       1.57e-05s     C    78816      48   
> theano.sandbox.cuda.basic_ops.GpuAlloc
>    0.2%    99.7%       1.028s       2.02e-05s     C    50902      31   
> theano.sandbox.cuda.basic_ops.GpuElemwise
>    0.1%    99.7%       0.394s       1.64e-06s     C   239732     146   
> ...
>
> Ops
> ---
> <% time> <sum %> <apply time> <time per call> <type> <#call> <#apply> <Op 
> name>
>   87.3%    87.3%     548.530s       3.34e-01s     Py    1642        1   
> forall_inplace,gpu,grad_of_scan_fn&grad_of_scan_fn&grad_of_scan_fn&grad_of_scan_fn&grad_of_scan_fn&grad_of_scan_fn&grad_of_scan_fn&grad_of_scan_fn&grad_of_scan_fn&grad_of_scan_fn&grad_of_scan_fn&grad_of_scan_fn}
>   12.0%    99.3%      75.730s       4.61e-02s     Py    1642        1   
> forall_inplace,gpu,scan_fn&scan_fn&scan_fn&scan_fn}
>    0.2%    99.5%       1.237s       1.57e-05s     C     78816       48   
>
> ...
>
>
>

-- 

--- 
You received this message because you are subscribed to the Google Groups 
"theano-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/d/optout.

Reply via email to