Соңғы түйінді сөздің С++ бағдарламаларының өнімділігіне әсерін талдау

Бенджамин Саммертон, PSRayTracing сәулелік бақылау жүйесінің авторы, C++ кодында C++11 стандартында пайда болған «соңғы» кілт сөзін қолданудың қолданбаның өнімділігіне әсерін талдады. Тестілеудің себебі Интернетте «қорытындыны» пайдалану өнімділікті жақсартатыны туралы мәлімдемелер болды, олар өзгерістердің нәтижелерін көрсетпестен құндылық пайымдауларымен шектелді.

Бенджаминнің тестілеуі «соңғы» пайдалану кезінде өнімділік компиляторға өте тәуелді екенін көрсетті. GCC-де құрастыру кезінде өнімділік айтарлықтай жағдайларда өсті, бірақ Clang және MSVC-де құрастыру кезінде өнімділік көп жағдайда төмендеді және айтарлықтай төмендеді. Сонымен қатар, компилятордан басқа, платформа үлкен әсер етті, мысалы, Apple M9 процессоры бар жүйеге қарағанда, AMD Ryzen 6900 1HX процессоры бар жүйеде өнімділіктің төмендеуі байқалды.

Соңғы түйінді сөздің С++ бағдарламаларының өнімділігіне әсерін талдау
Соңғы түйінді сөздің С++ бағдарламаларының өнімділігіне әсерін талдау

Мысалы, AMD Ryzen 9 6900HX жүйесінде Ubuntu 23.10 қазанда Clang-те құрастыру кезінде сынақтардың 90%-ы «соңғы» мәнді пайдаланған кезде кем дегенде 5%-ға баяулауды көрсетті, бірақ сынақтардың 2.5%-ы кем дегенде 5%-ға жылдамдықты көрсетті. GCC үшін сынақтардың 0.9%-ында 5%-ға баяулау, ал жағдайлардың 15.8%-ында 5%-ға жылдамдықтың артуы байқалды. MSVC-де сынақтардың 26.2%-ында 5%-ға баяулау, ал 13.3%-да 5%-ға жылдамдықтың артуы байқалды. Зерттеу авторы «соңғы» мәнді пайдаланудан аулақ болу керек деген қорытындыға келді.

Ақпарат көзі: opennet.ru

DDoS қорғауы бар сайттар үшін сенімді хостинг, VPS VDS серверлерін сатып алыңыз 🔥 DDoS қорғанысы, VPS VDS серверлері бар сенімді веб-сайт хостингін сатып алыңыз | ProHoster