Vulkan (API)

Vulkan

Em formação
Desenvolvido por Grupo Khronos
Primeira versão 16 de fevereiro de 2016
Última versão 1.2.176 (19 de abril de 2021)
Depósito github.com/KhronosGroup/Vulkan-Headers
Escrito em VS
Sistema operacional Linux , Android , Microsoft Windows e Stadia
Meio Ambiente Multi plataforma
Modelo Interface de programação
Licença Licença Apache versão 2.0
Local na rede Internet www.khronos.org/vulkan

Cronologia das versões

Vulkan anunciado pela primeira vez como OpenGL Next é uma interface de programação gráfica oferecida pelo consórcio Khronos Group . Seu objetivo é substituir o OpenGL e seus derivados a longo prazo , fazendo uso mais eficiente das arquiteturas de computador modernas. 25 anos após a criação do OpenGL, visa unificar as versões mobile ( OpenGL ES ) e desktop (OpenGL), funciona nativamente no Microsoft Windows , GNU / Linux e Android, bem como no MacOS e iOS por meio da iniciativa de portabilidade (l ' API MoltenVK) baseado em Metal . Uma primeira versão foi lançada emfevereiro de 2016, suportado pela AMD e Nvidia entre outros, e é compatível com qualquer sistema que suporte OpenGL ES 3.1.

Histórico

Vulkan é baseado no trabalho feito por AMD API Mantle  (in) , e anteriormente em Mesa 3D , por Gallium3D (redução da camada do driver gráfico e relação mais direta com a GPU e memória). Em particular seu módulo LLVMpipe que permite a pré-compilação em uma linguagem intermediária e melhor uso de arquiteturas de microprocessador multi-core de arquiteturas modernas para renderização 3D.

Os desenvolvedores do driver gratuito Vulkan para processadores gráficos Intel descrevem o Vulkan como um "Gallium3D 2.0". A linguagem SPIR originalmente usando LLVM , SPIR-V que é uma versão modificada permitirá uma implementação de LLVM para sua interpretação.

Grandes avanços

Entre as vantagens:

A Microsoft, por sua vez, lançou o DirectX 12 , a última geração de sua API Gráfica, e a Apple lançou sua API Metal . Ambos planejam usar o mesmo acesso de hardware de baixo nível e portabilidade móvel do Mantle ou Vulkan, mas têm a desvantagem de não serem multiplataforma .

Dada a abertura da API, portabilidade e ganhos de desempenho, vários editores de jogos já anunciaram suporte para a API por seu mecanismo, antes mesmo das especificações finais, como o motor Source 2 da Valve .

A biblioteca gratuita GLOVE converte chamadas OpenGL ES , glsl e EGL em chamadas Vulkan.

Os drivers gratuitos de aceleração 3D de hardware Mesa 3D para GNU / Linux incluem três drivers para converter diferentes APIs 3D em Vulkan e, assim, se beneficiar de seu desempenho e menor consumo de energia com aplicativos projetados para:

Participantes

As principais empresas participantes do padrão são: AMD , Apple , ARM , Blizzard , Broadwell , Codeplay  (en) , Continental , Electronic Arts , Epic Games , Imagination Technologies , Intel , Lucasfilm , Mediatek , Oculus VR , Oxide , Pixar , Samsung , Sony , TransGaming  (en) , Unity , Valve , Vivante , Qt .

Apoiar

Histórico

Compatibilidade de hardware

Sociedade Equipamento Suporte a Vulkan 1.0
Microarquitetura disponível a partir de GPUs ( Die ) Placa de vídeo / SoC Linux Microsoft Windows (Windows 7 e superior) Android Nougat e superior
AMD
GCN 5º 08/2017 Vega 10 Série Radeon Rx Vega AMDGPU PRO ( Ubuntu & RHEL )
Mesa / RADV
Software Radeon NC
GCN 4º 06/2016 Polaris 10, Polaris 11, Vega 10 Radeon Rx 400 Series
GCN 3o 08/2014 Tonga, Fiji, Carrizo Radeon R9 Series
GCN 2o 03/2013 Bonaire, Havaí, Kaveri, Kabini, Temash, Mullins, Beema, Carrizo-L Radeon HD 7790, PlayStation 4 , Xbox One Em implementação
GCN 1o 02/2012 Oland, Cabo Verde, Pitcairn, Taiti, Hainan Radeon HD 77xx - 7900 Series
TeraScale 3 "Ilhas do Norte" 12/2010 Aruba (Trinity / Richland), Barts, Turks, Caicos, Cayman Radeon HD 7xxx - série 76xx , Radeon HD série 6000 Sem suporte
TeraScale 2 "Evergreens" 09/2009 Cedro, Cypress, Juniper, Redwood, Palm, Sumo Radeon HD 5000 Series
TeraScale 1 05/2007 R600, RV630, RV610, RV790, RV770,… Radeon série HD 2000 , HD 3000 , HD 4000
Nvidia
Pascal 05/2016 GP100, GP104, GP106, GP107 GeForce 10 series , Tegra X2 Driver Nvidia GeForce Driver Nvidia GeForce sim
Maxwell 2 09/2014 GM200, GM204, GM206, GM20B GeForce 900 series , Tegra X1
Maxwell 1 02/2014 GM107, GM108 GeForce GTX 750 Ti, GTX 750, GTX 860M
Kepler 03/2012 GK110, GK104, GK106, GK107, GK208 GeForce 600 series , GeForce 700 series , Tegra K1
Fermi 03/2010 GF100, GF104, GF106, GF108, GF110, GF114, GF116, GF119 GeForce 400 series , GeForce 500 series Sem suporte
Tesla 2.0 06/2008 GT200, GT215, GT216, GT218, GeForce 200 series , GeForce 300 series
Tesla 1.0 11/2006 G80, G84, G86, G92, G94, G96, G98 GeForce 8 series , GeForce 9 series , GeForce 100 series
Intel
Coffee Lake 2017-10 Core i3- / i5- / i7-8000 Mesa Gráficos Intel NC
Kaby Lake 01/2017 Core i3- / i5- / i7-7000
Skylake 08/2015 Core i3- / i5- / i7-6000, Pentium G4xxx , Celeron G39xx Planejado
Broadwell 09/2014 Core M-5Yxx , Core i3- / i5- / i7-5000 Sem suporte
Haswell 09/2012 Core i3- / i5- / i7-4000, Pentium G3xxx , Celeron G18xx
Ponte Ivy 04/2012 Core i3- / i5- / i7-3000, Pentium G2xxx , Celeron G16xx
Sandy Bridge 01/2011 Core i3- / i5- / i7-2000, Pentium Gxxx , Celeron Gxxx Sem suporte
Westmere 02/2012 Core i3- / i5- / i7-xxx, Pentium G69xx , Celeron G1101
Tecnologias de imaginação
PowerVR Series 8XE 02/2016 GE8200, GE8300 PowerVR Graphics SDK v4.1
PowerVR Series 7XT 11/2014 GT7200, GT7400, GT7600, GT7800, GT7900 Apple A9, Helio X30 (MT679?)
PowerVR Series 7XE 11/2014 GE7400, GE7800
PowerVR Series 6XT 01/2014 GX6240, GX6250, GX6450, GX6650 Apple A8, A8X, MediaTek MT8173, MT8176,
PowerVR Series 6XE 01/2014 G6050, G6060, G6100 (XE), G6110 RK3368
PowerVR Series 6 (Rogue) 01/2012 G6100, G6200, G6230, G6400, G6430, G6630 MediaTek MT6595M, MT6595T, MT6595M, MT6795, MT8135, Helio X10 (MT6795), LG H13, Apple A7, Atom Z3460, Z3480, Z3530, Z3560, Z3570, Z3580
PowerVR Series 5XT 01/2012 SGX543, SGX544, SGX554 Apple S1, A5, A5X, A6, A6X, NovaThor L8540, L8580, L9540, TI OMAP 4470, 5430, 5432, MediaTek MT5327, MT6589M, MT6589T, MT6589, MT8117, MT8121, MT8125, MT8389, Atom Z2460, Z2520, Z2520 Z2580, Z2760, Exynos 5410 Sem suporte
Qualcomm
Adreno 600 series Adreno 640 Snapdragon 855 1,1
Adreno 500 series Adreno 510, Adreno 530, Adreno 540 Snapdragon 430, 625, 650, 652, 820, 821, 835, 845 1.0
Adreno 400 series Snapdragon 415, 615, 616, 617, 805, 808, 810
Adreno 300 series Snapdragon 200, 208, 210, 212, 400, 410, 412, 600, 800, 801 Sem suporte
BRAÇO
Bifrost 06/2016 Mali-G71, Mali-G51 Kirin 960 1.0
Midgard 4º Quarto trimestre de 2015 Mali-T860, Mali-T830, Mali-T880 Exynos 8890, Exynos 7870, Kirin 950, 955, MediaTek MT6738, MT6750, Helio X20 (MT6797), X25 (MT6797T), P10 (MT6755), P20 (MT6757)
Midgard 3rd 10/2013 Mali-T760,… Exynos 7420, Exynos 5433, MT6752, MT6732, RK3288
Midgard 2 08/2012 Mali-T600 series, T720 Exynos 5250, 5260, 5410, 5420, 5422, 5430, 5800, 7580, Mediatek MT6735, MT6753, Kirin 920, 925, 930, 935 Sem suporte

Jogos compatíveis

Motores de jogo compatíveis

Apêndices

Notas e referências

  1. Versão 1.2.176  " ,19 de abril de 2021(acessado em 20 de abril de 2021 )
  2. Smith 2015 .
  3. (en) "  Iniciativa de Portabilidade -  " , Grupo Khronos ,25 de fevereiro de 2018( leia online , consultado em 28 de fevereiro de 2018 )
  4. (en) "  Metal (API)  " , Wikipedia ,26 de janeiro de 2018( leia online , consultado em 28 de fevereiro de 2018 )
  5. "  O Grupo Khronos formaliza a sucessão de OpenGL  " , no ZDNet França (acessado em 10 de agosto de 2020 ) .
  6. https://www.khronos.org/assets/uploads/developers/library/overview/2015_vulkan_v1_Overview.pdf
  7. (em) "  Gallium3D LLVM  " ,2 de novembro de 2007
  8. Ryan Smith , “  Khronos @ SIGGRAPH 2013: OpenGL 4.4, OpenCL 2.0, & OpenCL 1.2 SPIR Anunciado  ” , Anandtech ,22 de julho de 2013(acessado em 5 de abril de 2015 )
  9. (em) "  Aprendendo mais sobre o driver Intel Vulkan, mapas do Vulkan Linux  " , phoronix ,12 de março de 2015
  10. https://www.khronos.org/assets/uploads/developers/library/2015-gtc/Khronos-Overview-GTC_Mar15.pdf
  11. (em) Philip Kollar, "  Valve annonce Source 2 engine, free for developers  " ,3 de março de 2015
  12. Mike Mahardy, "  GDC 2015: Valve Announces Source 2 Engine  " , IGN ,3 de março de 2015
  13. LittleWhite, “  implementações luva e Zink Dois de OpenGL em Vulkan  ” , pelo jeux.developpez.com ,1 r nov 2018
  14. LittleWhite, “  implementações luva e Zink Dois de OpenGL em Vulkan  ” , pelo jeux.developpez.com ,1 r nov 2018
  15. (em) "  DXVK, implementação de D3D11 e D3D10 baseada em Vulkan para Linux / Wine  " na conta do Github doitsujin
  16. (em) "  Biblioteca de tradução de D3D12 para Vulkan  " em source.winehq.org
  17. (em) "  zink: Introduce opengl over vulkan  " em cgit.freedesktop.org ,28 de outubro de 2019
  18. (en-US) "  The Qt Company junta-se ao Khronos Group e promove Vulkan - Qt Blog  " , Qt Blog ,16 de fevereiro de 2016( leia online , consultado em 21 de fevereiro de 2017 )
  19. http://www.touslesdrivers.com/index.php?v_page=3&v_code=6124
  20. “A  Intel oferece um driver Vulkan de código aberto.  » , Em Developpez.com (acessado em 10 de agosto de 2020 ) .
  21. Jérôme Gianoli, "  Vulkan, Nvidia publica sua versão do driver do Windows 364.91 e do driver do Linux versão 364.16  " , em ginjfo.com ,9 de abril de 2016(acessado em 10 de agosto de 2020 ) .
  22. David Feugey, "  The second preview of Android N push the 3D Vulkan API  " , em silicon.fr , Silicon ,14 de abril de 2016(acessado em 10 de agosto de 2020 ) .
  23. Guénaël Pépin, “  Android N: o segundo Developer Preview traz suporte para Vulkan  ” , em nextinpact.com ,14 de abril de 2016(acessado em 10 de agosto de 2020 ) .
  24. "  Vulkan agora no Android N Developer Preview 2  " , no Hardware de Tom: novidades sobre hardware e videogame ,15 de abril de 2016(acessado em 10 de agosto de 2020 ) .
  25. http://www.p-nintendo.com/news/khronos-certifie-la-switch-pour-vulkan-245969
  26. “  Como a Samsung vai aumentar a autonomia dos seus smartphones sem trocar a bateria  ” , on 01net , 01net (acessado em 10/08/2020 ) .
  27. Clément Grandjean, "  Vulkan: os jogos Unity serão em breve mais suaves no Android  " , no frandroid ,30 de setembro de 2016
  28. "  A Vulkan-Based Video Game Engine  " , em Toolinux.com ,26 de outubro de 2016
  29. Jérôme Gianoli, "  Suporte total para Vulkan no Windows, Intel HD Graphics 21.20.16.4590 estão chegando  " , em Ginjfo ,14 de fevereiro de 2017(acessado em 18 de fevereiro de 2017 )
  30. (em) Juan Linietsky, "  Moving to Vulkan (and ES 2.0) INSTEAD of OpenGL ES 3.0  " ,26 de fevereiro de 2018
  31. (en) Remi Verschelde, "  Dev snapshot: Godot 3.2 alpha 1  ' ,6 de outubro de 2019
  32. (em) Matias Goldberg, "  Vulkan Progress Report  ' ,5 de novembro de 2019
  33. (em) "  A plataforma Android inclui uma implementação específica do Android da especificação da API Vulkan do Khronos Group  " ,5 de abril de 2016
  34. (in) "  AMDGPU-PRO 16.40 Lançado Para Sistemas Ubuntu e Red Hat Linux  " ,27 de outubro de 2016
  35. rhallock, “  Radeon GPUs estão prontas para a API gráfica Vulkan  ” , em amd.com ,16 de fevereiro de 2016(acessado em 10 de agosto de 2020 ) .
  36. (em) Michael Larabel, "  Testing The Open-Source" rAdV "Vulkan Radeon Driver vs. AMDGPU-PRO  ” , no Phoronix ,30 de agosto de 2016
  37. (em) "  A versão do software AMD Radeon suporta 16.15.1009 Vulkan  " ,16 de fevereiro de 2016
  38. http://www.nvidia.com/download/driverResults.aspx/101818/en-us
  39. (em) "  Vulkan Driver Support  " no NVIDIA Developer , Nvidia (acessado em 4 de abril de 2016 )
  40. (em) "  Drivers de código aberto para hardware Intel Vulkan  " ,16 de fevereiro de 2016
  41. (em) Michael Larabel , "  Mesa 12.0 lançado com suporte a OpenGL 4.3, Intel Vulkan e muitos outros recursos  " no Phoronix ,8 de julho de 2016(acessado em 9 de julho de 2016 )
  42. https://software.intel.com/en-us/blogs/2016/03/14/new-intel-vulkan-beta-1540204404-graphics-driver-for-windows-78110-1540 15.40.20
  43. (en-US) “  Imagination anuncia Vulkan SDK para PowerVR Rogue GPUs  ” , no Imagination Blog , PowerVR Developer Technology Team,16 de março de 2016(acessado em 27 de abril de 2016 )
  44. (em) "  Snapdragon 855: a primeira plataforma móvel para uma nova década de 5G, AI e XR  "
  45. (em) "  Qualcomm annonce Vulkan API Support para Adreno GPUs 5xx e 4xx  "
  46. (em) "  Arquitetura de GPU ARM Bifrost  " ,30 de maio de 2016
  47. (em) "  GPUs ARM® Mali ™ com conformidade Vulkan  "
  48. (em) Philip Kollar , "  Valve annonce Source 2 engine, free for developers  " ,3 de março de 2015(acessado em 3 de março de 2015 )
  49. (em) Mike Mahardy , "  GDC 2015: Valve Announces Source 2 Engine  " , IGN ,3 de março de 2015( leia online , consultado em 3 de março de 2015 )
  50. (em) "  A operadora do Princípio Talos irá Vulkan  " ,4 de fevereiro de 2016
  51. (em) "A  Epic Games adiciona suporte Vulkan ao Unreal Engine 4  " na tecnologia de bits (acessado em 24 de fevereiro de 2016 )
  52. (em) "  Epic Games Unveils ProtoStar Has Samsung Galaxy Unpacked  " em www.unrealengine.com (acessado em 24 de fevereiro de 2016 )
  53. (em) "  id annonce Doom rodando em Vulkan  " ,7 de maio de 2016
  54. "  DirectX 12, suporte Vulkan a caminho do CryEngine  " , no TweakTown ,19 de agosto de 2016(acessado em 10 de agosto de 2020 ) .
  55. "  Unity 5.6 - Unity  " , de Unity (acessado em 10 de agosto de 2020 ) .
  56. "  Unity 2018.2 - Unity  " , no Unity (acessado em 10 de agosto de 2020 ) .
  57. (in) "  Xenko 1.7β lançado!  " ,1 r jul 2016
  58. (em) "  Obrigado por todos os peixes! -  " , em Thanks For All The Fish! (acessado em 10 de agosto de 2020 ) .
  59. http://forums.torque3d.org/viewtopic.php?t=617#p5148

Bibliografia

Link externo