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.


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
