Как стать автором
Обновить

Комментарии 14

Я может где-то не заметил, но в примерах вроде есть строки для замера времени выполнения, но не заметил сравнения cffi, pybind11 и ctypes. Интересно сравнить время исполнения, так как реализация мне кажется у них усложнена, по сравнению с ctypes.
Да, заложился что бы замерить и забыл про это. Завтра прогоню и результаты здесь выложу.
Выложил результаты в конце статьи, как ни странно ctypes оказался медленнее. Что меня удивило…
Да, удивительно… Спасибо. С pybind11 вроде разница не особо, а вот cffi значительно… Надо будет покопать и посмотреть что да как с ним более тщательно. Напрягли меня целый ряд ограничений, указанных вами для cffi. Ладно, спасибо за статью, и результаты сравнения.
cffi.CDefError: cannot parse "#ifndef _TEST_H_"
cdef source string:1:1: Directives not supported yet

Может быть разработчик в следующих версиях добавит поддержку…
Будет статья про Python/C API?
Спасибо. Как-то эта статья мимо меня прошла
UPD: нет, всё-таки не прошла. В той статье про вызов Python кода из С. Я имел в виду С-расширения для Python с использованием Python/C API (не путать с этой статьёй). Похоже, конечно же, но всё-таки немного с другой стороны.
Поинтересуюсь этим попозже.
Разобрался с этим вопросом, в ближайшее время напишу.
На python проверять время исполнения через time.time() не очень корректно, особенно для маленьких операций. Есть встроенная библиотека timeit, разработанная специально для проверок производительности.
Ок, погляжу и тесты не поленюсь нормальнее напишу.
Зарегистрируйтесь на Хабре , чтобы оставить комментарий

Публикации

Истории