ใน Android 10 Neural Networks API (NNAPI) ได้เปิดตัวฟังก์ชันที่ช่วยให้ ไลบรารีและแอปของเฟรมเวิร์กแมชชีนเลิร์นนิง สามารถรับข้อมูลเกี่ยวกับอุปกรณ์ที่พร้อมใช้งานและ ระบุอุปกรณ์ที่จะใช้เรียกใช้โมเดล การให้ข้อมูลเกี่ยวกับ อุปกรณ์ที่พร้อมใช้งานช่วยให้แอปได้รับไดรเวอร์เวอร์ชันที่แน่นอน ซึ่งพบในอุปกรณ์เพื่อหลีกเลี่ยงปัญหาความไม่เข้ากันที่ทราบ การให้ความสามารถแก่แอปในการระบุอุปกรณ์ที่จะเรียกใช้ส่วนต่างๆ ของโมเดล จะช่วยให้แอปได้รับการเพิ่มประสิทธิภาพสำหรับผลิตภัณฑ์ที่นำไปใช้งาน
การรองรับการค้นพบและการกำหนดอุปกรณ์เป็นสิ่งจำเป็นสำหรับการใช้งาน NN HAL 1.2
การใช้งาน
หากต้องการรองรับฟีเจอร์การค้นหาและการกำหนดอุปกรณ์ใน NNAPI ให้ใช้
getType
และ
getVersionString
ใน IDevice.hal
เพื่ออนุญาตให้เฟรมเวิร์กรับประเภทอุปกรณ์และเวอร์ชันไดรเวอร์
สำหรับอุปกรณ์แต่ละเครื่อง ให้ระบุประเภทเป็นหมวดหมู่ใดหมวดหมู่หนึ่งต่อไปนี้ตามที่ระบุไว้ใน
DeviceType
ใน
types.hal
OTHER
: อุปกรณ์ที่ไม่อยู่ในหมวดหมู่อื่นๆ รวมถึงอินเทอร์เฟซแบบไม่เหมือนกัน ซึ่งเป็นอินเทอร์เฟซIDevice
เดียวที่จัดการอุปกรณ์หลายเครื่อง ซึ่งอาจเป็นอุปกรณ์ประเภทต่างๆ ไดรเวอร์ที่มีอินเทอร์เฟซแบบไม่เหมือนกันควรแสดงอินเทอร์เฟซIDevice
แยกต่างหากที่สอดคล้องกับอุปกรณ์แต่ละเครื่องเพื่อให้แอปพลิเคชันเลือกจากอุปกรณ์เหล่านั้นได้CPU
: CPU แบบแกนเดียวหรือหลายแกนGPU
: GPU ที่เรียกใช้โมเดล NNAPI และเร่งความเร็ว API กราฟิก เช่น OpenGL ES และ Vulkan ได้ACCELERATOR
: หน่วยประมวลผลประสาท (NPU) โดยเฉพาะ
ใช้
getVersionString
ใน IDevice.hal
เพื่อรับสตริงเวอร์ชันของการติดตั้งใช้งานอุปกรณ์
เมธอดนี้ต้องคืนค่าสตริงที่มนุษย์อ่านได้ รูปแบบของ
สตริงจะขึ้นอยู่กับผู้ให้บริการ สตริงเวอร์ชันต้องแตกต่างกันสำหรับไดรเวอร์เวอร์ชันใหม่แต่ละเวอร์ชัน
ชื่อของอินเทอร์เฟซ IDevice
ต้องเป็นไปตามรูปแบบ {VENDOR}-{DEVICE_NAME}