簡介
Matel是指支援Apple GPU的Driver,上一回小編採用OpenCL來對Apple M2 GPU操作,發現各大廠還是希望顧客採用自家GPU Driver,而非open source.
其實滿合理的拉,這麼做不用依循OpenCL的標準,又可以增加顧客的黏著度.像蘋果這樣體量的公司,開發自家的API簡直是再合理不過的選擇.
強者都走自己的路,沒有在跟你合群的
環境建置
創建一個新的 Metal 項目
- 打開 Xcode,選擇 “Create a new Xcode project”。
- 選擇 “macOS” 作為目標平台,然後選擇 “App” 作為模板進行下一步。
- 輸入您的項目信息:
- 項目名稱
- Language 選擇 Swift
- 選擇您想要保存項目的位置,然後點擊 “Create”。
添加 Metal 文件(一定要添加,否則系統無法辨認Metal函式庫)
- 右鍵點擊項目導航器中的項目名稱,選擇 “New File…”。
- 在彈出的對話框中,選擇 “Metal”,然後點擊 “Next”。
- 輸入文件名,然後點擊 “Create”。
運行代碼
把以下代碼覆蓋至main.swift
運行結果
=== Basic Information ===
GPU Name: Apple M2
Registry ID: 4294968399
Device Location: 0
Device Location Number: 0
=== Performance Features ===
Max Threads Per Threadgroup: MTLSize(width: 1024, height: 1024, depth: 1024)
Max Buffer Length: 4294967296
=== Hardware Capabilities ===
Is Headless: false
Is Low Power: false
Is Removable: false
Has Unified Memory: true
=== Supported Feature Sets ===
MTLFeatureSet(rawValue: 10000): true
MTLFeatureSet(rawValue: 10005): true