Перегрузка математических функций Python с использованием Cython

Вот моя основная проблема:

У меня есть файл Python с импортом

from math import sin,cos,sqrt

Мне нужно, чтобы этот файл по-прежнему был на 100% совместим с CPython, чтобы мои разработчики могли писать 100% код CPython и использование отличных инструментов, разработанных для Python.

Теперь войдите в Cython. В моем файле Python триггерные функции вызываются миллионы раз (в коде, и это не может измениться ). Есть ли какой-нибудь способ, чтобы с помощью некоторого Python -fu в основном файле python или магии Cython иначе я мог бы вместо этого использовать математические функции C/C++, используя некоторые изменения в коде Cython

cdef extern from "math.h":
    double sin(double)

, что дало бы мне почти -производительность C, которая была бы потрясающей.

В докладе Стефана говорится, что это невозможно сделать, но докладу уже два года, и там много творческих людей

7
задан ibell 27 April 2012 в 13:02
поделиться