Andrey
> Vulkan достойный конкурент Direct3D12, если нужен не только Window
так есть DXDebug если не только Windows?
g-cont
> но в наш век опенсорса вообще и регулярно утекающих исходников в частности,
> довольно странно наблюдать как ревностно охраняют свои драйвера AMD и NVidia.
> Что там за великие секреты сокрыты?
патамушта в отличии от исходников движков код драйвера нужен нескольким неадекватам :)
даже если ты его увидишь ни хрена это не поможет
даже если ты его увидишь
Если увидеть дрова, то всплывет много костылей и некие проблем.
Которые надо разруливать грамотно на уровне железа, а не кодом в дровах.
И тогда и дрова будут шустрее работать и видеокарта.
Если не хотят открывать исходный код дров, значит что-то скрывают или мутят.
Например открыли же инфу как программировать Sound blaster от creative.
И ничего страшного не случилось.
ronniko
> Если увидеть дрова, то всплывет много костылей и некие проблем.
Так АМД давно опубликовали свои драйвера, попробуй найди там костыли)
На какие модели видеокарт и за кокой год ? И точно полностью все открыли или часть ?
Ты про это за 2012 год ?
https://www.opennet.ru/opennews/art.shtml?num=33546
/A\
> Так АМД давно опубликовали свои драйвера, попробуй найди там костыли)
это только часть - у нвидиа куча заточек
Вот например возьмем инициализацию dx11\dx12\vulkan\opengl
Первые шаги это даже не сколько работа с видеокартой, а определение виндой нужных дров в системе и их подгрузкой.
Не удивлюсь если вовремя инициализации винда пару раз, для приличия получит от видеокарты немного данных.
Тоесть для видеокарты пункт инициализации dx11\dx12\vulkan\opengl не важен !
Он больше важен только для виндовс !
Вот так, на ровном месте микрософт усложняет жизнь программистам, таким как nes :)
ronniko
> И точно полностью все открыли или часть ?
Насколько знаю у них одни опенсорсные, другие закрытые и более оптимизированные.
В доках не сказано как правильно ставить барьеры для ускоряющих структур.
Когда было только расширение от NV, то там предлагали только VkMemoryBarrier, но в KHR расширении ускоряющая структура создается поверх буфера и там еще и шаринг между очередями задается.
В итоге, если делать по старинке через VkMemoryBarrier, то транзишн между очередями задать не получится, а использовать VkBufferMemoryBarrier не факт что правильно, так как буфер используется только как ссылка на память.
/A\
> для ускоряющих структур.
каких каких?
innuendo
VkAccelerationStructureKHR
VkAccelerationStructureKHR
И что прям полезная ?
Какой фигни не придумают лишь бы пукан Вулкану нарастить :)
/A\
>
> Насколько знаю у них одни опенсорсные, другие закрытые и более
> оптимизированные.
В закрытых драйверах АМД единственное отличие от отктытого - свой компилятор шейдеров, остальной код тотже. На википедии даже написано...
/A\
> Так АМД давно опубликовали свои драйвера, попробуй найди там костыли)
много костылей, но их начали правильно использовать (напимер while(true) в шейдерах больше не может убить видеокарту и не требует перезагруки драйвера)
ronniko
> На какие модели видеокарт и за кокой год ? И точно полностью все открыли или
> часть ?
в АМД опенсурс все кроме firmware (прошивки видеокарты)
В прошлом году в этом топане видел фразу - "стыдно не знать архитектуру RDNA" потому что читая ее доки ты понимаешь то как работает видеокарта изнутри (применимо и к Нвидии, и на консолях какбы очевидно).
В 2022 уж точно надо знать RDNA чтоб понимать все новые RDNA2/3.
https://developer.amd.com/wp-content/resources/RDNA_Shader_ISA.pdf
ronniko
> Если увидеть дрова, то всплывет много костылей и некие проблем.
Где-то видел сравнение про открытие закрытого кода: пройдёт значительное время между тем, как собачьи какашки оттаяли, и тем, как всё говно уберут.
Очень хорошее сравнение (вспомнил резкую весну 2016-го, когда полный двор собачьих какашек оттаял разом - и мну поплохело)
>> while(true) в шейдерах больше не может убить видеокарту
У AMD до сих пор нет вменяемой термозащиты чипов?