Size: a a a

pro.graphon (and gamedev)

2020 November 30

TG

Timur Gagiev in pro.graphon (and gamedev)
Columbus Utrigas
в дизасме их больше
какой-то левый ассемблер, интересен только ISA
источник

CU

Columbus Utrigas in pro.graphon (and gamedev)
Timur Gagiev
какой-то левый ассемблер, интересен только ISA
ISA под какую платформу? GCN/RDNA?
источник

TG

Timur Gagiev in pro.graphon (and gamedev)
Columbus Utrigas
ISA под какую платформу? GCN/RDNA?
без разницы
источник

OK

Oleksii Kolesnik in pro.graphon (and gamedev)
Aidar Fattakhov
Конечно если ты используешь си++ не стоит без раии обертки дергать си апишки
я так понял что там в vkQueueSubmit в самом драйвере упущение что если очередь уже забита, а он очевидно переданные структуры себе копирует - то в случае переполнения буфера хоста "баг" (или хз, в рефе на эту фцию этот кейс не описан) - то он скопированую структуру не освобождает
источник

OK

Oleksii Kolesnik in pro.graphon (and gamedev)
по ходу чтения тутора там была в пайплайне, кажись, настройка поведения при переполнении, но это же про переполнение на стороне девайса, как я понимаю
источник

AF

Aidar Fattakhov in pro.graphon (and gamedev)
Oleksii Kolesnik
я так понял что там в vkQueueSubmit в самом драйвере упущение что если очередь уже забита, а он очевидно переданные структуры себе копирует - то в случае переполнения буфера хоста "баг" (или хз, в рефе на эту фцию этот кейс не описан) - то он скопированую структуру не освобождает
>очередь
>забита
что?
источник

OK

Oleksii Kolesnik in pro.graphon (and gamedev)
это догадки. я не знаю почему там утечка
источник

eb

ed braed in pro.graphon (and gamedev)
Oleksii Kolesnik
я так понял что там в vkQueueSubmit в самом драйвере упущение что если очередь уже забита, а он очевидно переданные структуры себе копирует - то в случае переполнения буфера хоста "баг" (или хз, в рефе на эту фцию этот кейс не описан) - то он скопированую структуру не освобождает
Показывай на коде, мы тут не понимаем о чём ты говоришь..
источник

OK

Oleksii Kolesnik in pro.graphon (and gamedev)
источник

OK

Oleksii Kolesnik in pro.graphon (and gamedev)
и там явно написано что да, если мемлик но после семафоров на каждый фрейм он должен пропасть
источник

OK

Oleksii Kolesnik in pro.graphon (and gamedev)
как итог - не пропал после семафор-фетча на каждый фрейм. в итоге я вообще просто скопипастил приатаченый код (где разница в том что дописали маппинг индексов вьюшек) - и там я тоже наблюдаю утечку
источник

eb

ed braed in pro.graphon (and gamedev)
Oleksii Kolesnik
я так понял что там в vkQueueSubmit в самом драйвере упущение что если очередь уже забита, а он очевидно переданные структуры себе копирует - то в случае переполнения буфера хоста "баг" (или хз, в рефе на эту фцию этот кейс не описан) - то он скопированую структуру не освобождает
Он не копирует структуры к себе (вернее тебе об этом переживать не стоит даже если копирует).
Всё что ты по указателю ему передаёшь, ты сам же потом и должен вычищать. Исключение - маппинги памяти..
источник

OK

Oleksii Kolesnik in pro.graphon (and gamedev)
структуры оглашены в стеке. те они освобождаются при выходе из скоупа фции
источник

A

Arelav in pro.graphon (and gamedev)
А как glDraw*Instanced внутри работает?
источник

TG

Timur Gagiev in pro.graphon (and gamedev)
Arelav
А как glDraw*Instanced внутри работает?
в GPU есть счётчик с кол-вом инстансов, выставляется он и вызывается draw*
источник

A

Arelav in pro.graphon (and gamedev)
Timur Gagiev
в GPU есть счётчик с кол-вом инстансов, выставляется он и вызывается draw*
Хм то есть с практической точки зрения нет разницы instanced draw call с счетчиком 1000, или просто 1000 draw call с сетом счётчика в uniform-у? Немного сомнительно выглядит, если есть то в чем? Понятно что от драйвера может отличаться, но можно какой то возможный вариант, просто смотреть не хочется но любопытно
источник

TG

Timur Gagiev in pro.graphon (and gamedev)
Arelav
Хм то есть с практической точки зрения нет разницы instanced draw call с счетчиком 1000, или просто 1000 draw call с сетом счётчика в uniform-у? Немного сомнительно выглядит, если есть то в чем? Понятно что от драйвера может отличаться, но можно какой то возможный вариант, просто смотреть не хочется но любопытно
есть, очевидная
источник

A

Arelav in pro.graphon (and gamedev)
Timur Gagiev
есть, очевидная
?
источник

TG

Timur Gagiev in pro.graphon (and gamedev)
перфоманс, твои игры с uniform'ами приведут к переключению контекстов в лучшем случае, а их ограниченное кол-во. Т.е. GPU начнёт простаивать.
источник

TG

Timur Gagiev in pro.graphon (and gamedev)
опять же, зависит от архитектуры GPU
источник