BT
x Por favor preencha a pesquisa do InfoQ !

Mono 2.2 tem uma engine linear de geração de código

por Abel Avram , traduzido por Felipe Rodrigues em 30 Jan 2009 |

Até agora o engine de geração de código do Mono era baseado em uma árvore de representação intermediária (IR) do código. A versão 2.2 possue uma nova engine baseada em uma IR linear, que traz melhorias significativas de velocidade e tamanho de código.

A IR baseada em árvore anterior tornava "difícil melhorar a geração de código e extender o engine JIT de maneira significativa", de acordo com Miguel de Icaza. O novo IR linear ajuda a "melhorar a visibilidade do uso do alocador de registro, assim ele pode fazer melhores escolhas quando produzindo código".

O trabalho na IR linear começou no final de 2005. O trabalho evoluiu mas o time do Mono não queria incluir a nova engine no 2.0 por causa da quatidade de trabalho envolvido. Agora, que a versão 2.2 foi liberada, o Mono tem uma nova engine.

O efeito mais importante da mudança é mostrado pelos resultados de benchmark:

Velocidade: O engine beneficiará código computacionalmente intensivo, normalmente entre 10% e 30% de aumento de performance, with alguns casos chegando a 50% mais rápido.

Tamanho do código: a nova engine gera código menor, tipicamente 12% a 20% menor.

Aqueles interessados nos detalhes da nova engine podem encontrá-los no website do Mono. Os Release Notes para a versão 2.2 mencionam as seguintes melhorias: performance aumentada, suporte para compilação antecipada, suporte para monitoramente através de PerformanceCounters, anexar código ao vivo, suporte a SIMD e outros.

Avalie esse artigo

Relevância
Estilo/Redação

Olá visitante

Você precisa cadastrar-se no InfoQ Brasil ou para enviar comentários. Há muitas vantagens em se cadastrar.

Obtenha o máximo da experiência do InfoQ Brasil.

Dê sua opinião

HTML é permitido: a,b,br,blockquote,i,li,pre,u,ul,p

Receber mensagens dessa discussão
Comentários da comunidade

HTML é permitido: a,b,br,blockquote,i,li,pre,u,ul,p

Receber mensagens dessa discussão

HTML é permitido: a,b,br,blockquote,i,li,pre,u,ul,p

Receber mensagens dessa discussão

Dê sua opinião
Feedback geral
Bugs
Publicidade
Editorial
Marketing
InfoQ Brasil e todo o seu conteúdo: todos os direitos reservados. © 2006-2016 C4Media Inc.
Política de privacidade
BT

Percebemos que você está utilizando um bloqueador de propagandas

Nós entendemos porquê utilizar um bloqueador de propagandas. No entanto, nós precisamos da sua ajuda para manter o InfoQ gratuito. O InfoQ não compartilhará seus dados com nenhum terceiro sem que você autorize. Procuramos trabalhar com anúncios de empresas e produtos que sejam relevantes para nossos leitores. Por favor, considere adicionar o InfoQ como uma exceção no seu bloqueador de propagandas.