Ariadne Conill, „Audacious“ muzikos grotuvo kūrėja, IRCv3 protokolo iniciatorė ir „Alpine“ saugumo komandos vadovė Linux, atliko tyrimą, siekdamas nustatyti, kiek galima optimizuoti programą „cat“, kuri išveda vieną ar daugiau failų į standartinį išvesties srautą. Siekiant pagerinti programos „cat“ našumą, Linux предложено два варианта оптимизаций, основанных на использовании системных вызовов sendfile и splice для прямого копирования данных между файловыми дескрипторами на уровне ядра без переключения контекста в пространство пользователя.
Bazinis diegimas, naudojant tradicinius skaitymo ir rašymo skambučius, vedančius į konteksto perjungimą, parodė 4 GB/s našumą, kai kopijuojamas 3.6 GB failas iš tmpfs. Sendfile pagrįsta parinktis padidino našumą iki 6.4 GB/s, o sujungimu pagrįsta parinktis padidino našumą iki 11.6 GB/s, t.y. pasirodė esąs daugiau nei 3 kartus greitesnis nei pradinė versija.
Šaltinis: opennet.ru
