LINUX.ORG.RU

История изменений

Исправление vertexua, (текущая версия) :

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

Но иногда JIT необходим, например в случае с Java. С одной стороны стандартная библиотека настолько раздута, что интерпретировать это нельзя - будет плохо постоянно опускаться и подыматься на 100 пунктов стека на каждый чих. Потому это нужно компилировать, чтобы компилятор вытер абстракции. Но компилировать заранее в натив тоже нельзя, ведь из-за раздутости Java, SubstrateVM на Hello World работает 90 секунд. 90 секунд Карл!

Значит они все сделали правильно при условии такой раздутости - решили компилировать только узкие места, чтобы одновременно не тратить все 90 секунд, а то и больше, но одновременно не париться о произвоительности не сильно горячего кода.

Получаем отличный результат, можем запинать интерпретируемый динамически типизируемый Python на бенчмарке. Но конечно не .NET Core работающий так же, https://benchmarksgame-team.pages.debian.net/benchmarksgame/fastest/java-csharpcore.html, на большинстве

Исправление vertexua, :

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

Но иногда JIT необходим, например в случае с Java. С одной стороны стандартная библиотека настолько раздута, что интерпретировать это нельзя - будет плохо постоянно опускаться и подыматься на 100 пунктов стека на каждый чих. Потому это нужно компилировать, чтобы компилятор вытер абстракции. Но компилировать заранее в натив тоже нельзя, ведь из-за раздутости Java, SubstrateVM на Hello World работает 90 секунд. 90 секунд Карл!

Значит они все сделали правильно при условии такой раздутости - решили компилировать только узкие места, чтобы одновременно не тратить все 90 секунд, а то и больше, но одновременно не париться о произвоительности не сильно горячего кода.

Получаем отличный результат, можем запинать интерпретируемый динамически типизируемый Python на бенчмарке. Но конечно не .NET Core https://benchmarksgame-team.pages.debian.net/benchmarksgame/fastest/java-csharpcore.html, на большинстве

Исправление vertexua, :

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

Но иногда JIT необходим, например в случае с Java. С одной стороны стандартная библиотека настолько раздута, что интерпретировать это нельзя - будет плохо постоянно опускаться и подыматься на 100 пунктов стека на каждый чих. Потому это нужно компилировать, чтобы компилятор вытер абстракции. Но компилировать заранее в натив тоже нельзя, ведь из-за раздутости Java, SubstrateVM на Hello World работает 90 секунд. 90 секунд Карл!

Значит они все сделали правильно при условии такой раздутости - решили компилировать только узкие места, чтобы одновременно не тратить все 90 секунд, а то и больше, но одновременно не париться о произвоительности не сильно горячего кода.

Получаем отличный результат, можем запинать интерпретируемый динамически типизируемый Python на бенчмарке

Исправление vertexua, :

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

Но иногда JIT необходим, например в случае с Java. С одной стороны стандартная библиотека настолько раздута, что интерпретировать это нельзя - будет плохо постоянно опускаться и подыматься на 100 пунктов стека на каждый чих. Потому это нужно компилировать, чтобы компилятор вытер абстракции. Но компилировать заранее в натив тоже нельзя, ведь из-за раздутости Java, SubstrateVM на Hello World работает 90 секунд. 90 секунд Карл!

Значит они все сделали правильно при условии такой раздутости - решили компилировать только узкие места, чтобы одновременно не тратить все 90 секунд, а то и больше, но одновременно не париться о произвоительности не сильно горячего кода.

Исправление vertexua, :

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

Но иногда JIT необходим, например в случае с Java. С одной стороны стандартная библиотека настолько раздута, что интерпретировать это нельзя - будет плохо постоянно опускаться и подыматься на 100 пунктов стека на каждый чих. Потому это нужно компилировать, чтобы компилятор вытер абстракции. Но компилировать заранее в натив тоже нельзя, ведь из-за раздутости SubstrateVM на Hello World работает 90 секунд. 90 секунд Карл!

Значит они все сделали правильно при условии такой раздутости - решили компилировать только узкие места, чтобы одновременно не тратить все 90 секунд, а то и больше, но одновременно не париться о произвоительности не сильно горячего кода.

Исправление vertexua, :

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

Но иногда JIT необходим, например в случае с Java. С одной стороны стандартная библиотека настолько раздута, что интерпретировать это нельзя - будет плохо постоянно опускаться и подыматься на 100 пунктов стека на каждый чих. Потому это нужно компилировать. Но компилировать заранее в натив тоже нельзя, ведь из-за раздутости SubstrateVM на Hello World работает 90 секунд. 90 секунд Карл!

Значит они все сделали правильно при условии такой раздутости - решили компилировать только узкие места, чтобы одновременно не тратить все 90 секунд, а то и больше, но одновременно не париться о произвоительности не сильно горячего кода.

Исправление vertexua, :

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

Но иногда JIT необходим, например в случае с Java. С одной стороны стандартная библиотека настолько раздута, что интерпретировать это нельзя - будет плохо постоянно опускаться и подыматься на 100 пунктов стека. Потому это нужно компилировать. Но компилировать заранее в натив тоже нельзя, ведь из-за раздутости SubstrateVM на Hello World работает 90 секунд. 90 секунд Карл!

Значит они все сделали правильно при условии такой раздутости - решили компилировать только узкие места, чтобы одновременно не тратить все 90 секунд, а то и больше, но одновременно не париться о произвоительности не сильно горячего кода.

Исходная версия vertexua, :

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

Но иногда JIT необходим, например в случае с Java. С одной стороны стандартная библиотека настолько раздута, что интерпретировать это нельзя - будет плохо. Потому это нужно компилировать. Но компилировать заранее в натив тоже нельзя, ведь из-за раздутости SubstrateVM на Hello World работает 90 секунд. 90 секунд Карл!

Значит они все сделали правильно при условии такой раздутости - решили компилировать только узкие места, чтобы одновременно не тратить все 90 секунд, а то и больше, но одновременно не париться о произвоительности не сильно горячего кода.