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