Терафлопсы - очередные красивые, но бесполезные цифры
Хочется разобрать ещё один интересный маркетинговый ход. Я думаю, многие замечали, что перед выходом новой консоли или видеокарты многие начинают говорить про терафлопсы, сравнивать их как показатель мощности и выбирать по ним товар. Sony, Microsoft, Nvidia и AMD любят убеждать этими цифрами. Согласитесь - легко думать, что чем больше циферок, тем красивее будет графика и тем ровнее выше должно быть FPS в играх. Но ведь бывает, что видеокарта с большим числом терафлопсов иногда выдает в играх меньше кадров, чем ее более скромный конкурент. Как думаете, почему?
Давайте посмотрим чуть глубже маркетинга и разберёмся в этих Терафлопсах.
Что такое терафлопс на самом деле
Если говорить простым языком, то 1 Терафлопс (обозначение - TFLOPS) означает, что графический чип может выполнить ровно 1 триллион простейших математических операций с дробными числами за одну секунду. Звучит довольно сильно, правда? Но проблема кроется в том, как именно эти цифры считаются. Чаще всего компании вычисляют терафлопсы по формуле - берут стандартную частоту чипа, умножают на количество вычислительных блоков и запускают простейший синтетический тест, например перемножение пустых матриц. Выходит, что видеокарта работает в изолированных идеальных условиях, где ей ничего не мешает. В реальном мире, к сожалению, так не бывает. Процессор видеокарты постоянно отвлекается - ждет данные от центрального процессора, упирается в узкую шину памяти или сбрасывает частоты из-за нагрева. В итоге в играх чип обычно использует от силы половину своих заявленных терафлопсов.
Для тех кто вдруг не понял - аналогия с автомобилем
Представьте, что автодилеры оценивают насколько машина хорошая только по максимальным оборотам двигателя. Вот обороты в этой аналогии и есть терафлопсы. Но вам не говорят, сколько машина весит, какая у нее коробка передач и насколько лысая резина. Гоночный автомобиль на 8000 оборотах улетит в космос, тогда как многотонный груженый самосвал на тех же 8000 оборотах будет кое-как тащиться в гору. Архитектура чипа - это сама машина целиком, а терафлопсы - лишь одна из многих характеристик, в данном сравнении - обороты мотора в идеальных условиях.
Нельзя сравнивать эти цифры в лоб в принципиально разных архитектурах
Из-за того, что некоторые люди смотрят только на терафлопсы, часто совершаются две грубые ошибки:
1. Сравнение консоли и ПК. У PlayStation 5 на бумаге около 10 TFLOPS, а у современной видеокарты среднего уровня может быть 20-22 TFLOPS. Значит, ПК будет в два раза мощнее? Нет конечно. На консолях игры очень часто оптимизируют под конкретное железо напрямую, выжимая из этих 10 терафлопс да и самого чипа максимум, а на ПК немалая часть мощности уходит в никуда из-за кривых портов, плохой оптимизации и костылей Windows.
2. Сравнение старых и новых видеокарт. Примерами будут старый флагман GTX 1080 Ti и более новая бюджетная карта RTX 2060 Super. По характеристикам 1080 Ti выдает 11,3 TFLOPS, а 2060 Super всего 7,2 TFLOPS. То есть заявленная мощность старой карты выше, чем у новой более чем в полтора раза. Но при запуске игр 2060 Super будет показывать примерно столько же, а иногда даже больше FPS, чем старый флагман. Дело тут в том, что архитектура Pascal в 1080 Ti не поддерживает одновременное выполнение целочисленных инструкций и вычислений с плавающей запятой, они обрабатываются по очереди, из-за чего часть блоков простаивает. Архитектура Turing в 2060 Super умеет выполнять эти вычисления параллельно, что и повышает производительность каждого блока в играх.
Итог
Если обобщить, то терафлопсы - это очередная красивая цифра для рекламы, но фактически бесполезный показатель для геймера. Реальная производительность всегда складывается из архитектуры чипа, объема кэша, пропускной способности памяти и, самое главное, оптимизации самой игры. Не надо смотреть на один показатель и исключительно по нему делать выводы.