Stránka 3 z 17

Re: AMD Mantle / Khronos Vulkan (glNext): Low-level Graphics

Napsal: stř 4. bře 2015, 13:10
od Ache
Adam Vágner píše: Já fakt nechápu, proč má no-x potřebu takhle ohýbat realitu a furt si jede dál v těch včerejších kolejích.
nj. tak Diit u mě skončil dnem kdy no-x reagoval slovy co mám na památku v podpisu. :|

Jinak spojení tématu mě taky nějak uniká. GLNext by mohlo mít vlastní thread ne? :?
Mantle = AMD grafiky.
GLnext = všechny grafiky a hlavně jiné API.

Re: AMD Mantle / Khronos Vulkan (glNext): Low-level Graphics

Napsal: stř 4. bře 2015, 13:23
od Adam Vágner
Jo, to je právě to, co jako obvykle udělal. Zase vybral ty "nejdůležitější části" z toho, co je uvedeno ve zdroji.

Re: AMD Mantle / Khronos Vulkan (glNext): Low-level Graphics

Napsal: stř 4. bře 2015, 13:28
od del42sa
Adam Vágner píše:Jo, to je právě to, co jako obvykle udělal. Zase vybral ty "nejdůležitější části" z toho, co je uvedeno ve zdroji.
ona ale ta část je podstatná ne-li rovnou nejdůležitější, protože se díky tomu značně urychlil vývoj nového API. (bez ohledu na další vlastní úpravy)

Re: AMD Mantle / Khronos Vulkan (glNext): Low-level Graphics

Napsal: stř 4. bře 2015, 13:34
od Adam Vágner
Když si přečtu DIIT, tak z toho celého článku po té selekci nabudu dojmu, že Khronos vzal AMD Mantle, udělal z toho OpenGL Next, vývojová větev Mantle se rozdělí na "OpenGL Next" a "Nativní Mantle" a v OpenGL Next se udělají změny, které umožní, aby to fungovalo na ostatních grafikách. Tak to jako sorry, ale něco takového v tom článku na Anandu, ze kterého to vychází, opravdu napsané není.

Re: AMD Mantle / Khronos Vulkan (glNext): Low-level Graphics

Napsal: stř 4. bře 2015, 13:46
od Krteq
:? Vážně ne?

AnandTech - AMD Lays Out Future of Mantle: Changing Direction In Face of DX12 and glNext
Mantle’s new focus in turn is going to be a testbed for future graphics API development. Along with releasing the specifications for “Mantle 1.0”, AMD will essentially keep the closed beta program open for the continued development of Mantle, building it in conjunction with a limited number of partners in a fashion similar to how Mantle has been developed so far.
AnanadTech - Next Generation OpenGL Becomes Vulkan: Additional Details Released
In fact Khronos has confirmed that AMD has contributed Mantle towards the development of Vulkan, and though we need to be clear that Vulkan is not Mantle, Mantle was used to bootstrap the process and speed its development, making Vulkan a derivation of sorts of Mantle (think Unix family tree). What has changed from Mantle is that Khronos has gone through a period of refinement, keeping what worked in Vulkan and throwing out portions of Mantle that didn’t work well – particularly HLSL and anything that would prevent the API from being cross-vendor – replacing it with the other necessary/better functionality.

Meanwhile from a shader programing perspective, Vulkan will support multiple backends for shaders. GLSL will be Vulkan’s initial shading language, however long-term Khronos wants to enable additional languages to be used as shading languages, particularly C++ (something Apple’s Metal already supports). Bringing support for other languages as shaders will take some effort, as those languages will need graphics bindings extended into them.
  • Mantle 1.0 zůstává a je dál podporováno pro subjekty, které jsou zapsány v dosavadním programu.
  • AMD poskytlo Mantle Khronosu.
  • Khronos odebral limitaci na GCN a závislost na HLSL a přidal možnost programování v C++ skrze SPIR-V a použil GLSL jako základní SL
Všechno máš přímo z AnandTechu včetně linků. Co tedy no-X napsal blbě?

Re: AMD Mantle / Khronos Vulkan (glNext): Low-level Graphics

Napsal: stř 4. bře 2015, 14:30
od Adam Vágner
Vulkan is not yet complete – the specification itself is not being released in any form – but Khronos is further detailing the development and execution flows for how Vulkan will work.

In fact Khronos has confirmed that AMD has contributed Mantle towards the development of Vulkan, and though we need to be clear that Vulkan is not Mantle

Mantle was used to bootstrap the process and speed its development, making Vulkan a derivation of sorts of Mantle (think Unix family tree)

Prostě v podstatě nikdo nic neví, nikdo pořádně neřekl, co z mantle tam vlastně zůstane, co všechno tam přibude, co všechno bude stejné, co všechno bude jinak. Unix Family Tree může znamenat taky v podstatě cokoliv, zkuste nějakému příznivci FreeBSD říct, že je to stejně jako Linux v podstatě Unix, u kterého se udělaly nějaké ty změny.

Re: AMD Mantle / Khronos Vulkan (glNext): Low-level Graphics

Napsal: stř 4. bře 2015, 14:44
od del42sa
Just going through the functions:

vkBeginCommandBuffer == grBeginCommandBuffer
vkCmdDbgMarkerBegin == grCmdDbgMarkerBegin
vkCmdPipelineBarrier == ???
vkCmdDbgMarkerEnd == grCmdDbgMarkerEnd
vkEndCommandBuffer == grEndCommandBuffer
vkCreateFence == grCreateFence
vkCreateBuffer == ???
vkGetObjectInfo == grGetObjectInfo
vkQueueSubmit == grQueueSubmit
vkAllocMemory == grAllocMemory
vkBindObjectMemory == grBindObjectMemory
poznámka : gr = Mantle API vk = Vulkan API
Now that doesn't mean Vulkan support would just be a matter of renaming functions to have a port. But this means Mantle was very likely used as a basis for Vulkan development.
http://www.reddit.com/r/linux_gaming/co ... an_mantle/

Re: AMD Mantle / Khronos Vulkan (glNext): Low-level Graphics

Napsal: stř 4. bře 2015, 14:46
od Krteq
Tohle s API calls už jsem tu linkoval 3x, Adam to prostě ignoruje :roll:

A to, že na čtvrtečním eventu bude Vulkan presentovat i Johann Anderson, jeden z hlavních vývojářů stojících za vývojem Mantle API, je taky jen náhoda.

//Promaz OT + rozdělení vláken

Re: AMD Mantle / Khronos Vulkan (glNext): Low-level Graphics

Napsal: stř 4. bře 2015, 23:30
od Hladis
havli píše:
Hladis píše:Mobilni herni sféra....... Unreal bude podporovat DX12 i Vulkan.
Hrat na mobilech nebo tabletech cokoliv narocnejsiho nez sachy / karty / angry birds je nesmysl... a tim padem neni na tyhle veci potreba OGL ani nic dalsho. :-D
Myslim ze i novy Shield ti da odpoved. Ne nadarmo Valve s nV do tohohle rezou.

Re: Khronos Vulkan (glNext): Mantle Based Low-Level Graphics

Napsal: čtv 5. bře 2015, 18:05
od nou

Re: Khronos Vulkan (glNext): Mantle Based Low-Level Graphics

Napsal: čtv 5. bře 2015, 20:14
od nou
Takze uz je po prezentacii Vulkan od Valve na GDC

https://steamdb.info/blog/vulkan-the-future-graphics/
Existuje uz Linuxovy driver pre Intel grafiky ktory bude neskor opensource. Na nom bezalo verzia Source 2 enginu podporujuca Vulkan.
Q: plans for console support?

A: I can't comment on other people's plans, but the outlook is good.


Q: is Vulkan going to support existing hardware?

A: it will be limited to hardware that already exists and has exists for a wall. We set the bar at OpenGL 4.1. Whether you will get drivers from the vendors depends on the pressure you put on them, but we've seen good indications so far.

Re: Khronos Vulkan (glNext): Mantle Based Low-Level Graphics

Napsal: pát 6. bře 2015, 07:06
od del42sa

Re: Khronos Vulkan (glNext): Mantle Based Low-Level Graphics

Napsal: pát 6. bře 2015, 09:30
od nou
youtube link na hore uvedenu prezentaciu https://www.youtube.com/watch?v=EUNMrU8uU5M

slide z danej prezentacie https://www.khronos.org/assets/uploads/ ... -Mar15.pdf
vkGetMultiGpuCompatibility(gpuA,gpuB, &compatInfo);
Compatibility info indicates
-
Full sharing, sharing of specific resources, or no compatibility at all.
Hm takze teoreticka moznost kombinovat GeForce/Radeon. Ale na 99% to aj ostane teoreticka moznost.
Vulkan is not “low level” – just a better abstraction of modern hardware
hej low level by som si predstavoval zapisovat do nejakych registrov na GPU aby som nieco vykreslil. oproti terajsiemu DX/OGL to fakt nie je az o tolko low level.

Re: Khronos Vulkan (glNext): Mantle Based Low-Level Graphics

Napsal: pát 6. bře 2015, 09:51
od Hladis
Nemuze to byt uplny low-level uz z podstaty věci, kdy to musí byt kompatibilni se vsim. Low-level muzou udelat Mantle, kdy to pisou primo na jednu architekturu, ne u univerzálního API.

Re: Khronos Vulkan (glNext): Mantle Based Low-Level Graphics

Napsal: pát 6. bře 2015, 10:24
od del42sa
nou píše:
Vulkan is not “low level” – just a better abstraction of modern hardware
hej low level by som si predstavoval zapisovat do nejakych registrov na GPU aby som nieco vykreslil. oproti terajsiemu DX/OGL to fakt nie je az o tolko low level.
zajímavé je, že na stránce 56 píšou tohle : :twisted:
© Copyright Khronos Group 2015 - Page 56
GFXBench 5.0

Entirely new engine aimed at benchmarking low-level
graphics APIs (Vulkan, DX12, Metal)

Re: Khronos Vulkan (glNext): Mantle Based Low-Level Graphics

Napsal: pát 6. bře 2015, 10:26
od Krteq
nou píše:...
Díky za ty linky, jdu to rovnou prostudovat :)

Re: Khronos Vulkan (glNext): Mantle Based Low-Level Graphics

Napsal: pát 6. bře 2015, 10:29
od Hladis
del42sa:
Neni low-level tak, ze pristupuje primo k HW bez mezivrstvy s tim, ze to pocita primo s danou architekturou a je to tedy napsany HW na telo ? Když to ale delas univerzalni, tak nemuzes k tomu pristupovat stejne, jako když to mas napsany na konkretni HW ne ?

Re: Khronos Vulkan (glNext): Mantle Based Low-Level Graphics

Napsal: pát 6. bře 2015, 10:37
od Krteq
Ale pristup k "device" ve Vulkanu je shodný s Mantle i DX12, nepíšete přímo na tělo. I proto AMD psalo, že Mantle není přímo vázáno na GCN

Obrázek

Pod Mantle je ta funkce pro vytvoření device (se kterým se potom dál pracuje) akorát s "předponou" gr

Kód: Vybrat vše

grCreateDevice

Re: Khronos Vulkan (glNext): Mantle Based Low-Level Graphics

Napsal: pát 6. bře 2015, 10:48
od nou
Low-level je dost subjektivne. Vulkan/DX12 su urcite viac low level pretoze davaju programatori omnoho explicitnejsi pristup k GPU a je tam menej abstrakcie. Ak porovnavame OGL a terajsie Vulkan tak samozrejme je Vulkan low level.

Ak si ale zoberie celu hierarchiu kernel, driver, api, engine, aplikacia tak OGL aj Vulkan su prakticky na tom istom mieste.

heh pekne prirovnanie o co je Vulkan viac low level
There are a lot of things which have previously gone on behind the scenes which are now exposed to the programmer, meaning uploading a texture isn't so simple. According to the talk, to upload a texture:
  • You have previously requested a block of gpu memory, probably over 1gb.
  • You ask the Driver, "So I have this texture in this colour format with the dimensions of X by Y pixels, how much memory do I need to upload it?"
  • The answer may not be what you expect, maybe because you asked for a RGB texture while the GPU can only sample RGBA textures, or the driver needs to pad your texture dimensions to multiples of 32.
  • You choose an address within your massive block of gpu memory big enough to store the uploaded texture.
  • You pass that address and your texture data to the driver, it converts the texture to whatever format is needed and swizzles it (for optimum cache usage) into the address you specified.
  • The texture is now "uploaded". Just point a shader at that memory later.

Re: Khronos Vulkan (glNext): Mantle Based Low-Level Graphics

Napsal: pát 6. bře 2015, 10:57
od Hladis
Ono prave jde o to, ze to musí fungovat s veskyrym HW, takze uplne low to proste byt nemůže. Anand treba psal
Mantle goes as low as is reasonably possible, with minimal levels of abstraction between the code and the hardware. Mantle is for all practical purposes an API for doing bare metal programming to GCN.
Kazdopadne pokud to ma byt univerzalni, tak proste není mozny jit az tak low, tedy psat to primo na telo.