{"id":2944,"date":"2026-09-27T21:08:47","date_gmt":"2026-09-27T20:08:47","guid":{"rendered":"https:\/\/www.blog-actu.com\/index.php\/2026\/09\/27\/mkcheck2-des-chercheurs-japonais-traquent-les-erreurs-de-compilation-jusqua-54-fois-plus-vite\/"},"modified":"2026-09-29T20:56:32","modified_gmt":"2026-09-29T19:56:32","slug":"mkcheck2-des-chercheurs-japonais-traquent-les-erreurs-de-compilation-jusqua-54-fois-plus-vite","status":"publish","type":"post","link":"https:\/\/www.blog-actu.com\/index.php\/2026\/09\/27\/mkcheck2-des-chercheurs-japonais-traquent-les-erreurs-de-compilation-jusqua-54-fois-plus-vite\/","title":{"rendered":"mkcheck2 : des chercheurs japonais traquent les erreurs de compilation jusqu&rsquo;\u00e0 54 fois plus vite"},"content":{"rendered":"<p>Quand un logiciel refuse de se compiler, ou pire, se compile avec des morceaux p\u00e9rim\u00e9s, la faute revient souvent \u00e0 une d\u00e9pendance mal d\u00e9clar\u00e9e. Trois chercheurs de l&rsquo;universit\u00e9 Waseda, \u00e0 Tokyo, Yuta Saito, Kazunori Sakamoto et Hironori Washizaki, proposent un outil baptis\u00e9 mkcheck2 pour rep\u00e9rer ces erreurs bien plus rapidement qu&rsquo;avec les m\u00e9thodes actuelles. Leurs travaux ont \u00e9t\u00e9 publi\u00e9s dans les actes de la 48e conf\u00e9rence internationale IEEE\/ACM sur le g\u00e9nie logiciel (ICSE 2026).<\/p>\n<h2>Un probl\u00e8me qui p\u00e8se sur les grands projets<\/h2>\n<p>Les syst\u00e8mes de construction comme Make, CMake ou celui du langage Zig orchestrent la transformation du code source en programme ex\u00e9cutable : ils compilent les fichiers dans le bon ordre, lient les objets entre eux et \u00e9vitent de tout recompiler \u00e0 chaque modification. Encore faut-il que chaque d\u00e9pendance entre fichiers soit correctement d\u00e9crite. D&rsquo;apr\u00e8s les chercheurs, les erreurs de sp\u00e9cification des d\u00e9pendances repr\u00e9sentent plus de la moiti\u00e9 des \u00e9checs de compilation dans les projets de grande taille.<\/p>\n<p>Pour les d\u00e9tecter, il faut observer quels fichiers chaque \u00e9tape de la compilation lit et \u00e9crit r\u00e9ellement. Les outils existants s&rsquo;appuient pour cela sur ptrace, un m\u00e9canisme qui suspend le processus observ\u00e9 \u00e0 chaque appel syst\u00e8me. R\u00e9sultat : une surcharge importante, qui rend la v\u00e9rification trop lente pour \u00eatre lanc\u00e9e r\u00e9guli\u00e8rement.<\/p>\n<h2>Le pari d&rsquo;eBPF<\/h2>\n<p>L&rsquo;\u00e9quipe de Waseda s&rsquo;appuie plut\u00f4t sur eBPF, une technologie du noyau Linux qui permet d&rsquo;ex\u00e9cuter de petits programmes isol\u00e9s directement dans l&rsquo;espace noyau, d\u00e9j\u00e0 utilis\u00e9e pour la supervision r\u00e9seau ou la s\u00e9curit\u00e9. Le tra\u00e7age se fait ainsi sans interrompre la compilation. S&rsquo;y ajoute une analyse incr\u00e9mentale, qui ne r\u00e9examine que ce qui a chang\u00e9 d&rsquo;une version \u00e0 l&rsquo;autre du code.<\/p>\n<p>Les gains annonc\u00e9s sont nets : jusqu&rsquo;\u00e0 99,7 % de surcharge en moins par rapport aux approches fond\u00e9es sur ptrace, avec la m\u00eame pr\u00e9cision de d\u00e9tection selon les auteurs. Sur un corpus de 300 projets utilisant Make, le temps moyen d&rsquo;analyse par commit passe d&rsquo;environ 21 minutes (1 267 secondes) \u00e0 moins de 24 secondes, soit une acc\u00e9l\u00e9ration pouvant atteindre un facteur 54. De quoi envisager une v\u00e9rification continue, \u00e0 chaque modification du code.<\/p>\n<p>L&rsquo;outil a toutefois ses limites. Il ne fonctionne que sous Linux, eBPF \u00e9tant propre \u00e0 ce syst\u00e8me. Et plusieurs cas restent difficiles \u00e0 couvrir : certaines d\u00e9pendances redondantes, l&rsquo;acc\u00e8s \u00e0 des zones de m\u00e9moire projet\u00e9es, les biblioth\u00e8ques charg\u00e9es dynamiquement, les d\u00e9pendances r\u00e9seau et les syst\u00e8mes de compilation distribu\u00e9s.<\/p>\n<p><!-- blogactu-source: https:\/\/www.theregister.com\/software\/2026\/09\/25\/new-software-dependency-validation-process-increases-speeds-by-54x\/5299256 --><\/p>\n<p style=\"font-size:11px;line-height:1.4;color:#9a9a9a;margin-top:2.5em\">Image : <a href=\"https:\/\/commons.wikimedia.org\/wiki\/File:Waseda_University_-_Okuma_Statue_and_Okuma_Auditorium.JPG\" style=\"color:#9a9a9a;text-decoration:none\" target=\"_blank\" rel=\"nofollow noopener\">XIIIfromTOKYO, Public domain, via Wikimedia Commons<\/a><\/p>\n<p><!-- blogactu-seo: 2026-09-29 --><\/p>\n","protected":false},"excerpt":{"rendered":"<p>mkcheck2, con\u00e7u \u00e0 l&rsquo;universit\u00e9 Waseda, s&rsquo;appuie sur eBPF sous Linux pour d\u00e9tecter les erreurs de d\u00e9pendances de compilation jusqu&rsquo;\u00e0 54 fois plus vite.<\/p>\n","protected":false},"author":3,"featured_media":2943,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[52],"tags":[341,339,275,340],"class_list":["post-2944","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-technologie-2","tag-compilation","tag-ebpf","tag-linux","tag-universite-waseda"],"_links":{"self":[{"href":"https:\/\/www.blog-actu.com\/index.php\/wp-json\/wp\/v2\/posts\/2944","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.blog-actu.com\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.blog-actu.com\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.blog-actu.com\/index.php\/wp-json\/wp\/v2\/users\/3"}],"replies":[{"embeddable":true,"href":"https:\/\/www.blog-actu.com\/index.php\/wp-json\/wp\/v2\/comments?post=2944"}],"version-history":[{"count":2,"href":"https:\/\/www.blog-actu.com\/index.php\/wp-json\/wp\/v2\/posts\/2944\/revisions"}],"predecessor-version":[{"id":3029,"href":"https:\/\/www.blog-actu.com\/index.php\/wp-json\/wp\/v2\/posts\/2944\/revisions\/3029"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.blog-actu.com\/index.php\/wp-json\/wp\/v2\/media\/2943"}],"wp:attachment":[{"href":"https:\/\/www.blog-actu.com\/index.php\/wp-json\/wp\/v2\/media?parent=2944"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.blog-actu.com\/index.php\/wp-json\/wp\/v2\/categories?post=2944"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.blog-actu.com\/index.php\/wp-json\/wp\/v2\/tags?post=2944"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}