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

[Решено] Почему UBO медленнее glProgramUniformMatrix4fv? (19 стр)

Страницы: 118 19 20 21 22 Следующая »
#270
21:11, 14 янв. 2020

Fantom09
> Какая подготовка буферов? Это все один раз грузится на этапе инициализации,
> далее только трансформации.
Ну так покажи мастер класс уже в конце концов. Как GPU доминирует CPU в анимациях, и со скольки персонажей начинается эта самая доминация. Запили демку в которой будет это всё наглядно видно.

> Если твой опыт заканчивается на 10 актерах, то смысл флудить?
Интересно, на скольки актерах заканчивается твой опыт, если ты считаешь, что позиции кости чтобы вложить в руку меч - достаточно. Дай угадаю, на нуле?


#271
21:20, 14 янв. 2020

MrShoor
> GPU часто даже когда это неэффективно - может легко посчитать.

видать у нас разные понятие эффективности - простой вопросик - сколько нужно потоков на cpu чтобы обсчитать 128 матриц параллельно ?

#272
(Правка: 21:22) 21:21, 14 янв. 2020

MrShoor
> Ну так покажи мастер класс уже в конце концов.
Ты точно читать умеешь? Уже третий раз пишу - к выходным будет демка.
MrShoor
> чтобы вложить в руку меч
Какой нафиг меч??? мы говорили о хитбоксах, меч у тебя появился только что, и я уже тебе написал на сколько усложнится задача для того, чтоб вернуть еще и ориентацию кости. Сейчас ты еще запоешь что нужно возвращать еще и скейл, так как меч может удлиняться, да и вообще, это будет не меч а кнут, у которого своя анимация, потом выяснится что ты хочешь чтоб этот кнут физически корректно реагировал с объектами, которых касается и т.д. и т.п., потом выяснится что все это было плевое дело а проблема в..... и заход на новый круг

#273
21:26, 14 янв. 2020

Fantom09
> Ты точно читать умеешь? Уже третий раз пишу - к выходным будет демка.
Так именно поэтому я тебе это и пишу. Давай демку, потом можно будет разговаривать. А сейчас это уже лишено смысла.

Fantom09
> Какой нафиг меч??? мы говорили о хитбоксах, меч у тебя появился только что
Ок, если я скажу не меч, а оружие (из поста 223), то как в посте 238 ты предлагаешь ориентировать хитбокс? Или ты считаешь, что сферы в качестве хитбокса для оружия достаточно? xD

#274
21:27, 14 янв. 2020

innuendo
> видать у нас разные понятие эффективности
Ты лучше скажи, код, который я привел по твоему эффективный или нет? Я так понимаю что для тебя это эффективный код, правильно?

#275
21:29, 14 янв. 2020

MrShoor
> > видать у нас разные понятие эффективности
> Ты лучше скажи, код, который я привел по твоему эффективный или нет? Я так
> понимаю что для тебя это эффективный код, правильно?

можешь доказать обратное ? флаг в руки

#276
(Правка: 21:37) 21:33, 14 янв. 2020

innuendo
> можешь доказать обратное ? флаг в руки
Вычислительная сложность данного алгоритма (с учетом особенностей процессора) O(n*m) где n - количество костей, а m - максимальная глубина иерархии. При этом сюда добавляется дорогая константа на GPU-GPU синхронизацию.
На CPU можно получить вычислительную сложность O(n), а с учетом AVX она превращается в O(n/4).

#277
(Правка: 21:51) 21:35, 14 янв. 2020

CPU и GPU отстой !
Надо transform shader от nes-a и шоб кватернионы поддерживал ! А то на дворе 2020 год а GPU не умеют в кватернионы.
Такой шейдер спасет отца русской анимации.

#278
21:45, 14 янв. 2020

Ну хоть кто-то оценил.

#279
21:46, 14 янв. 2020

Ты как пальцем в небо глядел :)

#280
21:51, 14 янв. 2020

MrShoor
> Вычислительная сложность данного алгоритма (с учетом особенностей процессора)
> O(n*m) где n - количество костей, а m - максимальная глубина иерархии.

ничего что считается || ?

> При этом сюда добавляется дорогая константа на GPU-GPU синхронизацию.

а для просто скиннинга не надо делать CPU-GPU синхронизаци?

#281
(Правка: 22:09) 22:08, 14 янв. 2020

innuendo
> ничего что считается || ?
Ну так в этом и проблема. Если бы оно считалось не параллельно - можно было бы сделать сложность O(n). Т.е. мы считаем в 128 тредов, но при этом каждый тред работает в 4*m раз медленнее чем в синглтредной версии на CPU. А теперь добавь сюда стоимость GPU-GPU синхронизации + тот факт, что в одном потоке и CPU быстрее, и лейтенси до памяти у него меньше.

> а для просто скиннинга не надо делать CPU-GPU синхронизаци?
Я думаю мы про разную синхронизацию говорим. Я сейчас про ту, когда CPU/GPU ждет окончание предыдущей операции. Buffer.Map c WRITE_DISCARD - не блокирующий вызов, и CPU не ждет окончания работы GPU. Драйвер просто создаст еще один кусок памяти, зальет в него данные, и можно сразу в draw.

#282
(Правка: 22:15) 22:14, 14 янв. 2020

MrShoor
> Ну так в этом и проблема. Если бы оно считалось не параллельно - можно было бы
> сделать сложность O(n). Т.е. мы считаем в 128 тредов, но при этом каждый тред
> работает в 4*m раз медленнее чем в синглтредной версии на CPU. А теперь добавь
> сюда стоимость GPU-GPU синхронизации + тот факт, что в одном потоке и CPU
> быстрее, и лейтенси до памяти у него меньше.

вон оно как! а я то думал, на кой хрен физику на GPU ускоряют ???

> тот факт, что в одном потоке и CPU быстрее, и лейтенси до памяти у него
> меньше.

круто - давай и постпроцесс на CPU считать

#283
(Правка: 22:18) 22:17, 14 янв. 2020

innuendo

круто - давай и постпроцесс на CPU считать

Давай !
AMD threadripper 64 ядра.
#284
(Правка: 22:18) 22:18, 14 янв. 2020

innuendo
> вон оно как! а я то думал, на кой хрен физику на GPU ускоряют ???
А еще и графику ускоряют, представляешь. Это не отменяет того факта, что некоторые алгоритмы ложатся хорошо на GPU, а некоторые не очень.

Страницы: 118 19 20 21 22 Следующая »
ПрограммированиеФорумГрафика