Посты с тэгом высокая производительность


Разработка python module, чтобы продакшн радовал

Всем привет! Я представляю команду разработчиков некоммерческой организации CyberDuckNinja. Мы создаём и поддерживаем целое семейство продуктов, которые позволяют облегчить разработку backend-приложений и сервисов машинного обучения.
Сегодня хотелось бы затронуть тему интеграции Python в C++.



Все началось со звонка друга в два часа ночи, который пожаловался: «У нас под нагрузкой ложится продакшн ...» В разговоре выяснилось, что код продакшена написан с использованием ipyparallel (пакет Python, который позволяет производить параллельные и распределённые вычисления) для обсчета модели и получения результатов в режиме онлайн. Мы решили разобраться в архитектуре ipyparallel и провести профайлинг под нагрузкой.
Читать дальше →



Немного Сythonа



Дошли руки до Cythona, спасибо самоизоляции. Проблема прозаична — как ускориться на python с минимальными потерями в синтаксисе. Один из подходов — использование Сython (сместь С и python).
Не давала покоя публикация с громким названием отсюда — habr.com/ru/company/ruvds/blog/462487
Но из содержания публикации мало что можно вынести, так как формулы и результирующая таблица неверны. Попробуем дополнить картину, начатую авторами поста и расставим точки над и.
Читать дальше →


[Перевод] О нет! Моя Data Science ржавеет

Привет, Хабр!

Предлагаем вашему вниманию перевод интереснейшего исследования от компании Crowdstrike. Материал посвящен использованию языка Rust в области Data Science (применительно к malware analysis) и демонстрирует, в чем Rust на таком поле может посоперничать даже с NumPy и SciPy, не говоря уж о чистом Python.


Приятного чтения!
Читать дальше →


[Перевод] Асинхронный Python-код медленнее обычного кода

Большинство программистов понимают, что асинхронный Python-код имеет более высокий уровень конкурентности, чем обычный синхронный код. Это даёт некоторые основания полагать, что асинхронный код способен показывать более высокий уровень производительности при решении распространённых задач вроде выдачи динамических веб-страниц или поддержки веб-API.



Но, к сожалению, Python-интерпретатор не выполняет асинхронный код быстрее синхронного.

В реалистичных условиях асинхронные веб-фреймворки показывают немного худшую пропускную способность (выраженную в запросах в секунду), чем обычные, и отличаются гораздо более сильной изменчивостью задержек.
Читать дальше →



[Перевод] Пока, Python. Привет, Julia❗

По мере того, как Python замедляет свой впечатляющий темп, растёт новый сильный конкурент.



Не поймите меня превратно. Популярность Python по-прежнему обеспечивается сообществом ученых, дата-сайентистов и специалистов по искусственному интеллекту.

Но если вы когда-либо обедали с этими людьми, то также знаете, как любят они обсудить слабости Python. Начиная с медлительности и заканчивая необходимостью чрезмерного тестирования, вплоть до появления ошибок времени выполнения, несмотря на предшествующее скрупулёзное тестирование — это кого хочешь разозлит.

Поэтому всё больше программистов-питонщиков осваивают и другие языки — лучшими игроками на этом поле являются Julia, Go и Rust. Julia отлично подходит для математических и технических задач, Go — для модульных программ, а Rust — лучший выбор для системного п



[Перевод] Как GPU-вычисления буквально спасли меня на работе. Пример на Python

Привет, Хабр!

Сегодня мы затрагиваем актуальнейшую тему — Python для работы с GPU. Автор рассматривает пример, тривиальный в своей монструозности, и демонстрирует решение, сопровождая его обширными листингами. Приятного чтения!


Читать дальше →



[Перевод] Добавляем параллельные вычисления в Pandas

Возможно вы сталкивались с задачей параллельных вычислений над pandas датафреймами. Решить эту проблему можно как силами нативного Python, так и с помощью замечательной библиотеки — pandarallel. В этой статье я покажу, как эта библиотека позволяет обрабатывать ваши данные с использованием всех доступных мощностей.


Читать дальше →


[Перевод] Почему будущее не за Python

Хотя, безусловно, этот язык программирования будет востребован ещё много лет.



Сообществу программистов понадобились десятилетия, чтобы по достоинству оценить Python. С начала 2010-х годов он переживает бум — и в итоге превосходит C, C#, Java и JavaScript по популярности.

Но до каких пор эта тенденция будет сохраняться? Когда Python в конечном итоге будет заменён другими языками и почему это неизбежно произойдёт? Читать дальше →


[Перевод] Реализуем преобразования кода на Python

Привет, Хабр.

Сегодня мы предлагаем вам перевод статьи, затрагивающей не самую обсуждаемую тему: компиляцию кода в Python, а именно: работу с абстрактным синтаксическим деревом (AST) и байт-кодом. Притом, что Python является интерпретируемым языком, такие возможности в нем чрезвычайно важны с точки зрения оптимизации. О них мы сегодня и поговорим.
Читать дальше →



[Из песочницы] О проблемах транслятора Python и переосмысление языка

Сколько нужно архитекторов, чтобы реализовать язык программирования?
Сто. Один будет писать реализацию, а 99 — говорить, что могут сделать лучше.


В этой статье я хочу затронуть не столько сам язык, сколько детали реализации CPython и его стандартной библиотеки, которые гарантируют, что у вас не будет никаких простых способов сделать приложение на питоне ни многопоточным, ни быстрым, ни легко поддерживаемым, и почему было создано столько альтернативных реализаций (PyPy, Cython, Jython, IronPython, Python for .NET, Parakeet, Nuitka, Stackless, Unladen Swallow), половина из которых уже умерла, и вряд мало кто понял, почему у них не было шансов победить в борьбе за выживание против других языков. Да, есть GDScript, который призван решить проблемы с производительность, есть Nim, который призван решить вообще все проблемы, не обязывая при этом пользователя чрезмерно явно объявлять типы. Однако, учитывая огромную инертность индустрии, я осознаю, чт