Ariadne Conill, creatrice del lettore musicale Audacious, promotrice dello sviluppo del protocollo IRCv3 e leader del team di sicurezza di Alpine Linux, ha condotto uno studio su quanto si possa ottimizzare l'utilità cat, che gestisce l'output su standard output di uno o più file. Per migliorare le prestazioni di cat su Linux sono state proposte due opzioni di ottimizzazione, basate sull'uso delle chiamate di sistema sendfile e splice per la copia diretta dei dati tra descrittori di file a livello di kernel senza cambiare il contesto nello spazio utente.
L'implementazione di base, che utilizza le tradizionali chiamate read e write, comportando un cambio di contesto, durante la copia di un file da 4GB da tmpfs ha mostrato prestazioni di 3,6 GB/s. L'opzione basata su sendfile ha aumentato le prestazioni a 6,4 GB/s, mentre l'opzione basata su splice ha raggiunto 11,6 GB/s, risultando quindi più veloce della versione originale di oltre 3 volte.
Fonte: opennet.ru
