การใช้ NPU ของ Qualcomm สําหรับการพัฒนา AI บนอุปกรณ์เคลื่อนที่ด้วย LiteRT

เมื่อโมเดล AI บนอุปกรณ์เคลื่อนที่มีจำนวนเพิ่มขึ้น นักพัฒนา LiteRT จำเป็นต้องเพิ่มประสิทธิภาพให้สูงสุด NPU มีความสำคัญมากขึ้นเรื่อยๆ สําหรับ AI ในอุปกรณ์ เนื่องจากมีเวลาในการตอบสนองที่ต่ำลง ปริมาณงานที่สูงขึ้น และการใช้พลังงานที่ลดลงเมื่อเทียบกับ CPU และ GPU การใช้ NPU ของ Qualcomm® ผ่าน Qualcomm AI Engine Direct Delegate ช่วยปรับปรุงประสิทธิภาพของแอป AI บนอุปกรณ์เคลื่อนที่ใน Snapdragon ได้อย่างมีนัยสำคัญ ทีม Google AI Edge จะสาธิตการผสานรวมผู้รับมอบสิทธิ์นี้ในแอป Android ร่วมกับ Qualcomm โดยเน้นประสิทธิภาพที่เพิ่มขึ้นเมื่อเทียบกับโปรเซสเซอร์แบบดั้งเดิมและแสดงวิธีเริ่มต้นใช้งาน

Qualcomm AI Engine Direct Delegate

Qualcomm AI Engine Direct Delegate ช่วยให้ผู้ใช้เรียกใช้โมเดล LiteRT ได้โดยใช้ Qualcomm AI Stack การใช้ Qualcomm AI Engine Direct Delegate เป็นสิ่งจําเป็นต่อการทําการอนุมานใน NPU สําหรับโมเดล LiteRT ในอุปกรณ์ อุปกรณ์ที่รองรับมีดังนี้

  • Snapdragon 8 Gen 1 (SM8450)
  • Snapdragon 8 Gen 2 (SM8550)
  • Snapdragon 8 Gen 3 (SM8650)
  • Snapdragon 8 Elite (SM8750)
  • และอื่นๆ

แอปพลิเคชันในอุปกรณ์เหล่านี้จะได้รับประโยชน์จาก Qualcomm AI Stack โดยมุ่งเน้นที่ NPU ซึ่งให้ประสิทธิภาพที่ดีที่สุดสำหรับโมเดล AI

วิธีใช้ประโยชน์จาก NPU โดยใช้ Qualcomm AI Engine Direct Delegate

ก่อนอื่น ให้ดาวน์โหลด Qualcomm AI Engine Direct Delegate ที่มีอยู่ใน Maven Central หากต้องการตั้งค่าตัวแทนในแอปพลิเคชัน Java ของ Android คุณต้องมี Dependency ต่อไปนี้

dependencies {
 implementation 'com.qualcomm.qti:qnn-runtime:2.34.0'
 implementation 'com.qualcomm.qti:qnn-litert-delegate:2.34.0' }

วิธีใช้ผู้รับมอบสิทธิ์

try {
  // Created default Options
  QnnDelegate.Options options = new QnnDelegate.Options();
  // Set the backend and library path
  options.setBackendType(QnnDelegate.Options.BackendType.HTP_BACKEND);
  options.setSkelLibraryDir(activity.getApplicationInfo().nativeLibraryDir);
  // Create the Delegate instance.
  qnnDelegate = new QnnDelegate(options);
  tfliteOptions.addDelegate(qnnDelegate);
}
catch (UnsupportedOperationException e) {
  // Delegate creation failed
}
tfliteInterpreter = new Interpreter(tfliteModel, tfliteOptions);

หากต้องการดูตัวอย่างแอป Android ที่ใช้ QNN Delegate สำหรับ LiteRT โปรดดูตัวอย่างแอป Android ใน Qualcomm AI Hub

ประโยชน์ด้านประสิทธิภาพ

ในอุปกรณ์ที่มี Snapdragon SOC ที่มี Qualcomm® Hexagon Tensor Processor อุปกรณ์ส่วนใหญ่จะมีประสิทธิภาพเร็วกว่า GPU และ CPU อย่างเห็นได้ชัด HTP ยังเป็นโปรเซสเซอร์ที่ประหยัดพลังงานมากขึ้นสําหรับการประมวลผลเครือข่ายประสาทด้วย เราใช้ MobileNetv2 ซึ่งเป็นโมเดลโอเพนซอร์สที่เพิ่มประสิทธิภาพไว้ล่วงหน้าแล้วเป็นส่วนหนึ่งของโมเดล AI Hub เป็นตัวอย่างสำหรับการวิเคราะห์ประสิทธิภาพนี้

อุปกรณ์ NPU (ผู้รับมอบสิทธิ์ QNN สำหรับ HTP) GPU (GPUv2) CPU (XNNPACK)
Samsung S25 0.3ms 1.8 มิลลิวินาที 2.8 มิลลิวินาที
Samsung S24 0.4ms 2.3 มิลลิวินาที 3.6 มิลลิวินาที
Samsung S23 0.6ms 2.7 มิลลิวินาที 4.1 มิลลิวินาที
อุปกรณ์ NPU (ผู้รับมอบสิทธิ์ QNN สำหรับ HTP) GPU (GPUv2) CPU (XNNPACK)
Samsung S25 24.9ms 43 มิลลิวินาที 481.7 มิลลิวินาที
Samsung S24 29.8ms 52.6 มิลลิวินาที 621.4 มิลลิวินาที
Samsung S23 43.7ms 68.2 มิลลิวินาที 871.1 มิลลิวินาที

ผลิตภัณฑ์ที่มีแบรนด์ Snapdragon และ Qualcomm เป็นผลิตภัณฑ์ของ Qualcomm Technologies, Inc. และ/หรือบริษัทในเครือ

ขั้นตอนถัดไป

โปรดติดตามข้อมูลอัปเดตที่น่าสนใจเพิ่มเติมเกี่ยวกับการใช้ NPUs อย่างราบรื่นสําหรับการพัฒนาแอปพลิเคชัน AI ด้วย LiteRT Next