สำหรับงานการเขียนโปรแกรมส่วนใหญ่ ขนาดหน้าไม่เกี่ยวข้อง อย่างไรก็ตาม หากคุณจัดสรรหน่วยความจำจํานวนมาก ทํางานกับคอมโพเนนต์ที่ได้รับการเพิ่มประสิทธิภาพสูง ติดต่อกับเคอร์เนลโดยตรง หรือดําเนินการกับไฟล์จํานวนมาก การเปลี่ยนไปใช้ขนาดหน้าเว็บ 16 KB ของ Android อาจต้องพิจารณาเพิ่มเติมในการวิเคราะห์ประสิทธิภาพ เอกสารนี้ไฮไลต์วิธีต่างๆ ที่ขนาดหน้าเว็บส่งผลต่อการเปลี่ยนแปลงของประสิทธิภาพ
ตรวจหาปัญหาเกี่ยวกับหน่วยความจํา
เมื่อจัดสรรหน่วยความจำด้วย mmap
โปรดตรวจสอบว่าคุณส่งอาร์กิวเมนต์ที่หารด้วยขนาดหน้าเว็บได้เสมอ หากคุณขอ 4096
ไบต์ในระบบที่มีหน้าขนาด 16 KB เคอร์เนลจะจัดสรร 16 KB
ซึ่งทำให้พื้นที่ว่างเหลือ 12 KB
การดู /proc/maps
, /proc/smaps
(หรือใช้เครื่องมือ showmap
ของ Android ซึ่งจะแสดงพื้นที่ว่างที่เสียไปอย่างสวยงาม) หรือตรวจสอบ strace
ของกระบวนการจะช่วยตรวจหาปัญหาเหล่านี้ได้
ตรวจหาปัญหาเกี่ยวกับพื้นที่เก็บข้อมูลในดิสก์
อุปกรณ์ที่เปิดใช้งานใน Android 15 ขึ้นไปจะมี ELF ที่สอดคล้องกับ 16 KB โดยค่าเริ่มต้น และแอปพลิเคชันจำนวนมากก็สอดคล้องกับ 16 KB ด้วย ไฟล์จำนวนมากมีการเพิ่มการถ่วงมากไม่ว่าระบบจะเป็นอย่างไรก็ตาม หากต้องการดูขนาดจริงในดิสก์ ให้ใช้ du <my file>
เพื่อดูจำนวนกิโลไบต์ที่ไฟล์ใช้ หากต้องการดูขนาดที่ปรากฏของไฟล์ ให้ใช้ du -b <my file>
ซึ่งจะแสดงขนาดเป็นไบต์ เมื่อขนาดที่ปรากฏใหญ่กว่าขนาดจริง มักหมายความว่าไฟล์ถูกบีบอัดหรือมีบริเวณที่ห่างกันมาก เมื่อขนาดที่ปรากฏเล็กกว่าขนาดจริง แสดงว่าไฟล์อาจมีข้อมูลเมตาเพิ่มเติมหรืออาจมีการแยกไฟล์ในดิสก์ การตรวจสอบเหล่านี้ช่วยให้คุณวิเคราะห์ขนาดจริงของไฟล์ในดิสก์ได้