O lançamento inovador dos novos Silicon Macs da Apple levou-nos a lançar o 4D v19 seis meses antes para lhe fornecer uma versão nativa de Silicon 4D o mais cedo possível. Revimos todo o nosso código, assegurando a sua compatibilidade com Silicon, realizámos testes extensivos nesta nova plataforma, e estamos finalmente prontos para lhe fornecer a primeira versão nativa de Silicon 4D. Deixe-me guiá-lo através desta revolução!
Tinha lido muitos artigos elogiando o novo processador M1, por isso devo confessar que quando finalmente obtive uma versão nativa de Silício 4D a correr no meu novíssimo MacBook Air, a primeira coisa que fiz foi correr nele as minhas aplicações 4D compiladas com CPU mais intensiva para ver como estava a lidar com elas. Fiquei impressionado com o desempenho desta pequena máquina em trabalhos computacionais como a encriptação e descodificação, e completamente perplexo com as suas capacidades de gestão de memória.
Também comparei o desempenho da execução 4D tanto na versão nativa como sob a Rosetta, utilizando algumas das nossas aplicações 4D de teste. Deixem-me dar-vos uma rápida comparação:
Assim, podemos ver que as operações de CPU-intensiva são muito mais rápidas nativa em comparação com a Rosetta. Mas, quando se trata de acesso à memória, a diferença de desempenho é estelar! Realizei os mesmos testes no meu iMac de 2017 e vi desempenhos semelhantes na Rosetta.
Agora, deixem-me falar-vos da maior mudança que os Silicon Macs trazem para a 4D. Como os Silicon Macs já não utilizam uma arquitectura de processador x86 como os Macs e PCs Intel, não podem executar o mesmo código compilado. Como tal, tivemos de melhorar o nosso compilador com uma compilação específica de Silicon. Agora será possível compilar as suas aplicações para arquitecturas Intel (Windows e Intel Mac), arquitectura Silicon (Silicon Mac), ou ambas as arquitecturas. Explicaremos como funciona o novo compilador noutro post de blog.
Os plugins também serão ligeiramente impactados. Para que um plugin funcione tanto em Intel como em Silicon Macs, será necessário compilá-lo como um binário universal. Pode descarregar aqui a versão compatível com Silicon SDK do plugin SDK. E se utilizar plugins de terceiros, certifique-se de que descarrega versões compatíveis com Silicon.
Há também novas directrizes para aplicações multiplataforma e explicaremos tudo num post de blogue dedicado a este assunto.
Naturalmente, 4D v19 continuará a trabalhar com a Rosetta. Se precisar de tempo para pôr a sua aplicação a funcionar nativamente, é sempre possível executá-las na Rosetta.
Se tiver alguma dúvida sobre a transição, não hesite em contactar-nos no Fórum 4D!