รันไทม์ NNAPI

โมดูลรันไทม์ NNAPI เป็นไลบรารีที่ใช้ร่วมกันซึ่งอยู่ระหว่างแอปกับ ไดรเวอร์แบ็กเอนด์ Android Neural Networks API (NNAPI) เป็น Android C API ที่ออกแบบมาเพื่อเรียกใช้การดำเนินการที่ต้องใช้การคำนวณจำนวนมาก สำหรับการแมชชีนเลิร์นนิงในอุปกรณ์เคลื่อนที่ และเปิดใช้การดำเนินการอนุมานที่เร่งด้วยฮาร์ดแวร์ ในอุปกรณ์ Android โมดูลนี้อัปเดตได้ ซึ่งหมายความว่าโมดูล สามารถรับการอัปเดตฟังก์ชันการทำงานนอกรอบการเปิดตัว Android ปกติ ได้

ประโยชน์ของการแยกส่วนรันไทม์ NNAPI มีดังนี้

  • ผู้ใช้ปลายทางจะได้รับความสอดคล้องและความเข้ากันได้ที่ดียิ่งขึ้น

  • นักพัฒนาแพลตฟอร์มสามารถแก้ไขข้อบกพร่องในรันไทม์ของ NNAPI, ปรับปรุงการโต้ตอบของรันไทม์ NNAPI กับไดรเวอร์ และติดตั้งใช้งานฟีเจอร์ใหม่ๆ ที่ช่วยปรับปรุงความสามารถ ความเสถียร ประสิทธิภาพ และความสมบูรณ์ของ NNAPI

  • นักพัฒนาแอปจะได้รับความเข้ากันได้และประสิทธิภาพของแอปที่ดียิ่งขึ้นด้วยเคอร์เนล CPU ที่อัปเดตแล้ว

ขอบเขตของโมดูล

สำหรับ Android 12 ขึ้นไป การแก้ไข NNAPI HAL จะใช้ AIDL แทน HIDL

สำหรับ Android 11 และต่ำกว่า ขอบเขตของโมดูลรันไทม์ NNAPI คือ platform/frameworks/ml/nn:libneuralnetworks.so

รูปแบบโมดูล

โมดูลรันไทม์ NNAPI (com.android.neuralnetworks) อยู่ในรูปแบบ APEX และพร้อมใช้งานสำหรับอุปกรณ์ที่ใช้ Android 11 ขึ้นไป

ทรัพยากร Dependency ของโมดูล

โมดูลรันไทม์ NNAPI นี้ขึ้นอยู่กับ NNAPI HAL และ AHardwareBuffer

การทดสอบ

หากต้องการยืนยันฟังก์ชันการทำงานของโมดูลรันไทม์ NNAPI ให้ใช้การทดสอบชุดเครื่องมือทดสอบความเข้ากันได้ (CTS) และชุดทดสอบของผู้ให้บริการ (VTS) ของ Android