Русская Википедия:Psyco

Материал из Онлайн справочника
Версия от 02:31, 17 июля 2023; EducationBot (обсуждение | вклад) (Новая страница: «{{Русская Википедия/Панель перехода}} {{Карточка программы | name = Psyco | logo = | screenshot = | caption = | author = | developers = Армин Риго, затем Кристиан Тисмер | genre = JIT-компилятор | programming_language = C | language = | operating_system = UNIX-...»)
(разн.) ← Предыдущая версия | Текущая версия (разн.) | Следующая версия → (разн.)
Перейти к навигацииПерейти к поиску

Шаблон:Карточка программы Psyco — JIT-компилятор языка Python, изначально разработанный Армином Риго (Armin Rigo), в дальнейшем поддерживался и развивался Кристианом Тисмером (Christian Tismer). В настоящее время проект является закрытым. О прекращении поддержки Psyco объявлено 12 марта 2012 года.

Psyco работает в Unix-подобных ОС, Windows, Mac OS X на 32-разрядных Intel-совместимых процессорах. Psyco написан на C и генерирует только x86-код. Развитием проекта Psyco является PyPy, который включает в себя интерпретатор и компилятор, который может генерировать код на C и превосходит Psyco по кросс-платформенной совместимости.[1]

Увеличение скорости

Psyco может заметно ускорить приложение. Реальные значения производительности во многом зависят от применения и варьируются от небольшого замедления до 100-кратного ускорения[2][3][4][5]. Среднее увеличение скорости, как правило, находится в диапазоне от 1,5 до 4 раз, что делает характеристики Python близкими к таким языкам, как Smalltalk и Scheme, но все же медленнее, чем компилируемые языки, такие как Fortran, C и некоторые языки, использующие JIT (C# и Java)[6].

Psyco можно использовать даже двумя строчками кода:

import psyco

psyco.full()

Эти команды импортируют модуль Psyco и позволяют оптимизировать весь скрипт. Этот подход лучше всего подходит для коротких скриптов, но демонстрирует минимальный объем работы, достаточный для применения Psyco к существующей программе.

Дальнейшая разработка

17 июля 2009 года Кристиан Тисмер объявил, что ведётся работа над Psyco V2[7].

См. также

Примечания

Шаблон:Примечания

Ссылки

Шаблон:Software-stub Шаблон:Python