Запускаем несколько интерпретаторов в коде на Python — невероятная скорость

5 июня 2025 года был принят PEP-0734 . Судя по информации на официальном сайте, он является продолжением PEP-0554 . Этот PEP предлагает добавить новый модуль, interpreters, для поддержки проверки, создания и запуска кода в нескольких интерпретаторах в текущем процессе. А если идти дальше, то он является частью PEP-0684 , которые предлагает один GIL на интерпретатор. Несколько полноценных интерпретаторов работающих рядом. Какие плюсы? Один процесс; Один тред, но руками можно создавать еще; По GILу на интерпретатор, все еще можно получить плюшки настоящей многозадачности по сети; Работает с asyncio. В этой статье вы узнаете как работает эта фича под капотом и в реальном питоне. Приятного чтения!

https://habr.com/ru/companies/timeweb/articles/922314/

#python_c_api #pep #pep734 #interpreters #python #интерпретаторы #новости #новые_фичи #производительность #c

Запускаем несколько интерпретаторов в коде на Python — невероятная скорость

5 июня 2025 года был принят PEP-0734 . Судя по информации на официальном сайте, он является продолжением PEP-0554 . Этот PEP предлагает добавить новый модуль interpreters для поддержки проверки,...

Хабр

Как увеличить скорость python-скриптов: C-расширения и Python/C API

Во время разработки ПО мы сталкиваемся с выбором между удобством языка и его производительностью. Python завоевал популярность благодаря простоте и изящности, но когда дело доходит до низкоуровневых действий или махинаций, требующие производительность и быстроту, на помощь приходит C. Мы будем изучать именно интеграцию расширений во времени сборки, а не просто загрузка библиотек через ctypes. В этой статье я хочу рассказать о том, как интегрировать C-расширения с использованием библиотеки Python.h. Я также расскажу как создать свою python-библиотеку с C-расширениями. Также мы исследуем, как устроен Python — например, вспомним, что все является объектами. Я буду использовать poetry как менеджер рабочего окружения. Все будет создаваться на примере моей небольшой библиотеки для различных алгоритмов и вычислений. В конце я проведу анализ pure-python алгоритмов, нашей библиотеки и pure-c алгоритмов: скорость выполнения, распространяемость, минусы и плюсы, количество кода. Не буду тянуть, начнем!

https://habr.com/ru/companies/timeweb/articles/875420/

#c #python #c_extensions #c_расширения #расширения #производительность #оптимизация #высокая_производительность #python_c_api #timeweb_статьи

Как увеличить скорость python-скриптов: C-расширения и Python/C API

Во время разработки ПО мы сталкиваемся с выбором между удобством языка и его производительностью. Python завоевал популярность благодаря простоте и изящности, но когда дело доходит до низкоуровневых...

Хабр

Тестирование алгоритма деления больших чисел на С++ с использованием Python C API

Ранее был предложен некоторый Алгоритм деления 2W-битовых чисел с использованием операций над W-битовыми числами. Для тестирования использовались целые числа языка С++, что не позволяло проверять, например, 128-битные целые числа. Однако, в язык Python встроена поддержка целых чисел неограниченной ширины (Big Integer), а также имеется API для вызова методов Python из программ на языке С/С++. Это позволяет протестировать разные алгоритмы с числами, в том числе деление, используя в качестве результата строковое представление чисел. В данной статье расписаны шаги для использования Python C API в программе на языке С++, а также показан пример вызова оператора деления двух целых чисел с возвратом результата в виде строки С. Использовалась следующая программная конфигурация:

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

#тестирование ++ #Python_C_API #Деление_чисел #длинная_арифметика

Тестирование алгоритма деления больших чисел на С++ с использованием Python C API

Введение Ранее был предложен некоторый Алгоритм деления 2W-битовых чисел с использованием операций над W-битовыми числами. Для тестирования использовались целые числа языка С++, что не позволяло...

Хабр