{"id":161903,"date":"2026-02-20T17:11:55","date_gmt":"2026-02-20T15:11:55","guid":{"rendered":"https:\/\/prohoster.info\/blog\/novosti-interneta\/razrabotchik-io_uring-vyyavil-v-qemu-problemu-v-50-80-raz-zamedlyavshuyu-fdmon-v-rezhime-prostoya"},"modified":"2026-02-20T17:11:55","modified_gmt":"2026-02-20T15:11:55","slug":"razrabotchik-io_uring-vyyavil-v-qemu-problemu-v-50-80-raz-zamedlyavshuyu-fdmon-v-rezhime-prostoya","status":"publish","type":"post","link":"https:\/\/prohoster.info\/fr\/blog\/news\/razrabotchik-io_uring-vyyavil-v-qemu-problemu-v-50-80-raz-zamedlyavshuyu-fdmon-v-rezhime-prostoya","title":{"rendered":"Le d\u00e9veloppeur io_uring a identifi\u00e9 un probl\u00e8me dans QEMU, ralentissant fdmon par 50 \u00e0 80 fois en mode veille","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>Jens Axboe, cr\u00e9ateur d'io_uring et des planificateurs d'entr\u00e9e\/sortie CFQ, Deadline et Noop, a propos\u00e9 l'int\u00e9gration dans la base de code de l'\u00e9mulateur QEMU d'un patch r\u00e9duisant les latences lors de l'ex\u00e9cution de fdmon (surveillance des descripteurs de fichiers) en mode \u00ab aio=io_uring \u00bb et lors de l'\u00e9tat d'inactivit\u00e9 du syst\u00e8me de 50 \u00e0 80 fois.     <\/p>\n<p>Le probl\u00e8me se manifestait en raison de la mise en veille de l'op\u00e9ration ppoll() avec un d\u00e9lai d'attente de 499 ms, malgr\u00e9 la pr\u00e9sence d'E\/S. Pour reprendre l'ex\u00e9cution de la boucle principale de traitement des \u00e9v\u00e9nements, suspendue en raison de ppoll(), un patch a \u00e9t\u00e9 propos\u00e9, ajoutant un appel \u00e0 la fonction aio_notify() dans la fonction de cr\u00e9ation de l'entr\u00e9e de file d'attente de soumission (SQE).      <\/p>\n<p>Le probl\u00e8me est apparu lors des tests de r\u00e9gression de io_uring avec <a class=\"wpil_keyword_link\" href=\"https:\/\/prohoster.info\/fr\/vps\/abuzoustojchivye-vps\/\"   title=\"des machines virtuelles\" data-wpil-keyword-link=\"linked\"  data-wpil-monitor-id=\"4298\">des machines virtuelles<\/a> avec diff\u00e9rents p\u00e9riph\u00e9riques de blocs. Jens a not\u00e9 l'apparition al\u00e9atoire de d\u00e9lais lors de l'utilisation de p\u00e9riph\u00e9riques AHCI\/SATA en mode \u00ab aio=io_uring \u00bb, tandis que dans les configurations avec des p\u00e9riph\u00e9riques virtio-blk ou nvme, les tests se terminaient toujours avec succ\u00e8s en environ une seconde. Il est \u00e0 noter que le probl\u00e8me concerne tous les types de p\u00e9riph\u00e9riques de blocs, mais pour les p\u00e9riph\u00e9riques AHCI\/SATA, l'apparition de d\u00e9lais est particuli\u00e8rement marqu\u00e9e en raison de l'utilisation de MMIO.            <\/p>\n<p>Jens a \u00e9galement d\u00e9crit son exp\u00e9rience de d\u00e9bogage du probl\u00e8me en utilisant l'assistant IA Claude. Apr\u00e8s avoir d\u00e9termin\u00e9 le sc\u00e9nario reproduisant les conditions de timeout, il a transmis les donn\u00e9es de d\u00e9bogage \u00e0 Claude, a fourni l'acc\u00e8s \u00e0 la machine virtuelle et a propos\u00e9 de d\u00e9terminer les causes probables de l'\u00e9chec identifi\u00e9.     <\/p>\n<p>Claude a d\u00e9cid\u00e9 de v\u00e9rifier si les performances seraient affect\u00e9es lors de l'utilisation du p\u00e9riph\u00e9rique virtio-blk et a lanc\u00e9 avec celui-ci le sc\u00e9nario destructif propos\u00e9 par le d\u00e9veloppeur, reproduisant le probl\u00e8me. Au cours du test, les premiers 128 Mo de contenu ont \u00e9t\u00e9 supprim\u00e9s du p\u00e9riph\u00e9rique de bloc \/dev\/vda dans la machine virtuelle. Apr\u00e8s cela, Claude a conclu que le probl\u00e8me ne venait pas de virtio-blk. Lorsque Jens a mentionn\u00e9 \u00e0 l'assistant AI la suppression d'une partie du contenu de \/dev\/vda, celui-ci a r\u00e9pondu \u00ab Oui, je l'ai fait \u00bb, et apr\u00e8s la demande de correction, a restaur\u00e9 le bon fonctionnement du disque virtuel \/dev\/vda. Il est \u00e0 noter que l'utilisation de l'assistant AI a aid\u00e9 \u00e0 mieux comprendre les sp\u00e9cificit\u00e9s de l'ex\u00e9cution des diff\u00e9rentes boucles de traitement d'\u00e9v\u00e9nements dans QEMU.      <\/p>\n<p>Il est notable que le probl\u00e8me \u00e9tait assez difficile \u00e0 d\u00e9tecter, car les tests synth\u00e9tiques ne montrent pas de ralentissement en raison de l'influence de l'\u00e9veil du cycle de traitement des \u00e9v\u00e9nements avec ppoll d\u00fb \u00e0 une autre activit\u00e9, et les tests synth\u00e9tiques d'entr\u00e9e\/sortie ne traitent pas les donn\u00e9es re\u00e7ues. Le ralentissement est devenu plus apparent avec l'ajout de plusieurs appels \u00e0 usleep() pour simuler le traitement des donn\u00e9es.      <\/p>\n<p>Avant correction, sur un syst\u00e8me en \u00e9tat de repos (idle) :          time sudo .\/iotest \/dev\/sda          Ex\u00e9cut\u00e9 en   25.76 secs      fish           externe        usr time    6.19 millis  783.00 micros    5.41 millis        sys time   12.43 millis  642.00 micros   11.79 millis      <\/p>\n<p>Apr\u00e8s correction, sur un syst\u00e8me en \u00e9tat de repos :          time sudo .\/iotest \/dev\/sda          Ex\u00e9cut\u00e9 en    1.30 secs      fish           externe        usr time    2.14 millis    0.14 millis    2.00 millis        sys time   16.93 millis    1.16 millis   15.76 millis<br \/>\n<br \/>Source : <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=64834\">opennet.ru<\/a> <\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u0419\u0435\u043d\u0441 \u042d\u043a\u0441\u0431\u043e (Jens Axboe), \u0441\u043e\u0437\u0434\u0430\u0442\u0435\u043b\u044c io_uring \u0438 \u043f\u043b\u0430\u043d\u0438\u0440\u043e\u0432\u0449\u0438\u043a\u043e\u0432 \u0432\u0432\u043e\u0434\u0430\/\u0432\u044b\u0432\u043e\u0434\u0430 CFQ, Deadline \u0438 Noop, \u043f\u0440\u0435\u0434\u043b\u043e\u0436\u0438\u043b \u0434\u043b\u044f \u0432\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u044f \u0432 \u043a\u043e\u0434\u043e\u0432\u0443\u044e \u0431\u0430\u0437\u0443 \u044d\u043c\u0443\u043b\u044f\u0442\u043e\u0440\u0430 QEMU \u043f\u0430\u0442\u0447, \u0432 50-80 \u0440\u0430\u0437 \u0441\u043e\u043a\u0440\u0430\u0449\u0430\u044e\u0449\u0438\u0439 \u0437\u0430\u0434\u0435\u0440\u0436\u043a\u0438 \u043f\u0440\u0438 \u0440\u0430\u0431\u043e\u0442\u0435 fdmon (file descriptor monitoring) \u0432 \u0440\u0435\u0436\u0438\u043c\u0435 &#171;aio=io_uring&#187; \u0438 \u043d\u0430\u0445\u043e\u0436\u0434\u0435\u043d\u0438\u0438 \u0441\u0438\u0441\u0442\u0435\u043c\u044b \u0432 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0438 \u043f\u0440\u043e\u0441\u0442\u043e\u044f (idle). \u041f\u0440\u043e\u0431\u043b\u0435\u043c\u0430 \u043f\u0440\u043e\u044f\u0432\u043b\u044f\u043b\u0430\u0441\u044c \u0438\u0437-\u0437\u0430 \u043f\u0435\u0440\u0435\u0432\u043e\u0434\u0430 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u0438 ppoll() \u0432 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0438 \u0441\u043d\u0430 \u0441 \u0442\u0430\u0439\u043c\u0430\u0443\u0442\u043e\u043c 499 [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":8,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[702],"tags":[],"class_list":["post-161903","post","type-post","status-publish","format-standard","hentry","category-news"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.2 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u0419\u0435\u043d\u0441 \u042d\u043a\u0441\u0431\u043e (Jens Axboe), \u0441\u043e\u0437\u0434\u0430\u0442\u0435\u043b\u044c io_uring \u0438 \u043f\u043b\u0430\u043d\u0438\u0440\u043e\u0432\u0449\u0438\u043a\u043e\u0432 \u0432\u0432\u043e\u0434\u0430\/\u0432\u044b\u0432\u043e\u0434\u0430 CFQ, Deadline \u0438 Noop, \u043f\u0440\u0435\u0434\u043b\u043e\u0436\u0438\u043b \u0434\u043b\u044f \u0432\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u044f \u0432 \u043a\u043e\u0434\u043e\u0432\u0443\u044e \u0431\u0430\u0437\u0443 \u044d\u043c\u0443\u043b\u044f\u0442\u043e\u0440\u0430 QEMU \u043f\u0430\u0442\u0447, \u0432 50-80 \u0440\u0430\u0437 \u0441\u043e\u043a\u0440\u0430\u0449\u0430\u044e\u0449\u0438\u0439 \u0437\u0430\u0434\u0435\u0440\u0436\u043a\u0438 \u043f\u0440\u0438 \u0440\u0430\u0431\u043e\u0442\u0435 fdmon (file.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Erik Peterson\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/fr\/blog\/news\/razrabotchik-io_uring-vyyavil-v-qemu-problemu-v-50-80-raz-zamedlyavshuyu-fdmon-v-rezhime-prostoya\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.2\" \/>\n\t\t<meta property=\"og:locale\" content=\"fr_FR\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u0420\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a io_uring \u0432\u044b\u044f\u0432\u0438\u043b \u0432 QEMU \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u0443, \u0432 50-80 \u0440\u0430\u0437 \u0437\u0430\u043c\u0435\u0434\u043b\u044f\u0432\u0448\u0443\u044e fdmon \u0432 \u0440\u0435\u0436\u0438\u043c\u0435 \u043f\u0440\u043e\u0441\u0442\u043e\u044f | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u0419\u0435\u043d\u0441 \u042d\u043a\u0441\u0431\u043e (Jens Axboe), \u0441\u043e\u0437\u0434\u0430\u0442\u0435\u043b\u044c io_uring \u0438 \u043f\u043b\u0430\u043d\u0438\u0440\u043e\u0432\u0449\u0438\u043a\u043e\u0432 \u0432\u0432\u043e\u0434\u0430\/\u0432\u044b\u0432\u043e\u0434\u0430 CFQ, Deadline \u0438 Noop, \u043f\u0440\u0435\u0434\u043b\u043e\u0436\u0438\u043b \u0434\u043b\u044f \u0432\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u044f \u0432 \u043a\u043e\u0434\u043e\u0432\u0443\u044e \u0431\u0430\u0437\u0443 \u044d\u043c\u0443\u043b\u044f\u0442\u043e\u0440\u0430 QEMU \u043f\u0430\u0442\u0447, \u0432 50-80 \u0440\u0430\u0437 \u0441\u043e\u043a\u0440\u0430\u0449\u0430\u044e\u0449\u0438\u0439 \u0437\u0430\u0434\u0435\u0440\u0436\u043a\u0438 \u043f\u0440\u0438 \u0440\u0430\u0431\u043e\u0442\u0435 fdmon (file.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/fr\/blog\/news\/razrabotchik-io_uring-vyyavil-v-qemu-problemu-v-50-80-raz-zamedlyavshuyu-fdmon-v-rezhime-prostoya\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2026-02-20T15:11:55+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2026-02-20T15:11:55+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47Le d\u00e9veloppeur de io_uring a identifi\u00e9 un probl\u00e8me dans QEMU qui ralentissait fdmon en mode repos de 50 \u00e0 80 fois | ProHoster","description":"Jens Axboe, cr\u00e9ateur de io_uring et des planificateurs d'entr\u00e9e\/sortie CFQ, Deadline et Noop, a propos\u00e9 pour inclusion dans la base de code de l'\u00e9mulateur QEMU un patch r\u00e9duisant les latences de 50 \u00e0 80 fois lors de l'ex\u00e9cution de fdmon (file.","canonical_url":"https:\/\/prohoster.info\/fr\/blog\/news\/razrabotchik-io_uring-vyyavil-v-qemu-problemu-v-50-80-raz-zamedlyavshuyu-fdmon-v-rezhime-prostoya","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"fr_FR","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u0420\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a io_uring \u0432\u044b\u044f\u0432\u0438\u043b \u0432 QEMU \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u0443, \u0432 50-80 \u0440\u0430\u0437 \u0437\u0430\u043c\u0435\u0434\u043b\u044f\u0432\u0448\u0443\u044e fdmon \u0432 \u0440\u0435\u0436\u0438\u043c\u0435 \u043f\u0440\u043e\u0441\u0442\u043e\u044f | ProHoster","og:description":"\u0419\u0435\u043d\u0441 \u042d\u043a\u0441\u0431\u043e (Jens Axboe), \u0441\u043e\u0437\u0434\u0430\u0442\u0435\u043b\u044c io_uring \u0438 \u043f\u043b\u0430\u043d\u0438\u0440\u043e\u0432\u0449\u0438\u043a\u043e\u0432 \u0432\u0432\u043e\u0434\u0430\/\u0432\u044b\u0432\u043e\u0434\u0430 CFQ, Deadline \u0438 Noop, \u043f\u0440\u0435\u0434\u043b\u043e\u0436\u0438\u043b \u0434\u043b\u044f \u0432\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u044f \u0432 \u043a\u043e\u0434\u043e\u0432\u0443\u044e \u0431\u0430\u0437\u0443 \u044d\u043c\u0443\u043b\u044f\u0442\u043e\u0440\u0430 QEMU \u043f\u0430\u0442\u0447, \u0432 50-80 \u0440\u0430\u0437 \u0441\u043e\u043a\u0440\u0430\u0449\u0430\u044e\u0449\u0438\u0439 \u0437\u0430\u0434\u0435\u0440\u0436\u043a\u0438 \u043f\u0440\u0438 \u0440\u0430\u0431\u043e\u0442\u0435 fdmon (file.","og:url":"https:\/\/prohoster.info\/fr\/blog\/news\/razrabotchik-io_uring-vyyavil-v-qemu-problemu-v-50-80-raz-zamedlyavshuyu-fdmon-v-rezhime-prostoya","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2026-02-20T15:11:55+00:00","article:modified_time":"2026-02-20T15:11:55+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"161903","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":"default","schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":"2026-02-20 15:12:29","breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2026-02-20 15:11:55","updated":"2026-02-20 15:12:29","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/posts\/161903","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/users\/8"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/comments?post=161903"}],"version-history":[{"count":1,"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/posts\/161903\/revisions"}],"predecessor-version":[{"id":164173,"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/posts\/161903\/revisions\/164173"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/media?parent=161903"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/categories?post=161903"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/tags?post=161903"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}