vm.memory_pressure
ওএস এক্স ১০.০.০.২ - জোসেমাইটে কীভাবে মান সীমাবদ্ধ / গণনা করা হয়?
আমি এই প্রশ্নের বেশ কয়েকটি উত্তর অনুসন্ধান করেছি এবং ক্রিয়াকলাপ মনিটরের গ্রাফগুলি না দেখে সঠিক মান পেতে কমান্ড লাইনে কয়েকটি বিষয় চেষ্টা করছি।
হালকা বোঝা অধীনে সিস্টেমের সাথে:
~ ❯❯❯ sysctl -a vm | grep page_free && sysctl vm.memory_pressure && sysctl kern.memorystatus_vm_pressure_level
vm.vm_page_free_target: 4000
vm.page_free_wanted: 0
vm.page_free_count: 2683717
vm.memory_pressure: 0
kern.memorystatus_vm_pressure_level: 1
Kern.memorystatus_vm_pressure_level ঠিক দেখতে দেখতে এবং এটি গ্রাফটি রঙ করার জন্য যা ব্যবহার করে তা উপস্থিত হয় (1-সাধারণের জন্য সবুজ, 2-WARN এর জন্য হলুদ, 4-ক্রিটিকালের জন্য লাল)। যাইহোক, vm.memory_pressure 0 হয় এবং গ্রাফটিতে কিছু পরিমাণ সবুজ থাকে এবং এটি জাজড হয়, যার অর্থ মান 0 সাথে বসে নয়, সময়ের সাথে স্পষ্টভাবে পরিবর্তিত হচ্ছে।
ভারী বোঝার নিচে এটি দেখতে এটির মতো দেখাচ্ছে:
❯❯❯ sysctl -a vm | grep page_free && sysctl vm.memory_pressure && sysctl kern.memorystatus_vm_pressure_level
vm.vm_page_free_target: 4000
vm.page_free_wanted: 0
vm.page_free_count: 32572
vm.memory_pressure: 1693
kern.memorystatus_vm_pressure_level: 4
অথবা এটা...
~ ❯❯❯ sysctl -a vm | grep page_free && sysctl vm.memory_pressure && sysctl kern.memorystatus_vm_pressure_level
vm.vm_page_free_target: 4000
vm.page_free_wanted: 0
vm.page_free_count: 5431
vm.memory_pressure: 277
kern.memorystatus_vm_pressure_level: 4
অথবা এটা...
~ ❯❯❯ sysctl -a vm | grep page_free && sysctl vm.memory_pressure && sysctl kern.memorystatus_vm_pressure_level
vm.vm_page_free_target: 4000
vm.page_free_wanted: 3220
vm.page_free_count: 805
vm.memory_pressure: 1
kern.memorystatus_vm_pressure_level: 4
আমি এখানে বিভ্রান্ত যেখানে। এই একক মানগুলি কোনও একাই বেশ কয়েকটি কারণে সম্ভবত গ্রাফের ওয়াই মান হতে পারে না।
প্রথমত, vm.memory_pressure সাধারণ লোডের নিচে প্রায় সব সময় 0 এ বসে এবং গ্রাফ 0-এ বসে না।
দ্বিতীয়ত, তারা একে অপরের সাথে সামঞ্জস্যপূর্ণ নয়। মেমরি_প্রেসরের মানটির দিকে তাকালে এটি কম হয় যখন এটি পৃষ্ঠাগুলি চেয়েছিল (3220 চেয়েছিল এবং কেবল 1 চাপ ছিল) যখন এটি 5431 নিখরচায় ছিল এবং কোনওটিই চায় নি (চাপ 277 ছিল)। এবং একরকম এটি 32572 মুক্ত (এবং 1693 চাপ ছিল) এর চেয়েও কম চাপ ছিল
সুতরাং, যখন এটি সেই গ্রাফটি প্লট করে, ওয়াই মানের জন্য গণনাটি কী এবং কমান্ড লাইন থেকে এটি গণনা করার জন্য আমার যে ডেটা প্রয়োজন তা কীভাবে পেতে পারি? আমি একটি কমান্ড লাইন সরঞ্জাম তৈরি করতে চাইছি যা সেই গ্রাফটিতে বর্তমান লাইনটি কতটা উচ্চতর হবে তার একটি শতাংশকে থুতু ছড়িয়ে দেবে, সুতরাং যে কোনও সময় মূল্য নির্ধারণ করতে এবং সেই সাথে এর পরিসীমাটি কতটা হবে তা আমার জানতে হবে সম্ভাব্য মান।