หน้านี้อธิบายแนวทางปฏิบัติแนะนำในการใช้ไดรเวอร์ Neural Networks API (NNAPI) เพื่อให้นักพัฒนาแอปนำ NNAPI ไปใช้ในวงกว้าง
ใช้เวลาในการเริ่มต้นระบบให้สั้น
หากไดรเวอร์เปลี่ยนน้ำหนักของโมเดลเมื่อใช้งานครั้งแรก ให้ตรวจดูว่าไดรเวอร์รองรับการแคชการคอมไพล์ ซึ่งจะลดเวลาที่ใช้ในการคอมไพล์เมื่อแอปเริ่มทำงาน ขั้นตอนนี้มีความสำคัญเนื่องจากแอปอาจหลีกเลี่ยงการใช้การเร่งฮาร์ดแวร์ หากเวลาเริ่มต้นนานเกินไป เช่น แอปบางแอปมีน้ำหนักมากกว่า 100 MB และการแปลงรูปแบบเหล่านี้ทุกครั้งที่เปิดแอปนั้นสิ้นเปลืองทรัพยากร
ลดเวลาในการตอบสนองให้น้อยที่สุด
คุณต้องลดเวลาในการตอบสนองขั้นต่ำในไดรเวอร์เพื่อให้โมเดลใช้การเร่งด้วยฮาร์ดแวร์ แอปจำนวนมากใช้โมเดลขนาดเล็กที่มีการเรียกใช้หลายครั้ง และหากเวลาในการตอบสนองต่ำที่สุดในการดำเนินการภาระงานสูงเกินไป เช่น ไม่กี่มิลลิวินาที โมเดลอาจเรียกใช้ภาระงานบน CPU ซึ่งใช้เวลาเพียง 1 หรือ 2 มิลลิวินาที แทนที่จะใช้การเร่งฮาร์ดแวร์ ระวังการซิงค์เธรดที่สิ้นเปลืองทรัพยากร
ใช้กลุ่ม NN HAL SchedTune
ตั้งแต่ Android 11 ขึ้นไป AOSP จะมีกลุ่ม SchedTune สำหรับ NN HAL โดยเฉพาะ ซึ่งช่วยให้กระบวนการ NN HAL ระหว่างกระบวนการต่างๆ ใช้ Big Core ได้ คล้ายกับการใช้งานกระบวนการเดียวกันภายใน top-app
cgroup ที่กําหนดไว้ล่วงหน้า การใช้กลุ่ม StchedTune นี้ช่วยลดค่าใช้จ่ายให้กับผู้ขับ โดยเฉพาะอย่างยิ่งสำหรับรถรุ่นขนาดเล็ก
หากต้องการใช้กลุ่ม SchedTune ให้เพิ่มบรรทัดต่อไปนี้ลงในไฟล์ init.rc
ของกระบวนการ NN HAL
writepid /dev/stune/nnapi-hal/tasks