কার্যকলাপ মনিটরে মেমরি প্রেসার গ্রাফের জন্য ওয়াই মান কীভাবে গণনা করা হয়?


41

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 চাপ ছিল) এর চেয়েও কম চাপ ছিল

সুতরাং, যখন এটি সেই গ্রাফটি প্লট করে, ওয়াই মানের জন্য গণনাটি কী এবং কমান্ড লাইন থেকে এটি গণনা করার জন্য আমার যে ডেটা প্রয়োজন তা কীভাবে পেতে পারি? আমি একটি কমান্ড লাইন সরঞ্জাম তৈরি করতে চাইছি যা সেই গ্রাফটিতে বর্তমান লাইনটি কতটা উচ্চতর হবে তার একটি শতাংশকে থুতু ছড়িয়ে দেবে, সুতরাং যে কোনও সময় মূল্য নির্ধারণ করতে এবং সেই সাথে এর পরিসীমাটি কতটা হবে তা আমার জানতে হবে সম্ভাব্য মান।


7
দুর্দান্ত প্রশ্ন। ক্রিয়াকলাপ মনিটর 0% থেকে 100% পর্যন্ত স্কেলে চাপ দেখায় তবে কমান্ড লাইনের মন্তব্যগুলির বিষয়ে আমি কোনও রেফারেন্স পাইনি। আমি এই সপ্তাহে একটি উত্তর জন্য যথেষ্ট খনন করতে পারেন তা আমি দেখতে পাবেন। আমরা কি অনুমান করতে পারি যে আপনি কেবল 10.10.x এ আগ্রহী?
bmike

3
ধন্যবাদ. এবং হ্যাঁ, আমি ১০.০২.২০ এ আছি, সুতরাং এর জন্যই আমি কেবল এটিই উদ্বিগ্ন।
রাউগতুরি

5
আকর্ষণীয় ডেটা পয়েন্ট। এটি এখনও আমার কাছে স্পষ্ট নয় যে কীভাবে অ্যালগরিদম ডিজাইন করা বা কোড করা হয়েছে - বা এটি সংস্করণ থেকে অন্য সংস্করণে একই থাকে। এ সম্পর্কে কিছু সুন্দর মন্তব্য এবং আরও ডেটার জন্য আপেল.স্ট্যাকেক্সেঞ্জার / প্রশ্নগুলি 107126/… দেখুন ।
বমিকে

উত্তর:


2

এটি বর্তমানে কেবল একটি আংশিক উত্তর। এই উত্তরটি সম্পূর্ণ না হওয়া পর্যন্ত এই বাক্যটি অপসারণ করা হয়।

এই প্রশ্নের কথাটি হ'ল এটির মুখোমুখি, ওপি দ্বারা বর্ণিত কমান্ডটি ব্যবহার করার সময় টার্মিনাল-এ বর্ণিত প্রতিবেদনের সাথে তুলনা করার সময় মেমরি প্রেসার গ্রাফটি যথেষ্ট অর্থবোধ করে না:

sysctl -a vm | grep page_free && sysctl vm.memory_pressure && sysctl kern.memorystatus_vm_pressure_level

তবে, এখানে সমস্যা হ'ল এই কমান্ডটি তার প্রতিবেদন করা vm মানগুলিকে সীমাবদ্ধ করে। প্রকৃতপক্ষে মোট 105 টি মান রয়েছে তবে এই কমান্ডটি কেবল নিম্নলিখিত পাঁচটি মানকে রিপোর্ট করে:

vm.vm_page_free_target:
vm.page_free_wanted:
vm.page_free_count:
vm.memory_pressure:
kern.memorystatus_vm_pressure_level:

দ্রষ্টব্য: সংখ্যাগত মানগুলি সাধারণত কোলন (:) এর পরে উপস্থিত হয় তবে আমি এগুলি অন্তর্ভুক্ত করি না।

স্পষ্টতই, 105 ভিএম মানের অপ্রতিরোধ্য সংখ্যাগরিষ্ঠ প্রকৃত গণনার অংশ নয় যা মেমরির চাপ নির্ধারণ করে, তবে এখানে সমস্যাটি হ'ল উপরের পাঁচটি মান কেবল মেমরির চাপ গণনা করার জন্য ব্যবহৃত হয় না

উদাহরণস্বরূপ, যখন উপরের আউটপুটটি বিভিন্ন বিনামূল্যে মান সরবরাহ করে, এটি কোনও নিষ্ক্রিয় মান ইত্যাদি সরবরাহ করে না etc.

এই মানগুলি গুরুত্বপূর্ণ কারণ মেমরি প্রেসার অ্যালগোরিদম সেই মানগুলির মধ্যে একটি অনুপাত গণনা করে, এবং সেই মানগুলির মধ্যে সম্পর্কটি ওপির প্রশ্নের কমান্ড দ্বারা উত্পাদিত আউটপুট থেকে আপাত হয় না।

আমি মনে করি আমার কাছে কিছু প্রযুক্তিগত তথ্য থাকতে পারে যা এটি আরও আলোকপাত করতে পারে। আমি এই উত্তরটি সপ্তাহের মধ্যেই কোনওভাবে আপডেট করব।

[অবস্থা হালনাগাদ]

আমি যে প্রযুক্তিগত তথ্য সন্ধান করছিলাম তা সন্ধান করতে অক্ষম হয়েছি। যাইহোক, আমি মোটামুটি নিশ্চিত আমি এখনও এটি আছে - সম্ভবত কিছু পুরানো সিডিআর / ডিভিডিআর ব্যাকআপ নেভিগেশন। আমি এই উত্তরটি একবার পেয়ে গেলে আমি আপডেট করব বা আমি নিশ্চিত হওয়ার পরে আমি এটি খুঁজে পাব না।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.