การเพิ่มประสิทธิภาพที่มุ่งเน้นความคิดเห็นอัตโนมัติ (12 ขึ้นไป)

ระบบบิลด์ของ Android ที่เปิดตัวใน Android 12 รองรับการเพิ่มประสิทธิภาพโมดูล Android ที่มาพร้อมเครื่องที่มีกฎการสร้างแบบพิมพ์เขียวโดยใช้การเพิ่มประสิทธิภาพที่มุ่งเน้นความคิดเห็นโดยอัตโนมัติ (AutoFDO) AutoFDO เป็นเทคนิคการเพิ่มประสิทธิภาพที่อิงตามการสุ่มตัวอย่าง AutoFDO จะบันทึกลักษณะการทำงานรันไทม์ของไบนารีของระบบ ซึ่งช่วยให้คอมไพเลอร์เพิ่มประสิทธิภาพได้ดียิ่งขึ้นและลดขนาดไบนารีได้ด้วย Android รองรับการเก็บรวบรวมโปรไฟล์จากอุปกรณ์ X86, X86_64, ARM และ ARM64 แม้ว่าโปรไฟล์จะใช้ได้กับสถาปัตยกรรมต่างๆ

AutoFDO เป็นเครื่องมือที่สืบทอดมาจากการเพิ่มประสิทธิภาพตามโปรไฟล์ที่อิงตามเครื่องมือวัด (PGO)

เมื่อเทียบกับโปรไฟล์ที่อิงตามเครื่องมืออื่นๆ AutoFDO มีประโยชน์เพิ่มเติมดังต่อไปนี้

  • การรวบรวมข้อมูลที่รบกวนผู้ใช้น้อยที่สุด: รวบรวมโปรไฟล์ AutoFDO จากอุปกรณ์การพัฒนาหรืออุปกรณ์ของผู้ใช้ได้โดยไม่ต้องแก้ไขกฎการสร้าง

  • การนําเสนอการใช้งานในชีวิตจริง: AutoFDO แสดงพฤติกรรมการใช้งานในชีวิตจริงโดยสมมติว่ามีการรวบรวมโปรไฟล์จากอุปกรณ์ของผู้ใช้ ส่วน PGO ที่ใช้เครื่องมือวัดจะแสดงเฉพาะปริมาณงานการรวบรวมข้อมูลสังเคราะห์ โดยทั่วไปแล้ว การสร้างปริมาณงานของคอลเล็กชันที่ตรงกับการใช้งานจริงอย่างสมบูรณ์นั้นไม่ใช่เรื่องง่าย

AOSP มาพร้อมกับโปรไฟล์ AutoFDO สำหรับโปรเจ็กต์ที่สำคัญต่อประสิทธิภาพมากที่สุด โดยรวบรวมโปรไฟล์จากอุปกรณ์โทรศัพท์และแท็บเล็ต และแสดงถึงรูปแบบการใช้งานทั่วไป โปรไฟล์จะอยู่ในส่วน toolchain/pgo-profiles/sampling AFDO จะเปิดใช้โดยค่าเริ่มต้นใน AOSP

เปิดใช้ AutoFDO สำหรับกฎการสร้างบิลด์เพลต

หากต้องการเปิดใช้ AutoFDO สำหรับกฎการสร้างแบบพิมพ์เขียว ให้เพิ่ม afdo: true ต่อท้ายไลบรารีที่ใช้ร่วมกันหรือกฎไบนารี

รวบรวมโปรไฟล์

โปรไฟล์แพ็กเกจล่วงหน้าที่มาพร้อมกับ AOSP ไม่รองรับสถานการณ์ที่เฉพาะเจาะจงเหล่านี้

  • การรวมโปรเจ็กต์ AutoFDO เพิ่มเติม
  • การมีโค้ดที่แก้ไขในเครื่อง
  • รูปแบบการใช้งานที่ไม่ซ้ำซึ่งเชื่อมโยงกับระบบของคุณ

หากมีสถานการณ์ใดสถานการณ์หนึ่งเหล่านี้ คุณต้องรวบรวมโปรไฟล์จากอุปกรณ์การพัฒนาหรืออุปกรณ์ของผู้ใช้โดยตรง

โปรดดูวิธีการโดยละเอียดเกี่ยวกับวิธีเตรียมอุปกรณ์ ARM เพื่อรวบรวมโปรไฟล์ AutoFDO ที่หัวข้อรวบรวมข้อมูล ETM สําหรับ AutoFDO

ดูข้อมูลเกี่ยวกับวิธีเปิดใช้การเก็บรวบรวม ประมวลผล และอัปโหลดโปรไฟล์ในเบื้องหลังโดยอัตโนมัติได้ที่ Profcollect

วิเคราะห์โปรไฟล์ AutoFDO

Android ใช้โปรไฟล์ LLVM AutoFDO มาตรฐาน โปรไฟล์ AFDO อ่านได้โดยใช้เครื่องมือ llvm-profdata ของ LLVM สคริปต์ afdo_summary.sh (toolchain/pgo-profiles/scripts/afdo_summary.sh) จะสร้างฟังก์ชันที่เรียกใช้บ่อยที่สุดโดยอัตโนมัติตามโปรไฟล์ AutoFDO