JIT или не JIT? Вот в чём вопрос.
Python — язык с многолетней историей. И на протяжении всей своей истории он не был фаворитом в вопросах производительности. Предпринималось много разных попыток приблизиться к решению этой проблемы, в том числе и с добавлением JIT (pypy, numba, etc.), но у большинства из них присутствовал фатальный недостаток. Они были инструментами для решения конкретных ситуаций и про них вспоминали, только когда других вариантов уже не оставалось: уже не жалко инвестировать дополнительное время в ускорение узких мест и переписывание кода.
Но что же нам предвещает добавление JIT в коробочную версию cpython? Мы получим бесплатное ускорение всех наших программ и возрадуемся или всё не так просто? Давайте попробуем разобраться вместе.
Python — язык с многолетней историей. И на протяжении всей своей истории он не был фаворитом в вопросах производительности. Предпринималось много разных попыток приблизиться к решению этой проблемы, в том числе и с добавлением JIT (pypy, numba, etc.), но у большинства из них присутствовал фатальный недостаток. Они были инструментами для решения конкретных ситуаций и про них вспоминали, только когда других вариантов уже не оставалось: уже не жалко инвестировать дополнительное время в ускорение узких мест и переписывание кода.
Но что же нам предвещает добавление JIT в коробочную версию cpython? Мы получим бесплатное ускорение всех наших программ и возрадуемся или всё не так просто? Давайте попробуем разобраться вместе.