Войти
ПрограммированиеФорумГрафика

Metal API вопросы (3 стр)

Страницы: 1 2 3
#30
13:57, 12 июля 2021

/A\
game performance пробовал инструмент? там вроде наглядно рисуется какие енкодеры когда исполняются, кто с кем оверлапица и т.д.

#31
17:22, 12 июля 2021

kas
> game performance пробовал инструмент?
Еще не пробовал, зато разобрался со всеми этими счетчиками.
Там есть VS/FS/kernel occupancy, количество отсеченных примитивов, количество пикселей, скорость доступа к памяти и тд. Это более менее соответствует тому что я вижу в NSight, только в NSight все сразу видно, а тут надо долго копать.
Замер времени для каждого этапа показывает кто с кем пересекается, по крайней мере на ARM там достаточно точно работает.

roserg
> Напривер если workgroup = 40, то первая simd group вернет 32(потоки в первой группе вернут 32), а вторая 8.
Я делаю размер группы 1х1х1 и получаю threads_per_simdgroup == 32, там какой-то другой способ чтоб метал менял размер группы.

> threads_per_simdgroup вроде как работает только с A11 bionic
На ARM архитектуре работает только на A13, A14, M1, там требование GPUFamilyApple6 или GPUFamilyMac1.

#32
17:41, 12 июля 2021

/A\
А на CPU стороне используется
- (void)dispatchThreads:(MTLSize)threadsPerGrid
  threadsPerThreadgroup:(MTLSize)threadsPerThreadgroup;
или
- (void)dispatchThreadgroups:(MTLSize)threadgroupsPerGrid
      threadsPerThreadgroup:(MTLSize)threadsPerThreadgroup;
?

#33
18:00, 12 июля 2021

Хотя это не важно, simd group size фиксированный для кернела и его можно получить через thread execution width
Так что то что я написал в первом посте не верно
https://developer.apple.com/documentation/metal/creating_threads_… _threadgroups

#34
(Правка: 2:29) 2:27, 13 июля 2021

Не стоит запариваться с размером ThreadGroup, пока не юзается LDS, главное чтобы было кратно размеру Wavefront(SIMD-group), иначе некоторые Lines в Wavefront-е, останутся голодными

#35
22:35, 10 сен. 2021

https://developer.apple.com/videos/play/wwdc2021/10148/
видео как профилируют ААА игры под метал

#36
23:47, 10 сен. 2021

/A\
Возможно, ты хотел сказать "как могли бы профилировать ААА игры под метал"?

#37
10:02, 11 сен. 2021

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

#38
14:18, 11 сен. 2021

/A\
Я к тому, что сами разработчики профилируют отнюдь не под Apple.

Страницы: 1 2 3
ПрограммированиеФорумГрафика