Как использовать и оптимизировать Mono AOT / mkbundle? (для уменьшения задержек запуска ВМ) - PullRequest
2 голосов
/ 09 июня 2010

Я хотел бы посмотреть, смогу ли я уменьшить задержки виртуальных машин, используя AOT Mono (опережающий компилятор). Как запустить .so файлы? (Извините, этот вопрос настолько элементарен; я не смог найти простой ответ по документации Моно).

Я выяснил, как использовать mkbundle (в данном случае mkbundle2), но оптимизируются ли полученные файлы? В документации Mono AOT упоминаются флаги "-O = all, -shared", но я не вижу их для mkbundle.

Хотя это, вероятно, совсем другой ответ, если есть хорошие способы сохранить виртуальную машину открытой (с чем-то более естественным / нейтральным по отношению к платформе, чем специальный файл fifo), это может быть лучше.

Заранее спасибо!

Ответы [ 2 ]

3 голосов
/ 09 июня 2010

Если AOT-файлы .so существуют рядом с файлами exe / dll, Mono будет использовать их при запуске exe. Но вам все еще нужны файлы dll / exe для метаданных и вещей, которые не могут быть скомпилированы AOT.

0 голосов
/ 09 июня 2010

Не уверен, точно ли это связано с вашим вопросом, но см. Последнее замечание здесь

http://blogs.msdn.com/b/dsyme/archive/2010/02/10/detailed-release-notes-for-f-february-2010-release.aspx

о флаге --resident для компилятора, чтобы сделать fsc.exe быстреена моно.

...