bazhenovc
> Полный пейпр называется GCN_Architecture_whitepaper.pdf
Полистал я его, все как в обычном SIMD. Единственно, иногда происходит перекладывание части работы на скалярный юнит, но я сомневаюсь, что это даст заметный выигрыш.
FROL
> Из этого предложения следует всего лишь что у них размер warp-а стал равным 16 а не 64.
Не, там физических ALU 16, но обрабатывают они все равно пачками по 64.
Так что, у NV варп 32, у AMD -- 64, а у CPU -- 8, принципиальной разницы нету :)
FROL
Ну а что тогда означает фраза ", but each can be working on a separate wavefront."?
> А это по-моему вообще не о том.
Как не о том, это один абзац :)
bazhenovc
> Ну а что тогда означает фраза ", but each can be working on a separate wavefront."?
Это они про то, что там 4 SIMD юнита и каждый из них может работать со своим варпом.
}:+()___ [Smile]
Нууу? И что это даёт?
StiX
> Нормальные это какие? В АМД 7000 нормальные?
> З.Ы. Прям как innuendo заговорил.
Присоединяюсь :):):) Конкретно, для чего хочется делать бранчи в шейдерах ?
}:+()___ [Smile]
> Так что, у NV варп 32, у AMD -- 64,
Нет. У АМД уже очень давно варп - 16. они этим ещё очень хвастались, могу дать пейпр.
> Полистал я его, все как в обычном SIMD.
Полистал и нихрена не понял:). Возьми и внимательно перечитай, там очень много интересного.
innuendo
> Конкретно, для чего хочется делать бранчи в шейдерах ?
Для общих вычислений. АМД рвал в этом плане НВ из-за меньшего размера варпа, теперь АМД будет рвать НВ по причинам, которые я описал выше.
bazhenovc
> Для общих вычислений.
Угу. А по обычным шейдерам ?:)
innuendo
> А по обычным шейдерам ?:)
Материалы в DS?
bazhenovc
> > А по обычным шейдерам ?:)
> Материалы в DS?
Тоже вариант :) Есть претензии по этому пункту ?
innuendo
> Есть претензии по этому пункту ?
Это собеседование?:)
bazhenovc
> > Есть претензии по этому пункту ?
> Это собеседование?:)
На собеседованиях такое не спрашивают ...
innuendo
Ну претензии к динбранчам на НВ я высказал в #37
bazhenovc
> Ну претензии к динбранчам на НВ я высказал в #37
Понятно. Хотелось бы не на картинках, а на конкретных шейдерных примерах
Как думаете 650ti нормальная видяха, или уже пора менять?
innuendo
DynBranch.7z
Небольшой бенч. Рисуется квад на разрешении 1920х1080, шейдер вот:
uniform sampler2D tex; in vec2 frag_texcoord; layout (location = 0) out vec4 color; void main( void) { color = texture( tex, frag_texcoord); int frag_x = int( gl_FragCoord.x); int frag_y = int( gl_FragCoord.y); if ( ( frag_x % 3) == 0) { for ( int i = 0; i < 1000; i++) color *= texture( tex, frag_texcoord + dFdx( gl_FragCoord.xy)); } else if ( ( frag_y % 4) == 0) { for ( int i = 0; i < 1000; i++) color *= texture( tex, frag_texcoord + dFdy( gl_FragCoord.xy)); } }
Если убрать второй бранч, ФПС поднимается ровно в два раза. Тестил на nvidia, завтра смогу выложить результаты для GCN :)
Тема в архиве.