সহজ প্রশ্ন
কীভাবে এসকিউএল সার্ভার কোয়ান্টাম (4 এমএস) সার্ভার ওএস কোয়ান্টামের সাথে সিঙ্ক্রোনাইজ করা হয় (সাধারণত: 187.5 এমএস)?
সাধারণ প্রশ্ন ব্যাখ্যা
ওএস কোয়ান্টামের 184 এমএস ব্যবহারের পরে (যা 46 টি সম্পূর্ণ এসকিউএল কোয়ান্টামের সাথে মিলে যায়) ওএস কোয়ান্টামের সময়কালটি 3.5 মিমি হওয়ার আগে সময়সূচিটি অন্য কোনও প্রক্রিয়াতে হস্তান্তর করতে হবে। এসকিউএল ওএস একটি কোয়ান্টাম (4 এমএস) শুরু করে এবং 3.5 এমএসের পরে, ওএস কোয়ান্টাম বর্তমান এসকিউএল ওএস থ্রেডটি বন্ধ করার সিদ্ধান্ত নিয়েছে যার তফসিলটি উত্পাদনের আগে এখনও 0.5 এমএস রয়েছে। এখন কি ঘটছে?
ওএস কোয়ান্টামে ডিপ ডাইভ
ওএস কোয়ান্টাম এবং কোয়ান্টামের সময়কাল কীভাবে গণনা করা যায় সে সম্পর্কে আমি পরবর্তী কয়েকটি বিভাগে লিখেছি। একটি ওএস "কোয়ান্টাম" এর সময়কাল "টিক্স" এর উপর ভিত্তি করে এবং "টিক" নিজেই "ঘড়ির ব্যবধান" এর উপর ভিত্তি করে যা সাধারণত 15.625000 এমএস হয় is তবে আমাকে কিছুটা বিস্তারিত জানাতে দিন ...
টিক্ টিক্ শব্দ
ব্লগ নিবন্ধে জানুন আপনার টিকটিতে লেখক জিম ঘড়ির ব্যবধানের মূল বিষয়গুলি (ওরফে "টিক্স") এবং সেগুলি কী তা ব্যাখ্যা করে।
যখন আমি "ঘড়ির ব্যবধান ... সর্বাধিক x86 মাল্টিপ্রসেসরের প্রায় 15 মিলিসেকেন্ডের মতো" কিছু পড়ি তখন আমি আমার ঘড়ির মান বা "টিক" অন্তর অন্তর নির্ধারণ করতে বাধ্য হই। ভাগ্যক্রমে, আমি যে বইটিতে এই উক্তিটি পড়েছি, উইন্ডোজ ইন্টারনালস চতুর্থ সংস্করণটি আমাকে আমার দুর্দশায় সাহায্য করার জন্য একটি রেফারেন্স সরবরাহ করে। ... উপরোক্ত বইয়ের লেখক, মার্ক রাশিনোভিচ কৃপণতা সহকারে ইউটিলিটি ক্লকরেসকে তার ওয়েবসাইটে উপলব্ধ করেছেন। এই ইউটিলিটিটি চালানোতে, আমি নির্ধারণ করতে সক্ষম হয়েছি যে আমার x86 মাল্টিপ্রসেসর পিসিতে ঘড়ির ব্যবধান 15.625000 এমএস। আকর্ষণীয়, তবে আমার কৌতূহলী মন আরও জানতে চায়।
পরিমাণ
নিবন্ধটির লেখক তার দ্বিতীয় প্রবন্ধে ব্যাখ্যা করতে যান যে ...
অবশ্যই টিকের ব্যবধানটি কেন গুরুত্বপূর্ণ তা হ'ল এটি থ্রেড শিডিয়ুলিংকে প্রভাবিত করে । উইন্ডোজ শিডিয়ুলার প্রতিটি থ্রেডকে একই অগ্রাধিকার স্তরে চালানোর জন্য অন্য কোনও কার্যের অনুমতি দেওয়ার আগে চালানোর জন্য একটি "কোয়ান্টাম" সময় দেয়। শিডিয়ুলার থ্রেডকে যে পরিমাণ কোয়ান্টাম নির্ধারণ করে তা হ'ল টিক ইন্টারভালের একাধিক । একটি নির্দিষ্ট থ্রেডের জন্য নির্দিষ্ট কোয়ান্টাম মানটি আমি এই নিবন্ধটি দিয়ে যেতে চাই যেখানেই তার বাইরে bit
ঠিক আছে, তাই আমি জানি কোয়ান্টাম কী, তবে কোয়ান্টাম কতক্ষণ চলবে তা নয়।
আপাতত, এক্সপি-তে একটি অগ্রভাগ থ্রেডের জন্য কেবল ডিফল্ট কোয়ান্টাম মানটি পরীক্ষা করা যাক। এক্ষেত্রে উইন্ডোজ শিডিয়ুলার 18 বা 6 টিক অন্তর অন্তর্ভুক্ত করে। (হ্যাঁ, কোয়ান্টামকে টিক অন্তরগুলিতে রূপান্তর করতে, অবশ্যই একটিকে 3 দ্বারা বিভক্ত করতে হবে ... তবে একাধিকের কারণটি শিডিয়ুলারকে কোনও অপারেশন করার জন্য একটি থ্রেড "চার্জ" দেওয়ার ক্ষমতা দেয় যা এটি স্থগিত করে দেয়))
আমরা এখন জানি যে একটি ঘড়ির ব্যবধান (টিক) প্রায় 15.625000 এমএস এবং একটি উইন্ডোজ ডেস্কটপ ওএসে হওয়া উচিত যেখানে ডিফল্ট কোয়ান্টামটি 18 হয় যার ফলস্বরূপ 6 টি টিক বা 93.750000 এমএস (18/3 * 15.625000 এমএস) হবে।
উইন্ডোজ সার্ভার ওএসে ডিফল্ট কোয়ান্টাম আলাদা is "প্রসেসরের সময়সূচী" সেটিংস "পটভূমি পরিষেবা" এ সেট করা আছে
এই সিস্টেমটি "সিস্টেম সেটিংস | অ্যাডভান্সড (ট্যাব) | পারফরম্যান্স (বিভাগ) | সেটিংস ..." এর মাধ্যমে পাওয়া যাবে যা "পেরোফরম্যান্স বিকল্প | উন্নত (ট্যাব) | প্রসেসরের সময়সূচী" খুলবে
ডিফল্ট কোয়ান্টাম সেটিংসগুলি তখন 36 (পটভূমি) থেকে 36 (পূর্বভূমি) হয়। কোয়ান্টাম বড় এবং তাই দীর্ঘ। এটি একটি উইন্ডোজ ডেস্কটপ ওএসে 18 (6 টি টিক) কোয়ান্টাম ফোরগ্রাউন্ড সেটিংয়ের 93.750000 এমএসের দ্বিগুণ, যা ব্যাকগ্রাউন্ড পরিষেবাদির জন্য একটি সার্ভার ওএসে সেট আপ হয়েছে প্রায় 187.500000 এমএস।
পর্যবেক্ষণ / ব্যাখ্যা
আপনি যখন কোনও সার্ভার বা ডেস্কটপে "ব্যাকগ্রাউন্ড পরিষেবাদি" থেকে "অ্যাপ্লিকেশনস" তে সেটিংস পরিবর্তন করেন, তারপরে রেজিস্ট্রিতে এইচকেএলএম Y সিস্টেম \ কারেন্টকন্ট্রোলসেট \ নিয়ন্ত্রণ \ অগ্রাধিকার নিয়ন্ত্রণ ont Win32PrioritySeparation কীটি 0x18 থেকে 0x02 এ পরিবর্তন করা হয়। 0x02 এর জন্য ডিফল্ট কোয়ান্টাম মান কত? এটি একটি মন্তব্যে পাওয়া যাবে:
0x02 মানটি বোঝায় যে "শর্ট বনাম লং" এবং "ভেরিয়েবল বনাম ফিক্সড" ক্ষেত্রগুলি ওএসের জন্য ডিফল্ট।
এক্সপি এবং এক্সপি প্রো এর জন্য এই ক্ষেত্রগুলির জন্য ডিফল্ট হ'ল: সংক্ষিপ্ত এবং পরিবর্তনশীল যা নিম্নলিখিত বিট অতিরিক্ত বিট সেট করার সমান: 0x24।
0x02 এর সাথে এই মানটি OR'টি করা আপনাকে 0x26 দেয় যা আপনি নিবন্ধের সারণীতে খুঁজে পাবেন।
তথ্যসূত্র: "আপনার কোয়ান্টামকে মাস্টার করুন" (এমএসডিএন ব্লগস) -এর মন্তব্য
একই নিবন্ধ থেকে কোয়ান্টাম সেটিংস ব্যাখ্যা করে ছক:
Win32PrioritySeparation Foreground Background
0x28, 0x29, 0x2A 18 18
0x18, 0x19, 0x1A 36 36
0x24 6 6
0x25, 0x14 12 6
0x26 18 6
0x15 24 6
0x16 36 6
ওএস কোয়ান্টামের সংক্ষিপ্তসার
উপরের তথ্য এবং নিবন্ধের উদ্ধৃতিগুলির উপর ভিত্তি করে, আমরা জানি যে কোয়ান্টাম একটি নির্দিষ্ট আকার নয়, বরং সিস্টেম বৈশিষ্ট্যগুলির একটি ওএস সেটিংস থেকে প্রাপ্ত। Win32PrioritySeparation
রেজিস্ট্রিতে সেটিংসের উপর নির্ভর করে একটি কোয়ান্টাম পরিবর্তিত হয় যা সাধারণত "সিস্টেম প্রোপার্টি" (যে কোনও "ব্যাকগ্রাউন্ড পরিষেবাদি" বা "অ্যাপ্লিকেশন") এর সেটিংগুলির একটির সাথে মিলে যায়।
ওএস স্তরের একটি কোয়ান্টাম
- "অ্যাপ্লিকেশন" সেটিংসের জন্য
- অগ্রভূমি অ্যাপ্লিকেশনগুলির জন্য 18 (যা 6 টি টিকি) (93.75 এমএস)
- পটভূমি অ্যাপ্লিকেশনগুলির জন্য 6 (যা 2 টিক) (31.25 এমএস)
- "পটভূমি পরিষেবা" সেটিংসের জন্য
- অগ্রভূমি অ্যাপ্লিকেশনগুলির জন্য 36 (যা 18 টিকি) (187.5 এমএস)
- পটভূমি অ্যাপ্লিকেশনগুলির জন্য 36 (যা 18 টিকি) (187.5 এমএস)
সুতরাং এখন আমরা জানি যে পটভূমি পরিষেবাদিগুলির জন্য অনুকূলিত করার জন্য একটি উইন্ডোজ সার্ভার সেটআপের একটি ওএস কোয়ান্টামটি হ'ল ...
36 / 3 * 15.625000 ms = 187.5 ms
এসকিউএল ওএস কোয়ান্টাম
এই বিভাগে এসকিউএল ওএস কোয়ান্টামে আমি যা পেয়েছি তার তালিকাবদ্ধ করে ...
SOS_SCHEDULER_YIELD অপেক্ষা প্রকার
SOS_SCHEDULER_YIELD অপেক্ষার ধরণে পল রান্ডাল এর বিবরণ থেকে:
এই অপেক্ষা প্রকারটি তখন যখন কোনও থ্রেড তার সম্পূর্ণ থ্রেড কোয়ান্টামের জন্য কার্যকর করতে সক্ষম হয় (এসকিউএল সার্ভারের সমস্ত সংস্করণে 4 মিলিসেকেন্ড, অপরিবর্তনীয় ), এবং তাই স্বেচ্ছায় শিডিউলারটি উপস্থাপিত করে তার শিডিয়ুলারে রান্নেবল কাতার নীচে চলে যায়।
তথ্যসূত্র: SOS_SCHEDULER_YIELD (এসকিউএলএসকিলেস.কম) অপেক্ষা করার প্রকারগুলি)
এসকিউএল সার্ভারের ডিএমভিগুলিতে শিডিয়ুলার
Sys.dm_os_schedulers DMV এর জন্য এসকিউএল সার্ভার DMV- এর একটি ব্যাখ্যায়।
[...] উইন্ডোজ একটি প্রিম্পিটিভ সিডিউলিং মেকানিজম ব্যবহার করে এবং প্রতিটি থ্রেডের জন্য একটি পরিমাণের সিপিইউ সময় দেয়, যখন কোনও থ্রেড তার কোয়ান্টাম গ্রহণ করে এটি একটি সারিতে প্রেরণ করা হয় এবং অন্যান্য থ্রেডগুলি কার্যকর করা হয়।
বিরোধী হিসাবে, এসকিউএল সার্ভার একটি সমবায় নির্ধারিত সময়সূচী প্রক্রিয়া ব্যবহার করে যখন থ্রেডগুলি স্বেচ্ছাসেবী করে তার পরিমাণের পরিমাণ অর্জন করতে পারে (আপনি যখন SOS_SCHEDULER_YIELD অপেক্ষার প্রকার পাবেন তখন আপনি এই আচরণটি দেখতে পাবেন)। এটি এসকিউএল সার্ভারকে সিপিইউ ব্যবহারের অনুকূলকরণ করতে দেয়, কারণ যখন কোনও থ্রেড কার্যকর করার জন্য সংকেত দেওয়া হয় তবে চালানোর জন্য প্রস্তুত না হয় এটি অন্যান্য থ্রেডের পক্ষে তার পরিমাণের পরিমাণ অর্জন করতে পারে ।
তথ্যসূত্র: এসকিউএল সার্ভারের শিডিয়ুলার, কর্মী এবং কার্যাদি (এমএসএসকিউএলটিপস.কম) বোঝা
এসকিউএল সার্ভার সিপিইউ চাপ সনাক্ত করুন
এটি এসকিউএল সার্ভারে সিপিইউ চাপ সম্পর্কিত একটি নিবন্ধের একটি খুব ছোট বিভাগ।
ঘটে যখন কোনও কাজ স্বেচ্ছায় অন্য কাজগুলি সম্পাদনের জন্য সময়সূচী দেয়। এই অপেক্ষার সময় টাস্কটি তার কোয়ান্টামটি পুনর্নবীকরণের জন্য অপেক্ষা করছে ।
তথ্যসূত্র: এসকিউএল সার্ভার সিপিইউ চাপ (এমএসএসকিউএলটিপস.কম) সনাক্ত করুন
sys.dm_os_schedulers (মাইক্রোসফ্ট ডক্স)
আমার ধারণা, নিম্নলিখিত উদ্ধৃতিটি এসকিউএল ওএস কোয়ান্টাম সম্পর্কিত তথ্যের সর্বাধিক স্নিপেট যা আমি খুঁজে পেতে পারি:
quantum_length_us bigint Identified for informational purposes only. Not supported. Future compatibility is not guaranteed. Exposes the scheduler quantum used by SQLOS.
তথ্যসূত্র: sys.dm_os_schedulers (লেনদেন-এসকিউএল) (মাইক্রোসফ্ট | ডক্স)
আমার কনড্রাম
সার্ভার ওএস কোয়ান্টাম নিয়ন্ত্রণ করে যে এসকিউএল সার্ভার পরিষেবা "কার্য" সম্পাদন করতে কত সময় দেওয়া হয়। এসকিউএল সার্ভার ওএস কোয়ান্টাম 4 এমএস হিসাবে সংজ্ঞায়িত করা হয়েছে। আমি যদি 187.5 এমএসকে 4 এমএস দিয়ে ভাগ করে রাখি তবে আমি 3.5 এমএস দিয়েই চলেছি।
এবং আমরা এমনকি যখন ক্লক ইন্টারভাল 15.625000 এমএস এর ডিফল্ট ব্যতীত অন্য কোনও কিছুতে সেট করা হয় তখনও আলোচনা শুরু করি নি ...
সহজ প্রশ্ন
কীভাবে এসকিউএল সার্ভার কোয়ান্টাম (4 এমএস) সার্ভার ওএস কোয়ান্টামের সাথে সিঙ্ক্রোনাইজ করা হয় (সাধারণত: 187.5 এমএস)?
সাধারণ প্রশ্ন ব্যাখ্যা
ওএস কোয়ান্টামের 184 এমএস ব্যবহারের পরে (যা 46 টি সম্পূর্ণ এসকিউএল কোয়ান্টামের সাথে মিলে যায়) ওএস কোয়ান্টামের সময়কালটি 3.5 মিমি হওয়ার আগে সময়সূচিটি অন্য কোনও প্রক্রিয়াতে হস্তান্তর করতে হবে। এসকিউএল ওএস একটি কোয়ান্টাম (4 এমএস) শুরু করে এবং 3.5 এমএসের পরে, ওএস কোয়ান্টাম বর্তমান এসকিউএল ওএস থ্রেডটি বন্ধ করার সিদ্ধান্ত নিয়েছে যার তফসিলটি উত্পাদনের আগে এখনও 0.5 এমএস রয়েছে। এখন কি ঘটছে?