Yo te pwopoze yon aplikasyon fonksyon memchr pou nwayo Linux, kouri jiska 4 fwa pi vit

Yo te pwopoze yon seri plak ki gen yon aplikasyon optimize nan fonksyon memchr(), yo itilize pou chèche yon senbòl nan yon etalaj, pou enkli nan nwayo Linux la. Kontrèman ak ansyen vèsyon an, ki te itilize konparezon byte-pa-byte, aplikasyon an pwopoze a bati pran an kont itilizasyon konplè 64- ak 32-bit anrejistreman CPU. Olye pou yo bytes, konparezon an fèt lè l sèvi avèk mo machin, ki pèmèt omwen 4 bytes yo dwe konpare nan yon moman.

Lè w ap chèche nan gwo fisèl, nouvo opsyon an te vin apeprè 4 fwa pi vit pase ansyen an (pa egzanp, pou fisèl 1000 karaktè). Pou ti fisèl, efikasite nan nouvo aplikasyon an pa tèlman enpòtan, men li toujou pi wo konpare ak vèsyon orijinal la. Nan nwayo Linux la, gwosè fisèl trete nan memchr() rive nan 512 octets. Pwofi nan pèfòmans pou strings 512 byte, nan yon sitiyasyon kote karaktè rechèch la se nan fen fisèl la, se 20%.

Tès kernel 5.18 la ak nouvo opsyon "memchr()" pou achitekti 32-bit ak 64-bit pa t 'revele okenn pwoblèm. Pwofi an jeneral pèfòmans nan subsystems nwayo lè w ap itilize vèsyon optimize "memchr()" poko te evalye, ni fezabilite pou ranplase aplikasyon an te analize (nan kòd la nwayo, apèl nan fonksyon an memchr() rive 129 fwa. , ki enkli nan kòd chofè yo ak sistèm dosye).

Sous: opennet.ru

Add nouvo kòmantè