4D v19 est Silicon Native !

Traduit automatiquement de Deepl

La sortie révolutionnaire des nouveaux Macs Silicon d’Apple nous a poussé à sortir 4D v19 six mois plus tôt afin de vous fournir une version native Silicon de 4D le plus rapidement possible. Nous avons revu tout notre code, en nous assurant de sa compatibilité avec Silicon, nous avons effectué des tests approfondis sur cette nouvelle plateforme, et nous sommes enfin prêts à vous fournir la première version de 4D native Silicon. Laissez-moi vous guider dans cette révolution !

J’avais lu de nombreux articles vantant les mérites du nouveau processeur M1. Je dois donc avouer que lorsque j’ai enfin réussi à faire tourner une version de 4D native Silicon sur mon tout nouveau MacBook Air, la première chose que j’ai faite a été d’exécuter mes applications 4D compilées les plus gourmandes en CPU pour voir comment il les gérait. J’ai été impressionné par les performances de cette petite machine sur des travaux de calcul comme le cryptage et le décryptage, et complètement déconcerté par ses capacités de gestion de la mémoire.

J’ai également comparé les performances de 4D exécuté à la fois dans sa version native et sous Rosetta en utilisant certaines de nos applications 4D de test. Laissez-moi vous donner une comparaison rapide :

Nous pouvons voir que les opérations intensives du CPU sont beaucoup plus rapides dans la version native par rapport à Rosetta. Mais, quand il s’agit d’accès à la mémoire, la différence de performance est stellaire ! J’ai effectué les mêmes tests sur mon iMac 2017 et j’ai constaté des performances similaires en Rosetta.

Maintenant, laissez-moi vous parler du plus grand changement que les Silicon Macs apportent à 4D. Comme les Silicon Macs n’utilisent plus une architecture de processeur x86 comme les Macs et PC Intel, ils ne peuvent pas exécuter le même code compilé. Nous avons donc dû améliorer notre compilateur avec une compilation spécifique pour Silicon. Vous pourrez désormais compiler vos applications pour les architectures Intel (Windows et Intel Mac), Silicon (Silicon Mac), ou les deux. Nous expliquerons le fonctionnement du nouveau compilateur dans un autre billet de blog.

Les plugins seront également légèrement impactés. Pour qu’un plugin fonctionne à la fois sur les Macs Intel et Silicon, vous devrez le compiler en tant que binaire universel. Vous pouvez télécharger la version compatible avec Silicon du SDK pour plugins ici. Et si vous utilisez des plugins tiers, veillez à télécharger des versions compatibles avec Silicon.

Il existe également de nouvelles directives pour les applications multiplateformes et nous expliquerons tout dans un article de blog dédié.

Bien sûr, 4D v19 continuera à fonctionner avec Rosetta. Si vous avez besoin de temps pour faire fonctionner votre application en mode natif, il est toujours possible de les exécuter sur Rosetta.
Si vous avez des questions sur la transition, n’hésitez pas à nous contacter sur le 4D Forum!

Nicolas Brachfogel
- Product Owner & Senior Developer - Nicolas Brachfogel a rejoint 4D en 2017 en tant que développeur senior (4D Server et networking) et en tant que Product Owner pour gérer la mise en production d'Apple Silicon. Il est chargé de rédiger les user stories et de les traduire en spécifications fonctionnelles, ainsi que de s'assurer que les implémentations des fonctionnalités répondent aux besoins des clients. Diplômé de l'Institut Supérieur d'Informatique Appliquée (INSIA), Nicolas a commencé sa carrière en tant que développeur de logiciels en 2001. Après plusieurs années de programmation en Java et C++, il s'est spécialisé dans le développement client-serveur pour des sociétés de jeux vidéo. En tant que développeur/architecte serveur, il a travaillé avec succès sur les architectures serveur de nombreux jeux (Dofus Arena, Drakerz, Trivial Pursuit Go !).