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

Posted by anobre on ASP.net Weblogs See other posts from ASP.net Weblogs or by anobre
Published on Thu, 05 Apr 2012 04:08:13 GMT Indexed on 2012/04/05 5:30 UTC
Read the original article Hit count: 192

Filed under:

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!

© ASP.net Weblogs or respective owner

Related posts about .NET