LINUX.ORG.RU

Бутылочные горлышки в _архитектурах_ видеокарт?

 


0

1

Возьмем для примера сравнение http://gpu.userbenchmark.com/Compare/AMD-RX-550-vs-Nvidia-GTX-950/3925vs3510

Можно заметить выигрыш скорости на одном показателе в 2 раза, когда как другой даже меньше на 1%, другие же показатели, тоже, относительно «Gravity» разнятся по скорости в 2 раза!
Это что за разбалансировка производительности между картами такая? Будет ли «Splatting» в случае GTX 950 бутылочным горлышком? Или это наоборот, RX 550 так не сбалансирована? Как я понимаю, на баланс этих показателей и отсутствие бутылочных горлышек влияет количество шейдерных процессоров, блоков текстур, растеризации, пропускная способность памяти, частоты и т.д.

Так в каких случаях имеют место быть бутылочные горлышки, а каких - кривая архитектура?

Это амуде. У них вечно по сырым характеристикам нагиб хуанга, а в реальных приложухах пук, кроме маняйнинга. Очевидно разрабатывают карты сугубо под майнинг.

anonymous
()
Ответ на: комментарий от anonymous

Между картами самих AMD и Nvidia тоже есть такие чудеса, вопрос - где не доложили? Или наоборот, там переложили, а здесь - нормально

Quasar-Napilnik_CPY
() автор топика

Может причина в скорости nvidia в ряде тестов в этом: https://www.anandtech.com/show/10325/the-nvidia-geforce-gtx-1080-and-1070-fou... Исходя из написанного, следует, что если данные компрессии не подлежат, то преимуществ не будет, значит в других синтетических тестах результаты резко упадут.

ixbt.com, anandtech.com любят всякие теоретические материалы писать во время релизов новых чипов.

Aber ★★★★★
()

Вряд ли кто-то сможет об этом рассказать. Скотинку, разработчика AMD, забанили, а остальные диванные теоретики.

kaaa
()

если данные компрессии не подлежат

Компрессия есть и у AMD и уже несколько поколений.

devl547 ★★★★★
()

Так в каких случаях имеют место быть бутылочные горлышки, а каких - кривая архитектура?

Для одних задач может быть важно только количество FLOPS-ов, для вторых может быть важна только пропускная способность, для третьих может быть важно количества кеша L2, для четвертых может быть важно количество регистров и таких мелочей куча, и на каждый алгоритм эти мелочи вносят разное влияние. Поэтому и выходит что одни видеокарты в чем-то лучше/хуже так как разработчики посчитали что вот тут лучше урезать вот-это и вместо этого добавить вот-это.

V1KT0P ★★
()
Ответ на: комментарий от V1KT0P

Это «игровые» чипы. Приоритет архитектуры (т.е. «обрезка» старшей) здесь Unreal Engine

Quasar-Napilnik_CPY
() автор топика
Ответ на: комментарий от Ford_Focus

слишком разные архитектуры - под что приложение заточат, то и будет «тащить»

Игроделы уже давно работают только с парой-тройкой готовых движков

Quasar-Napilnik_CPY
() автор топика
Ответ на: комментарий от Quasar-Napilnik_CPY

Игроделы уже давно работают только с парой-тройкой готовых движков

Вот только не все умеют ими пользоваться. Это особенно заметно когда играешь в игру с охрененной графикой и стабильными 60fps, а затем запускаешь игру с графикой средней паршивости и имеешь 35 fps в лучшем случае.

V1KT0P ★★
()
Ответ на: комментарий от Quasar-Napilnik_CPY

Нет, просто разработчики упарывают вещества, вместо того чтобы проанализировать что нужно реальным приложениям. Фанаты и так схавают.

anonymous
()
Ответ на: комментарий от Quasar-Napilnik_CPY

Хочешь сказать следствие разбалансировки - оптимизация под одну конкретную игру?

Не могу вспомнить и нагуглить статью, читал как сторонний человек написал патч на ассемблере для игры который уменьшил потребления памяти и ускорил ее работу. Впоследствии разработчики выкатили сами патч который оказался намного хуже того что сделал сторонний человек, плюс поломали возможность применения этого патча на новой версии.
Недавно смотрел обзор Crysis где описывались разные фишки движка, и одна из вещей которая меня поразила так это то что текстуры многих поверхностей были просто невероятно убоги но к ним применялись разные шейдеры которые в итоге делали текстуры на вид отличными.
Тут дело не в оптимизации под конкретную игру, а как реализованы конкретные графические фишки игры. И как они вместе рендерятся.

V1KT0P ★★
()
Последнее исправление: V1KT0P (всего исправлений: 1)
Ответ на: комментарий от V1KT0P

Еще можно понять, если Nvidia нарастит шейдерных процессоров сверх меры в устоявшемся балансе производительности между компонентами архитектуры для PhysX (и то, дела минувших дней), так как на ATi этого не завезли, в остальном же смысла особого не имеет, спасибо конечно, если это именно наращивание чего-то без создания бутылочного горлышка

Quasar-Napilnik_CPY
() автор топика
Ответ на: комментарий от anonymous

Вот возьмем к примеру 8800 GT, которая продержалась гораздо дольше своих современников из лагеря ATi, как раз из-за правильного баланса архитектуры. Но что помешало ATi не наращивать производительность там, где она не нужна, да еще и себе в убыток?

Quasar-Napilnik_CPY
() автор топика
Ответ на: комментарий от Quasar-Napilnik_CPY

direct compute - не, не слышали? да, в нвидию asyncronous computing без просадки производительности до сих пор не завезли, в то время как в амд он с первых GCN.

туда же fp64 (у нвидии с этим в игровых картах все очень и очень печально).

NiTr0 ★★★★★
()
Ответ на: комментарий от NiTr0

direct compute - не, не слышали?

У сабжевых карт приоритет - игровые движки, они не тягаются за первенство в вычислениях, для этого с обоих сторон другие продукты есть. И потребителю важно только это, переплачивать за ненужные фичи люди обычно не любят, да и конторы не прочь «лишнее» подрезать, чтобы конкуренцию со своими старшими линейками не создавать

Quasar-Napilnik_CPY
() автор топика
Ответ на: комментарий от Quasar-Napilnik_CPY

Еще можно понять, если Nvidia нарастит шейдерных процессоров сверх меры в устоявшемся балансе

Кстати еще разница может появляться из-за ISA процессоров(при чем не только из-за ISA но и за ее конкретной реализацией) которые используются в GPU, они у AMD и Nvidia явно отличаются ведь никаких ограничений у них нет, что хотят то и делают. Недавно Nvidia сказали что выкинут свой велосипед и запилят RISC-V. В общем очень много мелочей которые в сумме дают значительный эффект, плюс еще есть драйверы, по идеи при переходе на Vulkan влияние драйвером снизится или по крайней мере перестанет быть узким/проблемным местом.

V1KT0P ★★
()
Ответ на: комментарий от V1KT0P

Знаю только, что у Nvidia блоки растеризации в 2-3 раза мощнее AMD, а так в принципе устоялся какой-то паритет в количественном смысле

Quasar-Napilnik_CPY
() автор топика
Ответ на: комментарий от Quasar-Napilnik_CPY

Знаю только, что у Nvidia блоки растеризации в 2-3 раза мощнее AMD, а так в принципе устоялся какой-то паритет в количественном смысле

Еще вот RX 550 имеет 512KB L2 Cache, а GTX 950 имеет 1024KB L2 Cache. Это не может не сказаться на некоторых алгоритмах.

V1KT0P ★★
()
Ответ на: комментарий от V1KT0P

Вот именно, чего-то где-то может быть больше, в то время как другого - меньше. Это и вызывает дисбаланс. Тут-то и встает главный вопрос: где баланс? Может это и есть баланс, хотя, вроде как, Nvidia показывает себя лучше именно в играх по сходной цене, значит, игровая архитектура (то, что нам нужно) лучше у нее, и ориентироваться будем по ней, но зачем тогда AMD выпускать в этом сегменте дисбалансную RX 550? (или наоборот) В этом есть какая-то логика?

Quasar-Napilnik_CPY
() автор топика
Ответ на: комментарий от Quasar-Napilnik_CPY

Может это и есть баланс, хотя, вроде как, Nvidia показывает себя лучше именно в играх по сходной цене

Я не в курсе про цены на GTX 950 на момент выхода RX 560 но если они быди примерно одинаковы как указано на userbenchmark то разброс не такой уж и большой между RX 560 и GTX 950: http://gpu.userbenchmark.com/Compare/AMD-RX-560-vs-Nvidia-GTX-950/3926vs3510

V1KT0P ★★
()
Ответ на: комментарий от V1KT0P

разброс не такой уж и большой между RX 560 и GTX 950

Это только порождает новые вопросы. Если в RX 560 уже «все нормально» с балансировкой архитектуры, тогда получается, что RX 550 - натуральный отброс, высер, что-ли?

Quasar-Napilnik_CPY
() автор топика
Ответ на: комментарий от Quasar-Napilnik_CPY

тогда получается, что RX 550 - натуральный отброс, высер, что-ли?

Если учесть что официальная разница стоимости между ними всего 20$, то можно и так сказать.

V1KT0P ★★
()
Ответ на: комментарий от Quasar-Napilnik_CPY

зачем тогда AMD выпускать в этом сегменте дисбалансную RX 550

Так rx550 выставлен вроде как против 1030 и 750TI. GTX950 это ж GTX1050 (по количеству rop'ов и шейдерных процессоров).

anonymous
()
Ответ на: комментарий от anonymous

Так rx550 выставлен вроде как против 1030 и 750TI. GTX950 это ж GTX1050 (по количеству rop'ов и шейдерных процессоров).

Так я не про производительность, а баланс.
Например, одна карта может быть производительнее так:

Попугай №1 +25%
Попугай №2 +40%
Попугай №3 +110%
Попугай №4 +15%

А другая, так:

Попугай №1 +40%
Попугай №2 +50%
Попугай №3 +35%
Попугай №4 +55%

Суммарно, производительность первой может выходить больше, но среди показателей могут затесаться бутылочные горлышки, и получается высер, а не видеокарта, хотя _в_сумме_ производительность-то больше!

Quasar-Napilnik_CPY
() автор топика
Ответ на: комментарий от Quasar-Napilnik_CPY

не наблюдаю подобного. да и в рамках одного и того же движка можно получить абсолютно разные результаты

Ford_Focus ★★★★★
()
Ответ на: комментарий от Ford_Focus

Существует устоявшийся баланс между производительностью компонентов архитектуры. Кто в здравом уме будет писать игры, загружающие нормально только пару дисбалансных уродцев, изрыгнутых той или иной конторой? Текущий момент уникален, мы можем(?) прямо ориентироваться на баланс HD 7850, но это не точно

Quasar-Napilnik_CPY
() автор топика
Ответ на: комментарий от Quasar-Napilnik_CPY

Существует устоявшийся баланс между производительностью компонентов архитектуры.

Если вдруг разработчики игр начнут использовать алгоритмы требующие изменить баланс для повышения производительности, то разработчики видеокарт вынуждены будут изменить баланс. А там снова появятся другие алгоритмы требующие другой баланс и все повторится снова.

V1KT0P ★★
()

в случае GTX 950 бутылочным горлышком

1. «неполный рендеринг FBO» пруф https://www.khronos.org/opengl/wiki/Common_Mistakes#Render_To_Texture
демо проблемы https://www.shadertoy.com/view/4tcyz7 (позиция шара ставиться на Желтой половине мышкой)
Желтая половина-Mipmap фильтр текстур, Зеленая половина- Nearest
из за неполной генерации фреймбуфера в Nearest(как описано по ссылке на кронос.орг) шар проваливается(так как расчеты встречают 1 или 0 значения пустых пикселей)
даже в моей финальной версии(с измененной точностью и правкой алоритма) всеравно шар «застревает» https://danilw.github.io/GLSL-howto/goglsl/goglsl.html (из за этого также на Нвидии при переходе в фулскрин идет дикий лаг(особенно на линуксе))

2. особенность реализации некоторых функций(на картах каждой модели по разному), к примеру https://danilw.github.io/GLSL-howto/vbo/vbo.html при значении 10000+ на Нвидии 7xx и 9xx серии будет зависать драйвер(на всех других картах включая встроенный интел даже лагов не будет), причину описал в этом посте Зависает ли у вас драйвер (комментарий)

3. реализация for/while циклов в GLSL очень разная от версии к версии дров/компилятора GLSL/модели карты, очень сильно влияет на производительность
пример http://www.ibiblio.org/e-notes/webgl/gpu/fluids16.htm или сразу 2к версия http://www.ibiblio.org/e-notes/webgl/gpu/fluid2k.htm
производительность этого алгоритма буквально Уникальная для каждой серии карт(всех производителей), она может быть 200фпс на радеоне и слабом интеле, когда на нвидии менее 10фпс, и наоборот

Игроделы уже давно работают только с парой-тройкой готовых движков

готовые движки это просто набор логики для «обхода фич реализаций» для каждой из видео-карт/моделей, ничего магического или заговоренного в них нет

банальный пример, https://developer.mozilla.org/en-US/docs/Web/API/WebGL_API/Tutorial/Using_tex...
цитата

WebGL1 can only use non power of 2 textures with filtering set to NEAREST or LINEAR and it can not generate a mipmap for them. Their wrapping mode must also be set to CLAMP_TO_EDGE. On the other hand if the texture is a power of 2 in both dimensions then WebGL can do higher quality filtering, it can use mipmap, and it can set the wrapping mode to REPEAT or MIRRORED_REPEAT.

вот тебе и фича движка, в чем логика этой фичи мне не известно
но потом на этом «движке» появляюся нисчем несовместимые решения, и переписывая старый код на новый движок(webgl2) девелоперы страдают
и старый код начинает упорно лагать потому что эта фича была «заточена» под старые драйвера
(или как я описал выше из за особенности нвидии вместо VBO девелоперы делают for() цикл отрисовки треугольников, и все кроме нвидии начинают тормозить)

вот так получаются Юнити игры в 2018 которые тормозят со 100% загрузкой системы(там тоже много классных фич)

missxu
()
Ответ на: комментарий от Quasar-Napilnik_CPY

разбалансированна

что?

для «поиграть на макс графене в ГТА5» очевидно 950 нвидиа, без вариантов
если жариться при 60+С в комнате летом, то определнно Радеон

все видеокарты на сегодня одинаково слабые(слишком слабые(8-ми класник на бумажке может расчитать значения любого «шейдера» быстрее видеокарты, не говоря уже о взрослых, люди слишком бысто считают в уме по сравнению с видеокартами))

«много памяти»-те 2/4/6/8 ГБ что есть сегодня в видеокартах, не больше тех знаменитых 640КБ
одна текстура 1000x1000 пикселей(очевидно это меньше колеса мышины по реальным размерам) может занимать Сотни мегабайт в видеокарте
плюс каждый из шейдеров минимум 100мб(обычные игровые шейдеры под 300 каждый, их 5-10 на всею сцену на экране не больше)

даже терабайта на видеокарте-хватит на качественную «фотореалистичную» прорисовку одной комнатки(чтоб при приблежении камеры небыло квадратиков как сейчас)
и через 5-10 лет выйдут видеокарты с терабайтами, как средний сегмент, тыж не скажешь тогда что твоих 2/4/6/8 ГБ «более чем достаточно»
забыл еще про 4к моники, для 4к моника надо несколько ГБ видеопамяти на рендер одной странице в веббраузере

missxu
()
Ответ на: комментарий от missxu

что?

Очевидно, что за эталон баланса производительности между компонентами архитектуры сейчас выступает HD 7850. Никто не будет использовать преимущество другой видеокарты, достигаемое дисбалансом (не пропорциональным увеличением производительности компонента архитектуры по отношению к балансу на таковом у HD 7850) Cores, TMU, ROP, Mem B/W, L2, FP32/64...

Quasar-Napilnik_CPY
() автор топика
Ответ на: комментарий от Quasar-Napilnik_CPY

Никто не будет использовать преимущество другой видеокарты

То-то периодически разработчики видеокарт сотрудничают(для рекламы своих видеокарт) с разработчиками игр чтоб они именно следующий проект заточили именно под их последние видеокарты.

V1KT0P ★★
()
Ответ на: комментарий от V1KT0P

Что-то вроде игр на PhysX, «список позора» вывешен на сайте Nvidia. Но это частный случай. Сейчас конечно есть игры, тяготеющие к картам конкретного производителя, но это скорее софт, т.к. «работать лучше» они могут на разных архитектурах конторы, и с разным балансом. Равняться на них не стоит, тут итак все ясно

Quasar-Napilnik_CPY
() автор топика
Ответ на: комментарий от Quasar-Napilnik_CPY

Что-то вроде игр на PhysX, «список позора» вывешен на сайте Nvidia

ты отстал на лет 10 походу(физикс давно не имеет привязки аппаратной, и он умер давно уже) GLSL полностью вытеснил физикс

Очевидно, что за эталон баланса производительности между компонентами архитектуры сейчас выступает HD 7850. Никто не будет использовать преимущество другой видеокарты, достигаемое дисбалансом (не пропорциональным увеличением производительности компонента архитектуры по отношению к балансу на таковом у HD 7850) Cores, TMU, ROP, Mem B/W, L2, FP32/64...

ты видимо не понял ни слова что я написал, извини
попробую перефраировать- «бланса просзводительности» нет, как и ориентира, каждая серия карт (Nvidia 700 Nvidia 900 Nvidia 1000 тдтп) имеет свой уникальный драйвер и реализацию алгоритмов, под последнюю модель и делают игры, сейчас это Nvidia 1000 серия
с чего ты привел HD 7850 я не знаю
никто не тратит время на «поддержку» старья, достаточно состояния «работает»

missxu
()
Ответ на: комментарий от missxu

«бланса просзводительности» нет, как и ориентира

http://gpu.userbenchmark.com/Compare/AMD-RX-550-vs-AMD-RX-560/3925vs3926

Почему в RX 560 значительно увеличители только Parallax (+75%) и Gravity (+90%) по отношению к RX 550? Не приведет ли это к дисбалансу производительности; не станут ли MRender (+11%) и Splatting (+8%) бутылочным горлышком? Вот я о чем.

с чего ты привел HD 7850 я не знаю

PS4

Quasar-Napilnik_CPY
() автор топика
Ответ на: комментарий от Quasar-Napilnik_CPY

В принципе это лютое дно, та же 750 в 2 раза дешевле и жрёт в 3 раза меньше электричества, при разнице -5% (в стоке я так понимаю). Хуанг просто не захотел в убыток себе чипы поставлять, вроде с тем вся история связана.

anonymous
()
Ответ на: комментарий от Quasar-Napilnik_CPY

не виже никакого баланса

как владелец HD7850 могу тебя заверить, что на 7850 никто не ориентируется. даже в Witcher 3 было что-то около 40 кадров, а это игра 2015 года. в wildlands и вовсе было 20-24 кадра. сегодня это карта чисто под HD-разрешение

Ford_Focus ★★★★★
()
Ответ на: комментарий от Ford_Focus

родилась на свет уже устаревшей, позорно не потянув 1080@60 в большинстве случаев

Разрабам до этого дела нет. У них есть платформа, с ней они и работают

Quasar-Napilnik_CPY
() автор топика
Ответ на: комментарий от Quasar-Napilnik_CPY

Так речь не о производительности.

Тогда я хз о чём речь.

С ней, кстати, связана интересная ситуация - если на момент выхода она тягалась с GTX660/GTX660Ti, то потом появились проекты, где она обходила GTX680, хотя не должна была этого делать вообще никак

Ford_Focus ★★★★★
()
Ответ на: комментарий от Ford_Focus

Тогда я хз о чём речь.

О балансе. На основе этого: http://gpu.userbenchmark.com/Compare/AMD-RX-550-vs-AMD-RX-560/3925vs3926

Где он лучше - в RX 550 или RX 560? И если в RX 560, почему определенные позиции, которые от RX 550 недалеко ушли, не станут бутылочным горлышком? Когда как в таком случае RX 550 их не имеет, а значит представляет собой лучшую архитектуру/баланс

Quasar-Napilnik_CPY
() автор топика
Ответ на: комментарий от Quasar-Napilnik_CPY

тебе на протяжении всего трэда несколько людей пытается объяснить, что бутылочное горлышко обычно не в железках, а в софте. что будешь нагружать, там и упрёшься.

Ford_Focus ★★★★★
()
Последнее исправление: Ford_Focus (всего исправлений: 1)
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.