A discussão no forum gerou um post extremamente valioso no blog do Joris de Gruyter. Com a autorização do Joris eu traduzo este post para o nosso idioma!
"
Tenho certeza que a maioria de vocês sabem, tempos de compilação no Dynamics AX 2012 são uma preocupação conforme mais funcionalidades vão sendo adicionadas ao AX. Especialmente em nossos ambientes de testes, que são máquinas (não otimizadoas) virtuais, estamos falando de cerca de 3 horas para AX 2012 RTM / FPK e cerca de 5 horas para R2. Houveram discussões sobre este assunto no Forum Microsoft Dynamics AX, e parece haver grandes diferenças nas experiências de tempos de compilação. Depois de muita discussão com outras pessoas sobre os tema, e chats com as pessoas da Microsoft, eu acho que está bem claro em quais áreas é preciso se concentrar para otimizar os tempos de compilação.
1) O compilador AX foi originalmente construído quando nem se falava em multi-core. Assim, como resultado, você já deve ter notado que uma compilação utiliza apenas um thread. Com a tendência atual de mais núcleos, mas a uma velocidade mais baixa de clock, uma máquina "mais velha" (tipo de CPU) pode possivelmente ter um melhor desempenho do que uma nova, ou um Desktop pode ser melhor do que um servidor dedicado.
2) A comunicação entre AX e SQL é crítica. A comunicação com o Model Store é crítica ( O AOS recebe o código fonte a partir do Model Store, compila, e coloca de volta os binários no Model Store).
3) O Model Store está no SQL, portanto o SQL tem que executar de forma otimizada.
Para este fim, eu me propus a construir uma das bases de código do nosso cliente (AX 2012 RTM CU3, sem Feature Pack) em uma máquina de compilação "experimental". Esta base de código vem tomando uma média de tempo de compilação de 3 a 3,2 horas a cada vez em nossa AOS virtual conectado a um SQL físico.
A nova configuração? Laptop Dell Latitude E6520
* Core i7-2760QM CPU @ 2.4GHz, 4 Cores, 8 Logical Processors
* 8 GB memory
* High performance SSD (Samsung 840 Pro), 256GB
* Windows Server 2012, SQL 2012, AX 2012 RTM CU4
Além do hardware (velocidade de clock de 2,4 GHz - o número de núcleos não importa, SSD para maximizar o rendimento SQL), os elementos fundamentais da nossa configuração foram colocar o AOS e o servidor SQL nessa mesma máquina e desabilitar TCP / IP nos protocolos de servidor do SQL para que ele use o Shared Memory.
A diferença no tempo de compilação é impressionante. Na verdade, eu executei várias vezes, porque eu pensei que tinha feito algo errado. No entanto, uma vez que este é UM um sistema automatizado usando o TFS, eu sei que os passos, os códigos e tudo o resto são exatamente os mesms, por definição.
Old Build Server | New Build Server | |
Remove old models | 00:00:27 | 00:00:03 |
Start AOS | 00:01:26 | 00:00:25 |
Synchronize (remove old artifacts from DB) | 00:06:52 | 00:05:57 |
Import XPOs from TFS | 00:13:17 | 00:03:55 |
Import VS Projects | 00:00:29 | 00:00:11 |
Import Labels | 00:00:22 | 00:00:08 |
Synchronize (with new data model) | 00:05:42 | 00:01:55 |
X++ Compile | 02:29:36 | 00:41:28 |
CIL Generation | 00:13:41 | 00:05:29 |
Stop AOS | 00:00:10 | 00:00:03 |
Export Built Model | 00:00:42 | 00:00:12 |
Total Build Time | 03:14:43 | 01:00:59 |
Então, sim, o tempo de compilação caiu para 41 minutos! Agora eu preciso de uma outra máquina para a compilação do R2 :-) vou postar os tempos de compilação do R2 assim que conseguir!
"
Os dizeres acima foram traduzidos do seguinte link:
http://daxmusings.codecrib.com/2013/04/dynamics-ax-2012-compile-times.html
Todos os creditos do post acima vão para Joris de Gruyter!
Em resumo pessoal, para quem não acompanha o Forum Dynamics AX, passe a acompanhar, muitas dicas e discussões interessantes estão acontecendo por lá.
Neste caso em especifico, a discução iniciada por Tommy Skaue, que gerou o post acima, pode ser acompanhada aqui.
As dicas em todo este post são de grande utilidade, acredito que nos ajudarão muito nas proximas implementações e atualizações do AX2012!
Muito obrigado ao Joris por me permitir traduzir este post e ao tommy por ter iniciado este assutno no forum!
Nenhum comentário:
Postar um comentário