Наверное, многие "продвинутые пользователи", купив новый ПК, ноутбук или "трансформер", одним из первых дел оценивают его производительность. И для этого есть немало тестов, основанных как на специально созданных алгоритмах (синтетические тесты), так и на основе уже имеющихся задач (тест 7z, тесты, встроенные в игры). Но, запустив тест на компьютере, пользователь чаще всего получает результат заметно ниже того, который есть в списке для практически аналогичной системе. Более того, получив относительно неплохой результат, пользователь зачастую не может его повторить на том же самом "железе", казалось бы, в тех же самых условиях. Что же происходит?
Те, кто знаком с компьютерной техникой не первое десятилетие, могут вспомнить, что раньше такого разброса не было. Нет, идеальных результатов, приведённых в рейтинге, тоже не всегда удавалось добиться без "оверклокинга", но если система выдавала, скажем, 1000 "попугаев", то она столько же и будет выдавать (ну, плюс-минус, скажем, от 990 до 1010, особенно если делать повторные запуски), пока что-то существенно не поменять - то ли оверклокинг сделать, то ли комплектующие сменить, то ли операционную систему заменить. В чём же причины разброса сейчас? Да, тем, кто хорошо знаком с современными процессорами, я, наверное, секрета не открою, но это не значит, что об этом не стоит говорить тем, кто только находится "на пути к продвинутому пользователю".
Итак, есть несколько причин заметного разброса результатов.
- Динамическая частота и троттлинг. Современные процессоры, начиная с самых ранних "Core i" у Intel и линейки Ryzen у AMD (не говоря уж о линейках мобильных процессоров), динамически меняют свою частоту исходя из целого ряда факторов (в том числе пресловутый режим Turbo, хотя можно вспомнить и более старый Cool'n'Quite у AMD). Работает компьютер без нагрузки? Давайте снизим частоту, незначительные фоновые задачи и так будут выполняться. А в это время тест как раз может начать запускаться. Тем временем система сообразила, что нагрузка выросла - надо вырастить частоту (причём по-разному в зависимости от того, загружен ли один поток, или же равномерно "забиты" все потоки). Подошли к критической температуре? Давайте снизим частоту, чтобы не было перегрева, и пусть там тесты "с ума сходят". А если этого вдруг не хватило или было сделано невовремя, то можно создать "простой" процессора на несколько тактов (десятков, сотен тактов) - тот самый "троттлинг", который все ругают. Как следствие, производительность системы будет сильно зависеть от системы охлаждения процессора, а также параметров внешней среды, возможностей циркуляции воздуха и т.п. Кошка мимо пробежала - и результат теста другой, не говоря уж о другом дне, когда батареи могут в комнате работать сильнее/слабее. Кстати, подобное можно встретить и в телефонах, да и у видеокарт тоже есть подобные подходы.
- Фоновые процессы операционной системы. Если DOS была однозадачной системой, то все версии Windows, не говоря уж об UNIX-подобных системах - многозадачные. Очевидно, что если запустить в фоне тест, а тем временем заниматься перекодированием видео в другом окне - результат будет совершенно другим, нежели если тест запустить как единственное "тяжеловесное" приложение. Раньше во время работы теста рекомендовали даже мышку не двигать, но эта рекомендация спорная - отключение экрана, а то и уход в сон, гораздо хуже незначительных прерываний по мыши, особенно сейчас, а не на каких-нибудь первых "пентиумах". А вот браузер с вкладками лучше закрыть, современные браузеры "тяжеловесные", а сайты норовят крутить фоном рекламу или выполнять ещё какие-то неочевидные действия. Но это ладно, тут всё на совести пользователя. Проблема ещё и в том, что сама операционная система имеет достаточно много "тяжеловесных" служб. То антивирус что-нибудь решит проверить (а что, тест - очень себе подозрительная активность), то индексирование файлов будет проводиться... И много ещё чего. Эти службы "тянутся" ещё с давних времён, и их легко отключить, а в "десятке" и тем более - в "одиннадцатке" хватает "очень важных" служб, постоянно работающих в фоне. Поэтому зачастую результаты под Windows 10-11 оказываются даже хуже, чем в Linux под эмулятором Wine.
- Оптимизация работы программ в кеше. Это касается очень простых тестов, появилось очень давно. Проявляется в том, что запуск простого теста во второй и последующие разы даёт существенно лучший результат, чем в первый раз. "Тяжёлые" тесты уже не умещаются в кеше, поэтому результат во второй раз может оказаться даже хуже: система охлаждения уже успеет прогреться, и процессор станет выдавать худшие результаты.
- Некоторое несоответствие данной и эталонной конфигурации. В эталонной конфигурации пишут процессор и/или видеокарту (в зависимости от вида теста), может быть - где-то "внизу" укажут память и операционную систему. А что там с системой охлаждения, с условиями внешней среды - как правило, остаётся "за кадром".