Профилирование линий Cython 0,25

Я пытаюсь создать профиль некоторого кода, который я написал на Cython. Но я не могу заставить его работать.

Я попытался выполнить все шаги, приведенные в разделе Как профилировать функции Cython построчно

Но я не получаю никаких результатов в результате. То, что я сделал, размещено здесь:

Я использую Python 3.6 и Cython 0.25.2

Что я пытаюсь сделать:

Сначала я бегу:

python setup.py build_ext --inplace

В setup.py я добавил:

import Cython.Compiler.Options

Cython.Compiler.Options.get_directive_defaults()['profile'] = True
Cython.Compiler.Options.get_directive_defaults()['linetrace'] = True
Cython.Compiler.Options.get_directive_defaults()['binding'] = True

и к расширению, которое я добавил,

define_macros=[('CYTHON_TRACE', '1')]

В сценарии runMIcython.pyx я добавил:

@cython.profile(True)
@cython.linetrace(True)
@cython.binding(True)

Затем в оболочке ipython я пытаюсь запустить (занимает около 1 минуты):

%load_ext line_profiler
import line_profiler 
import runMolecularIntegrals  
profile = line_profiler.LineProfiler(runMolecularIntegrals.runCythonIntegrals)
profile.runcall(runMolecularIntegrals.runIntegrals) 
profile.print_stats()

Но вывод, который я получаю:

Line #      Hits         Time  Per Hit   % Time  Line Contents  
==============================================================  
    10                                           cpdef 
runCythonIntegrals(int [:,:] basisidx, double [:,:] basisfloat, int [:,:] basisint, double[:,:] input, double[:,:] Na, double[:,:] S, double[:,:] T, double[:,:,:,:] ERI):

0 ответов

Другие вопросы по тегам