Ускоряем и оптимизируем numpy, pandas, scipy и sklearn

С момента публикации статьи на Хабре « Импортозамещаем numpy, pandas, scipy и sklearn » прошло почти три года. В течение этого времени я приостановил работу над проектом из-за нехватки времени, ресурсов и сил. К тому же, меня расстроило, что не смог выполнить просьбу пользователя @N-Cube , который активно интересовался моей библиотекой и хотел ускорить работу своего Jupyter Notebook. В самый критический момент на помощь пришел волшебный AI, который, хоть и иногда проявлял недостаток гибкости, с готовностью исполнял все пожелания своего хозяина. Благодаря этому проект начал продвигаться вперед. За это время в библиотеки были добавлены поддержка CUDA, множество ручных SIMD-оптимизаций с динамическим выбором SIMD, несколько реализаций линейной регрессии и многое другое. Давайте рассмотрим, что на сегодняшний день позволяет сделать моя библиотека. Я представлю несколько тестовых примеров в двух вариантах: с использованием AVX-2 на процессоре Intel® Core™ i7-4790K и AVX-512 на Intel® Xeon. Также покажу результаты замеров для каждого из них. Все тесты проводились без использования GPU, исключительно на процессоре. Это позволяет сравнивать производительность Python и моей библиотеки на равных условиях. Операционная система – Ubuntu 24.04, компилятор – GNU 13.3.0.

https://habr.com/ru/articles/1039866/

#C++ #numpy #pandas #scipy #sklearn #opensource #datascience #data_analysis

Ускоряем и оптимизируем numpy, pandas, scipy и sklearn

С момента публикации статьи на Хабре « Импортозамещаем numpy, pandas, scipy и sklearn » прошло почти три года. В течение этого времени я приостановил работу над проектом из-за нехватки времени,...

Хабр