為配合主幹穩定開發模型,並確保生態系統的平台穩定性,我們將於 2026 年起,在第 2 季和第 4 季將原始碼發布至 AOSP。如要建構及貢獻 AOSP,建議使用 android-latest-release,而非 aosp-main。android-latest-release 資訊清單分支版本一律會參照推送至 AOSP 的最新版本。詳情請參閱「Android 開放原始碼計畫變更」一文。
Google uses AI technology to translate content into your preferred language. AI translations can contain errors.
設備發現和分配
透過集合功能整理內容
你可以依據偏好儲存及分類內容。
在 Android 10 中,神經網絡 API (NNAPI)引入了允許機器學習框架庫和應用獲取有關可用設備的信息並指定要在哪些設備上執行模型的功能。提供有關可用設備的信息允許應用程序獲取設備上找到的驅動程序的確切版本,以避免已知的不兼容性。通過讓應用程序能夠指定哪些設備將執行模型的不同部分,應用程序可以針對部署它們的產品進行優化。
NN HAL 1.2 實施需要支持設備發現和分配。
執行
要支持 NNAPI 中的設備發現和分配功能,請在IDevice.hal中實現getType和getVersionString以允許框架獲取設備類型和驅動程序版本。
對於每個設備,將類型指定為types.hal中的DeviceType中指定的以下類別之一。
-
OTHER :不屬於任何其他類別的設備,包括異構接口,它是管理多個設備的單個IDevice接口,可能是不同類型的設備。具有異構接口的驅動程序還應公開與各個設備相對應的單獨IDevice接口,以允許應用程序從這些設備中進行選擇。 -
CPU :單核或多核 CPU。 -
GPU :可以運行 NNAPI 模型並加速 OpenGL ES 和 Vulkan 等圖形 API 的 GPU。 -
ACCELERATOR :專用的神經處理單元 (NPU)。
在IDevice.hal中實現getVersionString以獲取設備實現的版本字符串。此方法必須返回人類可讀的字符串。字符串的格式是特定於供應商的。對於每個新版本的驅動程序,版本字符串必須不同。
IDevice接口的名稱必須遵循{VENDOR}-{DEVICE_NAME}格式。
這個頁面中的內容和程式碼範例均受《內容授權》中的授權所規範。Java 與 OpenJDK 是 Oracle 和/或其關係企業的商標或註冊商標。
上次更新時間:2022-06-06 (世界標準時間)。
[[["容易理解","easyToUnderstand","thumb-up"],["確實解決了我的問題","solvedMyProblem","thumb-up"],["其他","otherUp","thumb-up"]],[["缺少我需要的資訊","missingTheInformationINeed","thumb-down"],["過於複雜/步驟過多","tooComplicatedTooManySteps","thumb-down"],["過時","outOfDate","thumb-down"],["翻譯問題","translationIssue","thumb-down"],["示例/程式碼問題","samplesCodeIssue","thumb-down"],["其他","otherDown","thumb-down"]],["上次更新時間:2022-06-06 (世界標準時間)。"],[],[]]