Kísérlet a macska segédprogram hatékonyságának javítására

Ariadne Conill, az Audacious zenelejátszó megalkotója, az IRCv3 protokoll kezdeményezője és az Alpine Linux biztonsági csapatának vezetője kutatást végzett a cat segédprogram optimalizálásával kapcsolatban, amely egy vagy több fájlt ad ki a szabványos kimeneti adatfolyamba. A cat teljesítményének javítása érdekében Linuxon két optimalizálást javasolunk, amelyek a sendfile és a splice rendszerhívások használatán alapulnak az adatok közvetlen másolására a fájlleírók között a kernel szintjén anélkül, hogy a környezet átváltana a felhasználói területre.

A kontextusváltáshoz vezető hagyományos olvasási és írási hívásokat használó alap implementáció 4 GB/s teljesítményt mutatott 3.6 GB-os fájl tmpfs-ből történő másolásakor. A sendfile alapú opció 6.4 GB/s-ra, a splice alapú opció pedig 11.6 GB/s-ra növelte a teljesítményt, i.e. több mint háromszor gyorsabbnak bizonyult, mint az eredeti verzió.

Forrás: opennet.ru

Hozzászólás