Metal (iOS API)
Metal je nízkoúrovňové, nízkorežijní, hardwarově akcelerované grafické API, které bylo poprvé představeno v iOS 8. Hlavní myšlenkou tohoto API je přinést na platformu iOS výkonová vylepšení, která poskytují podobně zaměřená API na jiných platformách jako například AMD Mantle a Microsoft DirectX 12. Metal je dostupný od 27. listopadu 2014 pro zařízení s čipy Apple A7, Apple A8 a Apple A8X. Metal také představil compute shadery, které dále vylepšují možnost použití GPGPU.
Operační systém | iOS macOS |
---|---|
Typ softwaru | API |
Některá data mohou pocházet z datové položky. |
Metal používá nový shaderový jazyk založený na C++11. Tento jazyk je implementován pomocí clang a LLVM.[1]
Vylepšení výkonu
Metal by měl poskytovat větší výkon než jeho předchůdce, OpenGL, z několika důvodů:
- Předkompilované shadery a předběžná validaci stavu
- Explicitní synchronizace mezi GPU a CPU
- Sdílený paměťový prostor mezi GPU a CPU
- Menší režijní nároky driveru[2]
Některé tyto body odstraňují část nároků na CPU potřebných pro úspěšné vykonání příkazů na GPU. To pak může vést k celkovému zvýšení výkonu, protože CPU může být místo toho využito k jiným výpočtům.
Reference
V tomto článku byl použit překlad textu z článku Metal (iOS API) na anglické Wikipedii.
- Metal Shading Language Guide [online]. September 8, 2014 [cit. 2014-09-10]. Dostupné online. (anglicky)
- PRANCKEVIČIUS, Aras. Metal, a new graphics API for iOS 8. blogs.unity3d.com [online]. Unity Blog, 2014-07-03 [cit. 2019-09-18]. Dostupné online. (anglicky)
Externí odkazy
- Metal Programming Guide (preliminary)
- WWDC14 demo; extended version