Melhoria de Performance no .NET 4.5: Multicore Just-in-Time (JIT).

Olá pessoal!

Dando uma lida nas melhorias de performance da plataforma .NET 4.5, me deparei com algo extremamente interessante: Multicore Just-in-Time (JIT).

A teoria é muito simples: por que não utilizar vários núcleos para a compilação JIT? Além disto, será que seria possível compilar os métodos em uma determinada ordem, onde os primeiros fossem aqueles com maior probabilidade de execução?

Isto parece meio loucura mas é o que o Multicore Just-in-Time (JIT) faz. E o melhor de tudo, de uma forma extremamente simples.

As aplicações ASP.NET 4.5 já o fazem por default. Em outras ocasiões, basta executar duas linhas de código: uma indicando a pasta onde o arquivo que armazenará o profile ficará, e a outra para iniciar o procedimento. Este profile é o arquivo responsável por armazenar a ordem de compilação dos métodos, para que aqueles com maior chance de serem executados mais cedo sejam compilados antes.

Código para este processo:

ProfileOptimization.SetProfileRoot(@"C:\ProfileRoot");
ProfileOptimization.StartProfile("profile");

Esta otimização na compilação só será notada após a criação do profile. Portanto, na primeira vez nada será percebido.

Ao final do processo, um arquivo com o nome escolhido (no caso profile) será criado, na pasta indicada como root:

image

Fica a dica!

Abraços!

Published Thursday, April 5, 2012 2:08 AM by anobre
Filed under:

Comments

# re: Melhoria de Performance no .NET 4.5: Multicore Just-in-Time (JIT).

Thursday, April 5, 2012 7:07 AM by kristinajons

I read your post it is very interesting and creative post about use of JIT in ASP.net.

THanks for sharing,