JR · @dniminenn
Je bâtis des affaires qui doivent être justes, preuve à l'appui.
Des notes sur les horloges de précision, l'audio, les systèmes embarqués, et le débogage par la mesure. La plupart sont parties d'une question anodine qui a déraillé pas mal plus loin que de raison.
Horloges de précision
Horloges disciplinées au GPS, NTP et PTP, budgets en nanosecondes, et prouver qu'une horloge dit vrai.
Audio, de bout en bout
Chaînes de lecture bit-perfect, DSP, visualiseurs à DEL, et la chasse à la latence qui s'entend.
Systèmes embarqués
ESP32, RP2040, et le micrologiciel qui doit continuer de rouler même quand le réseau lâche.
Débogage de systèmes
Lire le noyau, suivre le fil, mesurer au lieu de deviner.
Textes choisis
Remettre les basses qui n'ont jamais été enregistrées
J'ai préparé une sélection musicale pour un système maison de 1500 watts et synthétisé une octave de sous-graves manquante dans des pistes coupées sous les 40 Hz. Mesurer d'abord, corriger seulement ce que les chiffres justifient, ne toucher à rien d'autre.
Qu'est-ce qui met ces octets sur le fil?
L'interface de stockage d'un cluster en production tirait de 4 à 12 fois plus que l'interface publique où arrivent les requêtes clientes. Arriver à un chiffre défendable voulait dire se méfier de tout, y compris de mon propre profileur, qui se trompait d'un facteur 30.
Une optimisation Dovecot que le compilateur effaçait depuis le début
Une commande IMAP THREAD provoquait une panique dans le code de tableaux de Dovecot. Le plantage était bien réel, mais le commentaire juste au-dessus décrivait une optimisation qui n'avait jamais tourné dans aucun build -O2 livré. ATTR_PURE l'avait transformée en code mort, et la même annotation décidait quelle ligne apparaissait dans la trace.
Un cluster Ceph que je jette à chaque redémarrage
Je voulais un vrai point d'accès Ceph (S3, CephFS, RBD) pour tester du code applicatif, sans cluster k8s ni un seul octet qui touche mon SSD. Un conteneur, ~30 secondes, tout en RAM. C'est le balayage des versions qui est devenu intéressant.