Програміст пообіцяв прискорити Python у п’ять разів — його одразу найняв Microsoft
Розробник Марк Шеннон створив план реалізації для прискорення CPython (найпоширенішої реалізації мови) у п’ять разів — у новій версії мова вже швидше до 60%. І це лише початок, повідомляється у блозі Microsoft.
Подробиці
План у Марка з’явився ще у 2020 році: у ньому пропонувався чотириетапний процес, який, як каже автор Python Гвідо ван Россум, був надто трудомістким для однієї людини. Потрібна команда.
«Із самого початку я думав, що ми повинні подивитися, чи зможе Microsoft найняти Марка та невелику групу людей для спільної роботи над цим планом. Адже роботи було занадто багато для однієї людини», — говорив Гвідо.
Microsoft підтримала ідею і створила команду з шести програмістів-ентузіастів, включаючи Ван Россума (він минулого року вийшов на пенсію і приєднався як заслужений інженер). Реалізація плану вже дає свої плоди: нова версія Python 3.11 показала прискорення на 10-60% у деяких галузях мови.
Як це працює
CPython використовує код C для інтерпретації мови Python. Хоча успіх Python полягає в його простоті для користувача, технологія, що лежить в його основі, вимагає до себе великої уваги розробників.
Команда складається з людей із дуже спеціальними знаннями. Наприклад, Л. Прейра набула багато своїх навичок, працюючи на класичних комп’ютерах 1970-х і 80-х років як хобі. Це допомогло зрозуміти, як працювати з .NET:
«Щоб вдалося зробити навіть найпростіші речі в старих системах, ви повинні навчитися оптимізувати свої програми: серйозно подумати про те, як розподілятиметься пам’ять, наприклад. Такі навички є дуже корисними для інтерпретатора Python».
Фахівці попрацювали над впровадженням багатьох функцій для підвищення продуктивності у випуску 3.11, але паралельно почали працювати над функціями в майбутніх версіях. Наприклад, надалі планується зміна представлення менших цілих чисел у Python, щоб використовувати власні обчислення замість повільніших алгоритмів для довільно більших чисел. Чорнові напрацювання Python 3.12 вже є у репозиторії на Github.
Чотириетапний план Шеннона забезпечити безперервну оптимізацію мови протягом наступних кількох років.
«Марк має дуже довгострокову, глобальну мету. Нам потрібно розбити цю мету на дрібніші частини й знайти те, що ми можемо зробити вже зараз, щоб явно покращити ситуацію на даному етапі шляху», — каже один із членів команди, Майкл Дроттбум — програміст, який працював над космічними телескопами Хаббла та Джеймса Веба.
Чому Microsoft взагалі робить ставку на Python?
Microsoft вже 20 років підтримує розвиток мов, водночас створюючи нові технології на кшталт C# та Typescript. Також компанія спонсорує Python Software Foundation з 2006 року, PyCon US та інші регіональні конференції, підтримуючи спільноту. Але зараз цій мові програмування приділяється особлива увага.
«Швидке зростання Python за останні 5 років добре задокументовано і вражає. Воно обумовлене насамперед зростанням науки про дані та довгою історією Python написання сценаріїв, веб-розробки, а також ретельного балансу між продуктивністю та простотою використання, — пише Ден Тейлор, головний менеджер Microsoft з управління проєктами, інструментами Python та AI. — Це мова, в якій велика увага приділяється продуктивності розробників — вона дуже дорога нам і тісно пов’язана з нашою місією».
Сьогодні мета команди Microsoft — «додати цінність спільноті Python, зробити мову кращою та допомогти спільноті за межами технічної галузі». Дроттбум вважає, що зосередившись на потребах спільноти Python, «виграють усі» — і корпорація, і програмісти по всьому світу.
Сообщить об опечатке
Текст, который будет отправлен нашим редакторам: