io_uring సృష్టికర్త మరియు I/O షెడ్యూలర్లు CFQ, డెడ్లైన్ మరియు నూప్ సృష్టికర్త అయిన Jens Axboe, Linux కెర్నల్లో I/O ఆప్టిమైజేషన్తో తన ప్రయోగాలను కొనసాగించారు. ఈసారి, అతని దృష్టి BFQ మరియు mq-డెడ్లైన్ I/O షెడ్యూలర్లపైకి వచ్చింది, ఇది కనీసం హై-స్పీడ్ NVMe డ్రైవ్ల విషయంలో అడ్డంకిగా మారింది.
పరిస్థితి యొక్క అధ్యయనం చూపించినట్లుగా, I/O షెడ్యూలర్ సబ్సిస్టమ్ల యొక్క ఉపశీర్షిక పనితీరుకు ప్రధాన కారణాలలో ఒకటి పోటీ తాళాలతో సమస్యలు ("లాక్ కాంటెన్షన్", మరొక థ్రెడ్ ద్వారా లాక్ని పొందే ప్రయత్నం). డిస్పాచ్ యొక్క సీరియలైజేషన్ మరియు క్వెరీ ఇన్సర్షన్ వంటి లాక్లను ప్రాసెస్ చేసేటప్పుడు వివాదాన్ని తగ్గించే లక్ష్యంతో ఉన్న చర్యలకు ధన్యవాదాలు, షెడ్యూలర్ల వేగం అనేక సందర్భాల్లో (IOPSలో) గణనీయంగా పెరిగింది.
ఫియో యుటిలిటీతో BFQ షెడ్యూలర్ని పరీక్షిస్తున్నప్పుడు, పనితీరు 567K నుండి 1551K IOPSకి పెరిగింది మరియు లాక్ వివాదం 96% నుండి 30%కి తగ్గింది. mq-డెడ్లైన్ విషయంలో, NVMe డ్రైవ్ను ఉపయోగిస్తున్నప్పుడు ప్రతిపాదిత ప్యాచ్లను వర్తింపజేసిన తర్వాత పనితీరు సెకనుకు 1070K నుండి 2560K ఇన్పుట్/అవుట్పుట్ ఆపరేషన్లకు (IOPS) పెరిగింది మరియు లాక్ వివాదం 94% నుండి 23%కి తగ్గింది.
మూలం: opennet.ru