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

ใน Android 10 Neural Networks API (NNAPI) เปิดตัวฟังก์ชันที่ช่วยให้ไลบรารีและแอปเฟรมเวิร์กแมชชีนเลิร์นนิงรับข้อมูลเกี่ยวกับอุปกรณ์ที่มีอยู่และระบุอุปกรณ์ที่จะทำโมเดล การให้ข้อมูลเกี่ยวกับอุปกรณ์ที่ใช้ได้ช่วยให้แอปรับเวอร์ชันที่แน่นอนของไดรเวอร์ที่พบในอุปกรณ์เพื่อหลีกเลี่ยงการทำงานร่วมกันที่ไม่เข้ากันได้ที่ทราบ การให้แอประบุได้ว่าอุปกรณ์ใดควรเรียกใช้ส่วนต่างๆ ของโมเดล จะช่วยให้เพิ่มประสิทธิภาพแอปสำหรับผลิตภัณฑ์ที่นำไปใช้ได้

ต้องมีการสนับสนุนการค้นหาและการกำหนดอุปกรณ์สำหรับการติดตั้งใช้งาน NN HAL 1.2

การใช้งาน

หากต้องการรองรับฟีเจอร์การค้นพบและการกําหนดอุปกรณ์ใน NNAPI ให้ติดตั้งใช้งาน getType และ getVersionString ใน IDevice.hal เพื่อให้เฟรมเวิร์กรับประเภทอุปกรณ์และเวอร์ชันไดรเวอร์

สําหรับอุปกรณ์แต่ละเครื่อง ให้ระบุประเภทเป็นหมวดหมู่ใดหมวดหมู่หนึ่งต่อไปนี้ ตามที่ระบุไว้ใน DeviceType ใน types.hal

  • OTHER: อุปกรณ์ที่ไม่จัดอยู่ในหมวดหมู่อื่นๆ ซึ่งรวมถึงอินเทอร์เฟซที่หลากหลาย ซึ่งเป็นIDeviceอินเทอร์เฟซเดียวที่จัดการอุปกรณ์หลายเครื่อง ซึ่งอาจเป็นอุปกรณ์ประเภทต่างๆ ไดร์เวอร์ที่มีอินเทอร์เฟซที่หลากหลายควรแสดงอินเทอร์เฟซ IDevice แยกต่างหากซึ่งสอดคล้องกับอุปกรณ์แต่ละเครื่องเพื่อให้แอปพลิเคชันเลือกจากอุปกรณ์เหล่านั้นได้
  • CPU: CPU แบบ 1 หรือหลายแกน
  • GPU: GPU ที่เรียกใช้โมเดล NNAPI และเร่งความเร็ว API สำหรับกราฟิกได้ เช่น OpenGL ES และ Vulkan
  • ACCELERATOR: หน่วยประมวลผลระบบประสาท (NPU) โดยเฉพาะ

ติดตั้งใช้งาน getVersionString ใน IDevice.hal เพื่อรับสตริงเวอร์ชันของการติดตั้งใช้งานอุปกรณ์ เมธอดนี้ต้องแสดงผลสตริงที่มนุษย์อ่านได้ รูปแบบของสตริงจะเจาะจงผู้ให้บริการ สตริงเวอร์ชันต้องไม่ซ้ำกันสำหรับไดรเวอร์เวอร์ชันใหม่แต่ละเวอร์ชัน

ชื่ออินเทอร์เฟซ IDevice ต้องเป็นไปตามรูปแบบ {VENDOR}-{DEVICE_NAME}