การค้นหาและการกําหนดอุปกรณ์

ใน 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}