বেশিরভাগ প্রোগ্রামিং কাজের জন্য পেজ সাইজ প্রাসঙ্গিক নয়। তবে, আপনি যদি প্রচুর পরিমাণে মেমরি বরাদ্দ করেন, অত্যন্ত অপ্টিমাইজ করা কম্পোনেন্ট নিয়ে কাজ করেন, সরাসরি কার্নেলের সাথে ইন্টারফেস করেন, অথবা বড় পরিমাণে ফাইল ম্যানিপুলেশন করেন, তাহলে অ্যান্ড্রয়েডের ১৬ কিলোবাইট পেজ সাইজে পরিবর্তন আপনার পারফরম্যান্স বিশ্লেষণে কিছু নতুন বিষয় বিবেচনা করতে পারে। এই ডকুমেন্টটিতে পেজ সাইজ কীভাবে পারফরম্যান্সের গতিপ্রকৃতি পরিবর্তন করে, তার কয়েকটি উপায় তুলে ধরা হয়েছে।
স্মৃতিশক্তির সমস্যা সনাক্ত করুন
mmap ব্যবহার করে মেমরি বরাদ্দ করার সময়, নিশ্চিত করুন যে আপনি সর্বদা পেজ সাইজের গুণিতক একটি আর্গুমেন্ট পাস করছেন। যদি আপনি ১৬ কিলোবাইট পেজ সাইজের কোনো সিস্টেমে 4096 বাইট অনুরোধ করেন, তাহলে কার্নেল 16 KB বরাদ্দ করে, যার ফলে 12 KB জায়গা নষ্ট হয়। /proc/maps বা /proc/smaps দেখা (অথবা অ্যান্ড্রয়েড টুল showmap ব্যবহার করা, যা নষ্ট হওয়া জায়গার পরিমাণ সুন্দরভাবে প্রিন্ট করে), কিংবা আপনার প্রসেসের strace পরীক্ষা করা এই ধরনের ঘটনা শনাক্ত করতে সাহায্য করতে পারে।
ডিস্ক স্পেস সমস্যা সনাক্ত করুন
অ্যান্ড্রয়েড ১৫ এবং তার পরবর্তী সংস্করণে চালু হওয়া ডিভাইসগুলিতে ডিফল্টরূপে ১৬ কিলোবাইট অ্যালাইনড ELF ফাইল থাকে এবং অনেক অ্যাপ্লিকেশনও ১৬ কিলোবাইট অ্যালাইনড হয়ে থাকে। সিস্টেম নির্বিশেষে, অনেক ফাইলে অতিরিক্ত প্যাডিং থাকে। ডিস্কে ফাইলের আসল আকার দেখতে, আপনি du <my file> ব্যবহার করে ফাইলটি কত কিলোবাইট জায়গা নেয় তা দেখতে পারেন। ফাইলের আপাত আকার দেখতে, আপনি du -b <my file> ব্যবহার করতে পারেন, যা আপনাকে ফাইলের আকার বাইটে দেখাবে। যখন আপাত আকার আসল আকারের চেয়ে বড় হয়, তখন এর মানে সাধারণত ফাইলটি কম্প্রেস করা হয়েছে বা এতে স্পার্স (sparse) অঞ্চল রয়েছে। যখন আপাত আকার আসল আকারের চেয়ে ছোট হয়, তখন সম্ভবত ফাইলটিতে অতিরিক্ত মেটাডেটা রয়েছে বা এটি ডিস্কে বিভক্ত থাকতে পারে। এই পরীক্ষাগুলি ব্যবহার করে, আপনি ডিস্কে থাকা ফাইলগুলির আসল আকার বিশ্লেষণ করতে পারেন।