MÀrksÔna final mÔju C++ programmide jÔudlusele

Benjamin Summerton, PSRayTracing-i kiirteekonstruktsiooni autor, analĂŒĂŒsis, kuidas koodis C++ keeles mĂ€rksĂ”na «final» kasutamine, mis ilmus C++11 standardisse, mĂ”jutab rakenduste jĂ”udlust. Testimise pĂ”hjuseks olid internetis levivad vĂ€ited, et «final» kasutamine parandab jĂ”udlust, mis olid piiratud hinnanguliste vĂ€idetega ilma muudatuste tulemusi nĂ€itamata.

Benjamin Summertoni lĂ€biviidud testid nĂ€itasid, et jĂ”udlus «final» kasutamisel sĂ”ltub tugevalt kompilaatorist. GCC-s toimetades tĂ”usis jĂ”udlus tĂ”esti mĂ€rkimisvÀÀrselt paljudes juhtudel, kuid Clangis ja MSVC-s langes jĂ”udlus enamikus juhtudel, ja veelgi rohkem. Lisaks kompilaatorile avaldas platvorm samuti suurt mĂ”ju; nĂ€iteks avaldus jĂ”udluse langus rohkem AMD Ryzen 9 6900HX protsessoriga sĂŒsteemides kui Apple M1 protsessoriga sĂŒsteemides.

MÀrksÔna final mÔju C++ programmide jÔudlusele
MÀrksÔna final mÔju C++ programmide jÔudlusele

NĂ€iteks AMD Ryzen 9 6900HX sĂŒsteemis Ubuntu 23.10, Clang'i kasutamisel, oli 90% testidest "final" kasutamise korral vĂ€hemalt 5% aeglustumist, kuid 2,5% juhtudel fikseeriti vĂ€hemalt 5% kiirusetĂ”us. GCC puhul fikseeriti 5% aeglustumist 0,9% juhtudel ja kiirusetĂ”us 5% -l 15,8% juhtudest. MSVC ajal oli 5% aeglustumist 26,2% testidest ning 5% kiirusetĂ”us 13,3% testidest. Uuringu autori jĂ€reldus oli vĂ€ltida "final" kasutamist.

Allikas: opennet.ru

Osta usaldusvÀÀrne veebihosting DDoS kaitsega, VPS VDS serverid đŸ”„ Osta usaldusvÀÀrne veebihosting DDoS kaitsega, VPS VDS serverid | ProHoster