Metal (API)

Metal 是由蘋果公司所開發的一個應用程序接口(API),兼顧圖形與計算功能,面向底層、低開銷的硬件加速。其類似於將 OpenGLOpenCL 的功能集成到了同一個API上,最初支持它的系統是 iOS 8。Metal 使得 iOS 可以實現其他平台的類似功能,例如 Khronos Group 的跨平台 VulkanMicrosoft Windows 上的 Direct3D 12

Metal
使用Metal的多人在線戰鬥競技場遊戲《虛榮》,運行於iPhone 6[1]
開發者Apple Inc.
首次發布2014年6月,​10年前​(2014-06
當前版本3(2019年6月,​5年前​(2019-06
編程語言C++14(着色器)
Objective-C(Runtime/API)
操作系統iOS, macOS, tvOS
類型API
許可協議專有軟件
網站developer.apple.com/metal/

Metal也通過引入計算着色器英語Compute kernel來進一步提高GPGPU編程的能力。[2]

Metal 使用一種基於C++11的新着色語言英語Shading language,其實現藉助了 ClangLLVM[3]

歷史

2014年6月2日,Metal 開始支持iOS設備(僅支持Apple A7或更新款處理器的iPhoneiPad);2015年6月8日,Metal 開始支持運行 OS X El Capitan 的Mac設備(僅2012年中或更新款機種)[4][5]

2017年6月5日,Apple於WWDC宣布了Metal的第二個版本,支持macOS High SierraiOS 11tvOS 11。Metal 2不是Metal的獨立API,並且由需要的硬體支援。 Metal 2在Xcode中實現了更高效的分析和調試,加速了機器學習、降低了CPU工作負載、支持macOS上的虛擬實境以及Apple A11處理器的特性。[6]

2019年6月3日,Metal API更新到第三個版本,支持macOS CatalinaiOS 13iPadOS 13

2020年的蘋果全球開發者大會(WWDC)上,蘋果宣布將Mac遷移到Apple Silicon。使用Apple Silicon的Mac將使用Apple GPU,支持之前在macOS和iOS上實現的特色功能,並將能夠利用為Apple GPU架構所定製的基於圖塊的延遲渲染(TBDR)功能。[7]

參見

參考文獻

  1. ^ McWhertor, Michael. This is the game Apple used to show off iPhone 6. Polygon. Vox Media. 2014-09-09 [2014-09-09]. (原始內容存檔於2014-09-10). 
  2. ^ Data-Parallel Compute Processing: Compute Command Encoder. developer.apple.com. [2017-02-10]. (原始內容存檔於2017-02-02) (英語). 
  3. ^ Metal Shading Language Guide. 2014-09-08 [2014-09-10]. (原始內容存檔於2016-03-15). 
  4. ^ Apple 发布包含 4,000 多个全新 API 的 iOS 8 SDK. [2016-09-17]. (原始內容存檔於2016-10-26). 
  5. ^ Apple 宣布推出体验更出色、性能更强大的 OS X El Capitan. [2016-09-17]. (原始內容存檔於2016-10-10). 
  6. ^ Archived copy of the Metal homepage, November 2017. Apple Developer. Apple. 2017-11-20 [2016-03-20]. (原始內容存檔於2017-11-20) –透過Wayback Machine. 
  7. ^ Bring your Metal app to Apple Silicon Macs. developer.apple.com. [2020-07-13]. (原始內容存檔於2021-01-03). 

外部連結