Я хотел бы использовать ilasm для компиляции кода il. Есть довольно много параметров, которые я могу использовать. В Visual Studio я могу просто поставить галочку «Оптимизировать код» в настройках проекта. Как я могу включить компилятор ilasm для компиляции в «релизном» режиме, оптимизировать код и создать как можно меньше отладочной информации -> Я хотел бы достичь наилучшей производительности.
Как использовать ilasm с релиз-режимом
Ответы (1)
Вы можете использовать параметры командной строки для ilasm чтобы повлиять на компиляцию. Похоже, вам нужен параметр /optimize
. Однако это лишь незначительная оптимизация; переключение «длинных инструкций» на более короткие. Это повлияет на количество байтов, необходимых для кодирования инструкции, поэтому сэкономит вам несколько байтов.
Написание кода il означает, что вы точно знаете, как вы хотите, чтобы все было сделано, и не будет никаких оптимизаций во время компиляции (за исключением преобразования длинных инструкций в короткие).
Возможно, вас больше интересует jit-компиляция (преобразование инструкций il во время выполнения на машинный ассемблер), но вы мало что можете с этим сделать. Он делает то, что делает, без внешнего вмешательства, и обычно делает это хорошо.
Написание простого кода означает, что вы отказываетесь от идеи иметь язык высокого уровня (например, C#), который может выразить то, что вы хотите, в меньшем количестве строк кода, и позволяете любым интересным инструментам, которые вы найдете, анализировать его на предмет встраивания, возможных проблем с потоками и смотреть, что может выполняться параллельно на нескольких ядрах. Написание кода на языке означает, что вы заявляете, что умеете писать код на языке лучше, чем ассемблер. Ты?
/debug
. Но я не очень понимаю, что он делает. Могу ли я что-нибудь сделать с этим, чтобы оптимизировать производительность?
- person Florian; 05.05.2014
/debug
.
- person svick; 05.05.2014