2015-08-23 2 views
4

Я намерен запустить node somefile.js несколько раз.Как повторно использовать оптимизацию VIT JIT в последующих запусках узлов?

Предположительно каждый раз, когда я запускаю этот файл с помощью Node, он будет JIT-компилировать сценарий и выполнять другие оптимизации.

К сожалению: каждый раз, когда исполнение заканчивается, оно забудет всю работу, которую он сделал.

Есть ли какой-либо способ сохранить из предыдущего запуска оптимизацию, которую создал V8, и применить их к последующему запуску?

ответ

4

Сохранение/загрузка скомпилированного кода для v8 является сложным и редко оправданным, поскольку сохраняется гораздо больше информации, чем голый скомпилированный код, и поскольку для оптимизации и компиляции требуется немного времени (ну, есть также разминка, но все же общее время до исполнения оптимизированного кода редко бывает большим).

Так что нет ничего, о чем вы просите в mainline v8.

Вы можете, однако, поставить опцию --always-opt на v8, а также есть способ заставить определенную функцию оптимизироваться при следующем вызове. Вы должны делать это только в том случае, если ваша функция стабильна.