Principles of Mechanical Sympathy
L'article souligne que malgré les avancées matérielles, les logiciels restent lents et que la "Mechanical Sympathy" consiste à concevoir le logiciel en harmonie avec le matériel. Il détaille la hiérarchie mémoire des CPU (registres, caches L1/L2/L3, RAM) et recommande d'utiliser des accès séquentiels et prévisibles plutôt que des accès aléatoires. Il explique le phénomène de false sharing lié aux cache lines partagées et recommande de les isoler en ajoutant du padding pour que chaque variable modifiée occupe une ligne de cache. Le principe du Single Writer consiste à confier toutes les écritures à un seul thread (acteur) afin d'éliminer les verrous, d'éviter les contentions et de permettre le regroupement des requêtes pour l'inférence. La technique de Natural Batching remplit immédiatement un lot puis l'envoie lorsque le lot est plein ou que la file est vide, ce qui réduit la latence par rapport aux stratégies temporelles, et l'article conclut en recommandant de définir des SLIs/SLOs et d'assurer l'observabilité avant d'optimiser.