هذه الإعدادات متاحة في system.settings، وهي مُولَّدة تلقائيًا من الملف المصدري.
memory_profiler_sample_max_allocation_size
يجمع عمليات التخصيص العشوائية التي يكون حجمها أقل من القيمة المحددة أو مساويًا لها، باحتمال يساوي memory_profiler_sample_probability. وتعني القيمة 0 أن هذه الميزة معطّلة. قد ترغب في تعيين max_untracked_memory إلى 0 لكي تعمل هذه العتبة كما هو متوقع.
memory_profiler_sample_min_allocation_size
اجمع عمليات تخصيص الذاكرة العشوائية التي يكون حجمها أكبر من أو مساويًا للقيمة المحددة، باحتمال يساوي memory_profiler_sample_probability. تعني القيمة 0 أن هذا الإعداد معطّل. قد ترغب في تعيين max_untracked_memory إلى 0 لكي تعمل هذه العتبة كما هو متوقع.
memory_profiler_sample_probability
اجمع عمليات تخصيص الذاكرة وتحريرها العشوائية واكتبها في system.trace_log مع trace_type بقيمة 'MemorySample'. تُطبَّق هذه الاحتمالية على كل عملية alloc/free بغضّ النظر عن حجم التخصيص (يمكن تغيير ذلك باستخدام memory_profiler_sample_min_allocation_size وmemory_profiler_sample_max_allocation_size). لاحظ أن أخذ العينات يحدث فقط عندما تتجاوز كمية الذاكرة غير المتعقَّبة قيمة 'max_untracked_memory'. وقد ترغب في ضبط 'max_untracked_memory' على 0 للحصول على أخذ عينات أكثر دقةً وتفصيلاً.
memory_profiler_step
يُحدِّد قيمة الخطوة لمُحلِّل الذاكرة. كلما تجاوز استخدام ذاكرة الاستعلام العتبة التالية بعدد البايتات المحدد، يجمع مُحلِّل الذاكرة تتبّع المكدس الخاص بعملية التخصيص ويكتبه في trace_log.
القيم الممكنة:
-
عدد صحيح موجب من البايتات.
-
0 لإيقاف مُحلِّل الذاكرة.