ปัญหาที่ยากที่สุดอย่างหนึ่งสำหรับนักพัฒนาแอปคือการสร้างภาพเคลื่อนไหวที่ราบรื่นและไม่มีข้อบกพร่อง ซึ่งอาจแก้ไขข้อบกพร่องได้ยากเป็นพิเศษเมื่อระบบ ยังทำงานเบื้องหลังที่ใช้ทรัพยากรมากด้วย การระบุว่าข้อบกพร่องเกิดจากแอปหรือระบบอาจเป็นเรื่องยาก อย่างไรก็ตาม เครื่องมือโปรไฟล์จะช่วยคุณระบุแหล่งที่มาที่เป็นไปได้ของลักษณะการทำงานที่ไม่ดีได้
แสดงผลใน ChromeOS
แอปที่ได้รับการปรับแต่งอย่างละเอียด เช่น เกม มักจะใช้การบัฟเฟอร์ 2 ชั้นเพื่อลดเวลาตอบสนองของผู้ใช้ให้ต่ำที่สุด อย่างไรก็ตาม มีหลายสิ่งหลายอย่างที่อาจทำให้ประสิทธิภาพลดลง ตัวอย่างเช่น หากการแสดงผลเฟรมใช้เวลานานเกินไป ผลลัพธ์ที่แสดงผล จะไม่พร้อมสำหรับการสลับบัฟเฟอร์ครั้งถัดไป และเฟรมก่อนหน้าจะแสดงซ้ำ
จากนั้นโปรแกรมแสดงผลจะเริ่มแสดงผลเฟรมถัดไปไม่ได้ ซึ่งจะทำให้เกิดปัญหามากยิ่งขึ้น สถานการณ์นี้เป็นที่คุ้นเคยสำหรับนักพัฒนาแอปบนอุปกรณ์เคลื่อนที่ Android เมื่อแอป ทํางานบน ChromeOS บริบทจะซับซ้อนยิ่งขึ้น
แอปที่ทำงานบนเดสก์ท็อปจะไม่แสดงผลโดยตรงในเฟรมแสดงผลของหน้าจอ แต่จะแสดงข้อมูลเป็นพื้นผิวแทน โดยปกติแล้วจะมีแอปหลายแอป ซึ่งแต่ละแอปจะแสดงผลกราฟิกเป็นพื้นผิว ระบบจะสร้างมุมมอง บนหน้าจอโดยใช้ Compositor เพื่อรวมพื้นผิวทั้งหมดเป็นรูปภาพเดสก์ท็อปเดียว
Compositor จะทำงานอย่างโปร่งใสในเบื้องหลัง แต่จะทำให้เกิด ความล่าช้า 1 เฟรมเพื่อเพิ่มการใช้ไปป์ไลน์ GPU ให้ได้สูงสุด การหน่วงเวลานี้จะช่วย ลดความผันผวนของประสิทธิภาพระบบและช่วยปรับสมดุลโหลดที่ไม่สมมาตร
เมื่อระบบปฏิบัติการทำงานหนัก GPU อาจถูกบีบให้ทำงานหนักขึ้น ซึ่งทำให้เกิดความล่าช้าระหว่างเวลาที่เฟรมแสดงผลกับเวลาที่เฟรมปรากฏบนหน้าจอ ระบบอาจใช้ การบัฟเฟอร์ 4 เท่าเพื่อชดเชย ทั้งนี้ขึ้นอยู่กับฮาร์ดแวร์ แม้จะมีการบัฟเฟอร์ที่ลึกขึ้น ไปแล้ว แต่ไปป์ไลน์กราฟิกก็ยังอาจทำงานผิดพลาดได้
เครื่องมือติดตามกราฟิก ARC
ChromeOS มีเครื่องมือสร้างโปรไฟล์ที่แสดงวิธีที่บัฟเฟอร์ซึมผ่านระบบ เมื่อมีการสลับหน่วยความจำ ความถี่ในการใช้งาน CPU/GPU และสิ่งที่แอปพลิเคชันของคุณกำลังทำในขณะนั้น ดังที่แสดงในรูปภาพต่อไปนี้
ตั้งค่าโปรไฟล์
หากต้องการใช้โปรไฟล์เลอร์ คุณต้องเรียกใช้ M75 ขึ้นไป ใช้อุปกรณ์ Intel เพื่อให้ได้ผลลัพธ์ที่ดีที่สุด
ก่อนใช้โปรไฟล์เลอร์ ให้เริ่มต้นแอปด้วยการติดตาม
เพิ่ม Trace.traceCounter(Trace.TRACE_TAG_GRAPHICS, "Event", <number>); ลงในโค้ด
ในตำแหน่งที่ต้องการรวมการติดตาม ใช้ Event ที่ขึ้นต้นด้วย
คำนำหน้า customTrace โดยคำนำหน้าจะไม่ปรากฏในข้อความการติดตาม
หากต้องการตั้งค่าโปรไฟล์ ให้ทำตามขั้นตอนต่อไปนี้
- เปิดโหมดนักพัฒนาซอฟต์แวร์
- เปิดการตั้งค่า Chrome แล้วเปิดใช้เครื่องมือการแสดงภาพบัฟเฟอร์กราฟิก ARC
- ไปที่
chrome://arc-graphics-tracing
เรียกใช้โปรไฟล์
- เลือกหยุดเมื่อเกิดข้อบกพร่อง
- เรียกใช้แอป Android
- เมื่อแอป Android ทำงานอยู่และมีโฟกัส ให้กด
Control+Shift+G
เมื่อเกิดข้อบกพร่อง หน้าต่างเบราว์เซอร์จะปรากฏขึ้น ใช้แป้น W และ S เพื่อซูมเข้าและซูมออกไทม์ไลน์