Reddit – learnprogramming – Le hack connu sous le nom de “Périphérique Duff ' s” est-il utilisé dans des applications réelles?

L’appareil de Duff est (presque) toujours un exemple de ce que nous appellerions une “micro-optimisation.” L’exemple classique d’une micro-optimisation est celui qui complique et convolue la base de code, sans apporter d’amélioration perceptible des performances de l’application.

La plupart des astuces comme l’appareil de Duff qui optimisent une seule boucle, une seule petite fonction, etc., sont des micro-optimisations. Les PROCESSEURS sont tellement rapides ces jours-ci que vous n’obtenez généralement aucune amélioration mesurable en utilisant ces astuces. Vous rendez certainement les ordres de grandeur plus difficiles à comprendre et à maintenir votre code. En plus de la vitesse du processeur, les compilateurs sont vraiment intelligents de nos jours. Ils peuvent faire des astuces comme celle-ci en coulisses pour optimiser votre programme compilé, sans que vous ayez besoin de salir votre code source.

La plupart des “problèmes” de performance de nos jours sont en fait à un niveau supérieur à celui des boucles individuelles. Penser en termes de représentation de votre modèle de données sur le disque et la mémoire, comment limiter l’échange entre le disque et la RAM, comment optimiser la quantité de données sérialisées, envoyées et désérialisées sur le réseau, etc. À partir de là, vous entrez dans les algorithmes et les approches de niveau supérieur que vous adoptez pour résoudre un problème véritablement lié au processeur. Arriver au point d’optimiser une seule boucle avec quelque chose comme l’appareil de Duff est, aujourd’hui, presque toujours la mauvaise chose à faire.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée.