Программирование игр, создание игрового движка, OpenGL, DirectX, физика, форум
GameDev.ru / Программирование / Форум / OpenGL. Constant Buffer для бедных. (2 стр)

OpenGL. Constant Buffer для бедных. (2 стр)

Страницы: 1 2 3 4 5 6 Следующая »
DampireПостоялецwww22 фев. 20187:59#15
Игра в 2.5D с deferred. Просто боттлнек в cpu на 1030 карте. Поэтому и срезалось сразу 50%. А старушка захлёбывается филлрейтом. Не всем же делать реалтаймовый gi.
SuslikМодераторwww22 фев. 20188:09#16
Dampire
мне кажется, измерять производительность при времени кадра порядка 1-2мс — это уже само по себе сомнительное удовольствие, так как что угодно на это время может влиять. сделай стресс-тест, где объектов в 10-100 раз больше и тогда измеряй. если всё равно будет такая большая разница, то это странно и надо разбиратся.
MrShoorУчастникwww22 фев. 201810:02#17
Dampire
Так себе тесты. Разные видеокарты с разным временем фрейма, значит одна из видеокарт ботлнек. При этом профит в обоих случаях одинаковый. Если бы я получил такие измерения я бы очень усомнился в них.
innuendoПостоялецwww22 фев. 201810:32#18
Dampire
можно сделать отдельный тест и выложить - потестим везде :)
DampireПостоялецwww22 фев. 201815:36#19
MrShoor
Ну так и показывает, что зависимость от CPU. Закидывание данных на карту это же фактически CPU-bound. Процы примерно одинаковые (если смотреть в разрезе однопоточки), вин тоже примерно одинаковый. Считай в UBO варианте я биндил буфер и апдейтил данные, а тут минус привязка в слот и апдейт буфера, плюс загрузка трех с половиной матриц в юниформы. Попозже соберу тестовую карту, шоб статично, повторяемо и с большим количеством дипов.
MrShoorУчастникwww22 фев. 201818:29#20
Dampire
> Ну так и показывает, что зависимость от CPU.
Да гдеж она от CPU, если время кадра различается в 6 раз?
DampireПостоялецwww22 фев. 201820:16#21
MrShoor
Буст от CPU освободившегося. Буст то везде ~1мс. А разница в 6 раз я и так знаю почему. У меня по филлрейту жирно выходит (для офисных видеокарт). Деферред же.
MrShoorУчастникwww22 фев. 201820:20#22
Dampire
> Буст от CPU освободившегося.
Как может быть буст от CPU, если ботлнек GPU, а CPU с GPU работают параллельно?
DampireПостоялецwww22 фев. 201820:34#23
Чот ты меня в ступор вогнал. Я всегда думал, что при wglSwapBuffers поток ожидает полного исполнения команд, чтобы получить бэкбуфер, и потом шлет новую пачку сформированных команд, нет?
MrShoorУчастникwww22 фев. 201820:41#24
Dampire
> Я всегда думал, что при wglSwapBuffers поток ожидает полного исполнения команд,
> чтобы получить бэкбуфер, и потом шлет новую пачку сформированных команд, нет?
Нет. wglSwapBuffers обычно просто делает аналог glFlush. Однако он может и подождать, но только в случае, если N предыдущих wglSwapBuffers еще не завершилось (где N обычно 1 или 3).

Правка: 22 фев. 2018 20:41

DampireПостоялецwww22 фев. 201820:43#25
Ну тогда хз. Магия?
MrShoorУчастникwww22 фев. 201820:47#26
Dampire
> Ну тогда хз. Магия?
Поэтому я и назвал твои цифры - странными цифрами.
g-contПостоялецwww23 фев. 201812:38#27
Dampire
> при wglSwapBuffers поток ожидает полного исполнения команд
Каких именно комманд?
DampireПостоялецwww23 фев. 201814:51#28
Направо, налево, кругом, шагом марш и так далее.
g-contПостоялецwww25 фев. 201813:18#29
Очереди команд, это может в Вулкане такое имеется, либо в последних версиях GL.
Страницы: 1 2 3 4 5 6 Следующая »

/ Форум / Программирование игр / Графика

2001—2018 © GameDev.ru — Разработка игр