আপনার কোডটি কেন 100% সিপিইউ ব্যবহার করা উচিত নয়? [বন্ধ]


42

আমি উইন্ডোজ এক্সপি বা উচ্চতর চলমান একটি সি #। নেট 4 প্রোগ্রাম সম্পর্কে বিশেষত বলছি, তবে সাধারণ উত্তরগুলিও গ্রহণযোগ্য।

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

একজন সহকর্মী আজ পরামর্শ দিয়েছেন যে আমার ডেটা লোড প্রক্রিয়াগুলিতে আমার 100% সিপিইউ ব্যবহারের লক্ষ্য রাখা উচিত নয় কারণ "আধুনিক সিপিইউগুলি সস্তা এবং 100% সিপিইউতে দ্রুত হ্রাস পাবে"।

এটা কি সত্য? আর যদি তাই হয় তবে কেন? আমি আগে এই ধারণার মধ্যে ছিলাম যে নিবিড় বা দীর্ঘ অপারেশনের জন্য 100% সিপিইউ ব্যবহার পছন্দনীয় এবং আমি কোনওভাবেই এই বিষয়ে সম্মানজনক উত্স খুঁজে পাইনি।


6
ধরে নিই যে আপনার অ্যাপ্লিকেশনটি কেবলমাত্র বাক্সে চলছে, তবে কঠোরভাবে বললে, 100% সিপিইউ ব্যবহারটি আসলে খারাপ নয়, বরং এটি ইঙ্গিত করতে পারে যে আপনি সম্ভবত আরও ভাল কিছু করতে পারেন। আমি ডেস্কটপ অ্যাপ্লিকেশনগুলির সাথে খুব বেশি কাজ করি নি, তবে ওয়েব অ্যাপ্লিকেশনগুলির জন্য, উদাহরণস্বরূপ, আমি এমন কোনও অ্যাপ্লিকেশন দেখিনি যা সিপিইউ লোডটি সর্বাধিক করে ফেলেছিল এবং সেই চক্রগুলি ব্যবহার করে কোডটি সত্যই অনুকূল ছিল। সবসময় কিছু ভুল আছে। তবে এটি ওয়েবে কারণ আমরা প্রায়শই I / O আবদ্ধ থাকি, সুতরাং সিপিইউ সমস্যাটি অনুচিত বলে মনে হয়। আমি নিশ্চিত যে আপনার অ্যাপ্লিকেশনটি আলাদা।
ব্র্যান্ডন 12

7
এছাড়াও, বিভিন্ন অপারেটিং সিস্টেমগুলি এই কেসটিকে আলাদাভাবে পরিচালনা করে। উদাহরণস্বরূপ, আমার উইন্ডোজ বাক্সটি সিপিইউ যদি 100% ব্যবহার করা হয় তবে ভয়ঙ্করভাবে চলে runs অন্যদিকে, আমি বেশ কয়েকদিন ধরে সরাসরি একটি লিনাক্স সার্ভার 100% সিপিইউতে চালিত দেখেছি এবং এটি ভাল ছিল। (যদিও আমরা কিছুদিন পরে একটি সমাধান প্রকাশ করেছি))
ব্র্যান্ডন

17
অতিরিক্ত অপব্যয় না করে আপনি যত দ্রুত সম্ভব কাজ করতে চান work আপনি যদি কার্যকর গণনা করতে 100% সিপিইউ ব্যবহার করেন তবে ভাল। আপনি যদি 100% সিপিইউ অকেজো লুপগুলিতে ব্যবহার করেন তবে এটি নষ্ট।
nwp

10
আপনি এটির জন্য সমস্ত অর্থ প্রদান করেছেন। এটি সব ব্যবহার করুন।
ব্রায়ান হুপার

4
এই প্রশ্নটি অফ-টপিক হিসাবে উপস্থিত বলে মনে হচ্ছে কারণ এটি ইলেকট্রনিক্স সম্পর্কিত, প্রোগ্রামিং সম্পর্কিত নয়।

উত্তর:


59

কুলিং অপর্যাপ্ত হলে, সিপিইউ অতিরিক্ত উত্তপ্ত হতে পারে। তবে এগুলি সমস্ত (ভাল, কমপক্ষে সমস্ত আধুনিক পিসি সিপিইউ) বিভিন্ন তাপ সুরক্ষা ব্যবস্থার বৈশিষ্ট্য রয়েছে যা ঘড়ির গতিকে থ্রটল করে দেবে বা একটি চূড়ান্ত অবলম্বন হিসাবে বন্ধ হয়ে যাবে।

সুতরাং হ্যাঁ, ধূলিমলিন ল্যাপটপে 100% সিপিইউ লোড অস্থায়ী সমস্যার কারণ হতে পারে, তবে কিছুই ভেঙে বা "ডিগ্র্রেড" করবে না (যার অর্থ যাই হোক না কেন)।

সিপিইউ আবদ্ধ সমস্যার জন্য, 100% সিপিইউ লোড হ'ল সঠিক উপায়।

অ্যাপ্লিকেশন (ইউআই) প্রতিক্রিয়াশীলতা হিসাবে, এটি সিপিইউ ব্যবহারের থেকে পৃথক ধারণা। ১% সিপিইউ, বা প্রতিক্রিয়াশীল অ্যাপ্লিকেশন যা 100% সিপিইউ ব্যবহার করে এমন কোনও প্রতিক্রিয়াহীন অ্যাপ্লিকেশন পাওয়া সম্পূর্ণভাবে সম্ভব। UI সাড়া জাগ্রত হয় UI থ্রেডে পরিমান কাজ এবং ইউআই থ্রেড বনাম অন্যান্য থ্রেডের অগ্রাধিকার।


3
এবং ওএস এমনকি কোরগুলির জন্য একটি শীতল ডাউন স্লাইস প্রয়োগ করতে পারে
রাচেট ফ্রিক

8
আমি মনে করি আসল উত্তরটি হ'ল বেশিরভাগ প্রক্রিয়াগুলি সিপিইউ বাউন্ড হয় না, তবে এর পরিবর্তে আমি / ও আবদ্ধ হয়, তাই সাধারণত আমরা এমন এক পৃথিবীতে বাস করি যেখানে কমপক্ষে "জেনারেল / জেনেরিক" গণনার জন্য 100% সিপিইউ ব্যবহার অস্বাভাবিক হয়।
উইন্ডফাইন্ডার

4
@ উইন্ডফাইন্ডার আমি বলব, "গণনা" করার জন্য, ১০০% অর্জন করা বেশ মানসম্পন্ন, তবে যতক্ষণ না "গণনা" গণিতের সাথে কিছু করতে হবে :) উদাহরণস্বরূপ, মাইএসকিউএল অনুসন্ধানগুলি প্রক্রিয়া করা আমার কাছে গণনা নয়;)
'

@ তোহেজ - যে অর্থে আমি এটি গণনা করেছি তার অর্থ সিপিইউ সময় time আমরা এখানে পরিভাষা সম্পর্কে কেবল ঝগড়া করছি, আমার কাছে সিপিইউ যা কিছু করে তা হ'ল গণনা (এটি "গণনা")। ডেটা বিজ্ঞানী হিসাবে আমি আরও বলব যে বেশিরভাগ গণিতগুলিও I / O আবদ্ধ (অতি তুচ্ছ গণিতের বাইরে)। গণিত (গুলি) বিশ্বে আপনার বেশিরভাগ সময় আপনার প্রসেসরের সাথে দক্ষতার সাথে ডেটা সংকোচন / স্ট্রিম করার একটি উপায় খুঁজে পাচ্ছে যাতে সেই সিপিইউ ব্যবহার যথাসম্ভব উচ্চতর হয় (অবশ্যই ক্যাশে অদক্ষতা হ্রাস করার সময়)।
উইন্ডফাইন্ডার

4
উপাখ্যানটি পুনরায় "ডাস্টি ল্যাপটপ": আমার মাস্টার থিসিস পরীক্ষাগুলির জন্য, আমি রানার হিসাবে 4 বছরের পুরানো ল্যাপটপটি ব্যবহার করেছি। 24/7 প্রায় 3 মাসের জন্য 100% সিপিইউ ব্যবহার । এর পরে, বলেছিল যে ল্যাপটপটি শেষ পর্যন্ত ভূত ছাড়ার আগে আরও 4 বছর ধরে সার্ভারের ভূমিকায় অবতীর্ণ হয়েছিল (সম্ভবত ইতিমধ্যে ক্ষতিগ্রস্থ গ্রাফিক্স সমস্যার কারণে)।
mikołak

15

উইন্ডোজ প্রোগ্রামগুলি (উইনফর্মগুলি / ডাব্লুপিএফ) সর্বদা প্রতিক্রিয়াশীল হওয়া উচিত। 100% সিপিইউ রিসোর্স ব্যবহার করে এমন একটি প্রক্রিয়াটির নির্বিকার প্রয়োগের সাথে আপনার প্রোগ্রাম বা এমনকি আপনার সিস্টেমকে আস্তে আস্তে এবং ঝুলন্ত বলে মনে করা খুব সহজ।

একটি ভাল বাস্তবায়ন সহ (উদাহরণস্বরূপ: নিম্ন অগ্রাধিকার সহ পৃথক থ্রেড ব্যবহার করুন) এটি কোনও সমস্যা হওয়া উচিত নয়।

আপনার সিপিইউ খুব তাড়াতাড়ি ভাঙ্গার বিষয়ে চিন্তা করা উচিত নয়।


3
অবশ্যই দীর্ঘমেয়াদী গণনাগুলি সম্পাদনকারী প্রোগ্রামগুলি সম্ভবত উইনফর্ম / ডাব্লুপিএফ অ্যাপ্লিকেশন হওয়া উচিত নয় বরং পরিবর্তে কোনও ইউআই ছাড়া ব্যাচ জব থাকা উচিত। এটি তাদের আরও সহজ করে তোলে কারণ তাদের জবাবদিহি ইউআই থ্রেড থাকার বিষয়ে যত্নের প্রয়োজন নেই এবং এগুলি টাস্ক শিডিয়ুলার এবং এ জাতীয় মাধ্যমে চালু করার অনুমতি দেয়। যদি ইউআইয়ের প্রয়োজন হয়, আমি তখনও সম্পূর্ণ পৃথক প্রক্রিয়াতে লঞ্চার অ্যাপ্লিকেশনটির পরামর্শ দেব (এটি বেশ সহজে সাড়া পেতে পারে; ব্যাচের কাজ থেকে স্থিতি বার্তার জন্য অপেক্ষা করা অবরুদ্ধ করা এড়ানো যথেষ্ট)।
জানু হুডেক

15

কোনও প্রোগ্রামের ক্ষেত্রে 100% সিপিইউ ব্যবহার করার সময় সাধারণত কোনও ভুল হয় না যখন এটি আসলে কার্যকর কাজ করে চলেছে এবং আরও গুরুত্বপূর্ণ কিছু থেকে সময় নিচ্ছে না । যদি একটি নির্দিষ্ট হার্ডওয়্যার প্ল্যাটফর্ম যেমন অতিরিক্ত তাপমাত্রা এড়াতে কেবল 50% এ ফিরে থ্রোল্ট করার আগে কেবল এক সেকেন্ডের জন্য একটানা 100% সিপিইউ ব্যবহার করতে সক্ষম হয় তবে এটি কার্যকরভাবে কার্য সম্পাদন করার জন্য একটি অ্যাপ্লিকেশনের পক্ষে সাধারণত ভাল isএটি যতটা দ্রুত চালাতে পারে তত দ্রুত চালাতে পারে এবং অ্যাপ্লিকেশনটিকে "কীভাবে" চালানো উচিত তা অনুমান করার চেয়ে সিপিইউ বা ওএস কোনও প্রয়োজনীয় থ্রোললিং পরিচালনা করতে দেয়। যদি কোনও অ্যাপ্লিকেশন বা থ্রেডে নিম্ন-অগ্রাধিকারের কাজ করা থাকে যা দরকারী হবে তবে তা সবসময় সমালোচনামূলক না, তবে ওএসের পক্ষে নিম্ন-অগ্রাধিকার-টাস্ক সিপিইউ ব্যবহার 50% এর মধ্যে সীমাবদ্ধ করা সহায়ক হতে পারে যাতে সিপিইউ করার দরকার পড়ে কিছু দ্রুত এটি সেকেন্ডের জন্য "স্প্রিন্ট" করার জন্য প্রস্তুত হবে, তবে অ্যাপ্লিকেশনটিকে কম থ্রেডের অগ্রাধিকারের অনুরোধের বাইরে এই জাতীয় জিনিসগুলি নিয়ে চিন্তা করা উচিত নয়।

100% সিপিইউ ব্যবহার করা খারাপ যেখানে সবচেয়ে বড় পরিস্থিতি যখন হয় হয়:

  • অ্যাপ্লিকেশনটি এমন কিছু ইভেন্টের জন্য অপেক্ষা করছে যা অবিচ্ছিন্ন ভোটদানের ফলে তাড়াহুড়ো হচ্ছে না [এবং কাজটি করা হয়েছে কিনা তা খতিয়ে দেখলে ব্যর্থ হলে বাস্তবে দেরি হতে পারে সিপিইউ সংস্থানগুলি যা অন্যথায় টাস্কটি করার জন্য ব্যয় হতে পারে ]।

  • অ্যাপ্লিকেশনটি প্রায়শই প্রায়শই প্রদর্শন পুনরায় আঁকছে is "অত্যধিক প্রায়শই" এর সংজ্ঞা প্রদর্শন ডিভাইসের প্রকৃতি এবং প্রদর্শিত সামগ্রীর উপর কিছুটা নির্ভর করে। ডিসপ্লে হার্ডওয়্যার যদি 120fps প্রদর্শন করতে পারে তবে এমন ঘটনাও ঘটতে পারে যেখানে গতি অস্পষ্টতা যোগ না করে 120fps এ অ্যানিমেশন প্রদর্শিত হতে পারে, তবে এটি যুক্ত না করে কম ফ্রেমের হারে পরিষ্কারভাবে দেখা যায় না। গতি অস্পষ্টতার সাথে যদি কোনও ফ্রেম রেন্ডারিং ব্যতীত রেন্ডারিংয়ের চেয়ে অনেক বেশি সময় নেয়, তবে এটি হার্ডওয়্যারে 120fps এ রেন্ডারিং করে যা এটি সমর্থন করে যা মোশন ব্লার সহ ধীর ফ্রেমের হারে রেন্ডারিংয়ের চেয়ে বেশি ব্যয়বহুল আর কিছু হতে পারে না। [সরল পরিস্থিতি: ২৯ টি মুখের একটি চাকা, প্রতি সেকেন্ডে একটি বিপ্লবে ঘুরছে। 120fps এ, চাকাটি যথাযথ গতি এবং দিক দিয়ে ঘোরানো হবে; 60fps এ,

প্রাক্তনটি পরিষ্কার হিসাবে খারাপ হিসাবে স্বীকৃত। দ্বিতীয়টি কিছুটা সূক্ষ্ম। যদি কেউ একটি মোবাইল প্ল্যাটফর্ম লক্ষ্য করে থাকে তবে কিছু ক্ষেত্রে ব্যবহারকারীদের কাঙ্ক্ষিত অ্যানিমেশন ফ্রেম হার নির্বাচন করার অনুমতি দেওয়া বাঞ্ছনীয় হতে পারে, যেহেতু কিছু ব্যবহারকারী ব্যাটারি লাইফ সম্পর্কে উদ্বিগ্ন না হন তবে সেরা মানের অ্যানিমেশন চাইবেন, অন্যরা নিম্ন মানের স্বীকার করবেন উন্নত ব্যাটারি জীবনের বিনিময়ে অ্যানিমেশন। অ্যাপ্লিকেশনটি ট্রেড-অফ কোথায় হওয়া উচিত তা অনুমান করার চেষ্টা করার পরিবর্তে এটি ব্যবহারকারীকে কাস্টমাইজ করতে দেওয়া সহায়ক হতে পারে।


10

"আধুনিক সিপিইউগুলি সস্তা এবং 100% সিপিইউতে দ্রুত হ্রাস পাবে"।

আমি মনে করি না যে কেউ আসলেই এই প্রশ্নের "অবনমন" অংশকে সম্বোধন করেছে। আইসিগুলি যখন মরা তাপমাত্রা প্রস্তুতকারকের সীমা ছাড়িয়ে যায় তখন হ্রাস পাবে । আইসিগুলি সাধারণত 125 সি পর্যন্ত পরিচালিত করার জন্য ডিজাইন করা হয়, যদিও প্রতিটি 10 ​​সি বৃদ্ধি 50% করে জীবনকে ছোট করে তোলে

প্রসেসরের সর্বদা তাপীয় নিয়ন্ত্রণ ছিল না। তারপরে কিছু এএমডি ডারনস সমস্যায় পড়ে (হিটসিংক ছাড়াই চালানো হলে একটিটিকে ধ্বংস করা সম্ভব হয়েছিল বলে অভিযোগ করা হয়েছে)। এখন সমস্ত পিসি প্রসেসরগুলিতে বিল্টিন টেম্পারেচার সেন্সর থাকবে যা সিপিইউ ঘড়িতে ফিরে আসে এবং ক্ষতি রোধ করতে ঘড়ির গতি কমিয়ে দেয়। সুতরাং আপনি দেখতে পাচ্ছেন যে আপনার প্রোগ্রামটি উপলব্ধ 100% উপলব্ধ সিপিইউ ব্যবহার করছে তবে সিপিইউ কেবল তার রেট করা গতির 75% গতিতে চলছে কারণ এর শীতলকরণ অপর্যাপ্ত।

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

উইন্ডোজ এবং লিনাক্স উভয়ের সিপিইউ "গভর্নর" সিস্টেম রয়েছে যা পারফরম্যান্স এবং তাপ পরিচালনা করবে। কারণ এটি ওএস পর্যায়ে করা হয়েছে এটি মোট সিস্টেম সিপিইউ ব্যবহারের জন্য অ্যাকাউন্ট করতে পারে। হার্ডওয়্যার পরিচালনা এবং ব্যবহারকারী প্রোগ্রামগুলি এর অপব্যবহার থেকে রোধ করা অপারেটিং সিস্টেমের দায়িত্ব of ভক্তদের পরিষ্কার এবং কাজ করে রাখা এবং নির্মাতাকে পর্যাপ্ত হিটিং সিঙ্ক এবং ভক্তদের প্রথম স্থানে ফিট করার দায়িত্ব হার্ডওয়্যার মালিকের is

এমন কয়েকটি ঘটনা রয়েছে যেখানে ডিভাইসগুলিতে অপর্যাপ্ত শীতলতা রয়েছে, তবে ফিরতি বন্যার নির্মাতারা এটি না করতে শিখিয়েছেন।


বিস্ফোরিত এএমডি ডুরনের সেই ভিডিও সম্ভবত নকল। তাপীয় নিয়ন্ত্রণ সম্পর্কে আপনার বক্তব্যটি এখনও বৈধ।
স্যাম

1
এইচএম, আমি এটিকে বের করে দিয়েছি কারণ আমি গুগলে দাবি করেছিলাম যে এটি নকল it
pjc50

3
এসএসই ইঞ্জিনকে পুশ করে এবং ওএসে ইচ্ছাকৃতভাবে সিপিইউ থ্রোটলিংকে অক্ষম করে এমন একটি কোড লিখে একটি আধুনিক ইন্টেল কোর সিপিইউকে অতিরিক্ত গরম করা সম্ভব। দেখে মনে হয় যে নির্মাতারা (এমনকি নিজেরাই ইন্টেলও) তাপীয় প্রয়োজনীয়তাগুলি অনুমানের উপর ভিত্তি করে ডিজাইন করেন যে এটি স্বাভাবিক নয় (সম্ভব?) সিপিইউকে প্রতি ঘড়ির চক্র অনুসারে দাবি করা 4 টি ফ্লপ গণনা করতে বাধ্য করে। যখন কেউ আসলে কোড লিখতে পরিচালনা করে তবে তার সিপিইউ অতিরিক্ত গরম শুরু করে ating দেখুন: stackoverflow.com/questions/8389648/...
slebetman

allegedly "হিটসিংক ছাড়াই চালানো হলে একজনকে ধ্বংস করা সম্ভব হয়েছিল বলে অভিযোগ করা হয়েছে" - আমি "ব্যক্তিগতভাবে নিশ্চিত হয়েছি" হিটসিঙ্ক ছাড়াই এর আগে কে -7 এর ধ্বংস সম্ভব ছিল .. ; এরকমই, প্রায় ২ দশক আগে? !!
ব্যবহারকারীর 2864740

3

শয়তানের উকিল খেলতে: একরকমভাবে, এমন একটি প্রোগ্রাম যা 100% ব্যবহারে পৌঁছতে পারে না এটি আরও খারাপ পোশাক পরতে পারে: যদি কোনও কী-স্ট্রোকের জন্য অপেক্ষা করা স্থগিত না করা হয় তবে বেশিরভাগ সময় ডিস্ক I / O এর অপেক্ষায় স্থগিত হওয়ার সম্ভাবনা থাকে। এবং ডিস্কগুলি (এখনও সাধারণত) বড় যান্ত্রিক ডিভাইসগুলি যান্ত্রিক পরিধানের সাথে জড়িত বা শক / জাইরোস্কোপিক প্রভাবগুলির ঝুঁকির সাথে যখন তারা সরানো হয়, বিদ্যুতের খরচ উল্লেখ না করে।


এই ক্ষেত্রে এটি বৃহত্তর (মেমরির) ডেটাসেটের জন্য কেবল একটি জটিল প্রক্রিয়া, যা কয়েক মিনিট সময় নেয়। তবে এটি অবশ্যই অন্য পাঠকদের জন্য ভাল পয়েন্ট।
নিক উডেল

3

".. আধুনিক সিপিইউগুলি সস্তা এবং 100% সিপিইউতে দ্রুত হ্রাস পাবে"।

আপনাকে "সিপিইউ অবক্ষয়" সম্পর্কে মোটেই চিন্তা করার দরকার নেই। আধুনিক সিপিইউগুলি আগের সময়ের চেয়ে কম মানের নয়।

সিপিইউগুলি তৈরি করা খুব ব্যয়বহুল (এবং প্রতি কয়েক বছর ধরে আরও ব্যয়বহুল হয়ে উঠছে), কয়েক হাজার কোটি নতুন ফাব তৈরি করা অস্বাভাবিক নয় (লিঙ্কটি দেখুন)।

http://en.wikipedia.org/wiki/Semiconductor_fabrication_plant

একটি সিপিইউর উত্পাদন ব্যয় সর্বাধিক সংখ্যার উপর নির্ভর করে। উত্পাদিত ইউনিট। এটি অর্থনীতির একটি সুপরিচিত সত্য। এ কারণেই তারা বিক্রি হতে পারে (তুলনামূলকভাবে) সর্বোপরি "সস্তা"। (আমি মনে করি, এখানে কোনও লিঙ্কের প্রয়োজন নেই)

আমি আধুনিক সিপিইউগুলিকে "পূর্ববর্তী সময়ের" তুলনায় আরও গুণমানের দিকে ঝুঁকির কারণ হিসাবে বিবেচনা করব of

তবে শুধুমাত্র সবচেয়ে গুরুত্বপূর্ণ: পরীক্ষায় সুবিধা। আধুনিক ইলেকট্রনিক্স "পরীক্ষার জন্য ডিজাইন করা হয়েছে"। সফ্টওয়্যার বা হার্ডওয়্যার যাই হোক না কেন, প্রায় সব কিছুর চেয়ে মূল্যবান পরীক্ষার বিস্তৃত অন্তর্দৃষ্টি এত প্রাচীন নয়। সিপিইউগুলির জন্য, বিভিন্ন দাম এবং ফ্রিকোয়েন্সি ধরণের গঠনের জন্য এমনকি পরীক্ষাগুলি নেওয়া হয়, যেমন সেরা সিপিইউ সর্বোচ্চ ফ্রিকোয়েন্সি সহ বিক্রি হয়। তা সত্ত্বেও, সস্তা প্রসেসরগুলি প্রায়শই বিক্রয়ের চেয়ে উচ্চতর ফ্রিকোয়েন্সি নিয়ে পরিচালনা করতে সক্ষম হয় - তারা কেবল পঙ্গু হয়ে যায় যে কারণে প্রস্তুতকারক উচ্চতর দামের সাথে কিছু "উচ্চ স্তরের" প্রসেসর বিক্রি করতে চায়।

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

এমনকি সেখানে হয় আরো আপনার প্রোগ্রামের জন্য CPU- র degredation সম্পর্কে চিন্তা করতে না কারণ:

  • প্রথম কারণটি হ'ল আধুনিক সিপিইউগুলি তাদের ফ্রিকোয়েন্সি বা থ্রোটল হ্রাস করে, যদি তারা খুব বেশি গরম হয়।

    এটি পরিষ্কার হওয়া উচিত যে আপনি যদি পুরো বছর সিপিইউ 100% 24/7 ব্যবহার করেন তবে সাধারণত দ্বিতীয় সপ্তাহে এক ঘন্টা ব্যবহার করা সিপিইউর তুলনায় এটি সাধারণত মারা যায়। তবে এটি গাড়িগুলির ক্ষেত্রেও সত্য। কেবলমাত্র এ জাতীয় ক্ষেত্রে আমি সিপিইউ ব্যবহার এবং সম্ভাব্য ঘুমের বিষয়ে চিন্তা করব।

  • দ্বিতীয় কারণটি হ'ল এটি এমন একটি প্রোগ্রাম লিখতে খুব শক্ত যেটি ওএস থেকে সিপিইউয়ের 100% ব্যবহার করে (যেমন উইন্ডোজে)। এছাড়াও, আধুনিক সিপিইউগুলিতে (সাধারণত) কমপক্ষে 2-4 কোর থাকে। সুতরাং একটি traditionalতিহ্যবাহী অ্যালগরিদম যা একক কোর সিপিইউর 100% ব্যবহার করতে ঝোঁক, এখন ডুয়াল কোর সিপিইউতে কেবল 50% রয়েছে (সরলীকৃত তবে বাস্তব পরিস্থিতিতে দেখা যায়)।

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

"আমি আগে এই ধারণার মধ্যে ছিলাম যে একটি নিবিড় বা দীর্ঘ ক্রিয়াকলাপের জন্য 100% সিপিইউ ব্যবহার পছন্দনীয় .."

হ্যাঁ, এই সঙ্গে থাকুন। তবে উদাহরণস্বরূপ, আপনি যদি অন্য প্রক্রিয়াটির জন্য অপেক্ষা ও লুপিং করেন, অন্য কথায় কিছু না করেন তবে আপনি থ্রেড করা খুব খারাপ হবে না that ঘুমান) লুপটিতে কিছু মিলিসেকেন্ড, অন্যকে অতিরিক্ত সময় দেয়। যদিও এটি কোনও ভাল মাল্টিটাস্কিং ওএসের জন্য প্রয়োজনীয় নয়, আমি উইন্ডোজ 2000 এর জন্য উদাহরণ সহ কয়েকটি সমস্যা সমাধান করেছি ((উদাহরণস্বরূপ গণনায় ঘুম () অবশ্যই এটি ব্যবহার করার অর্থ নেই ..


3
যদিও এই উত্তরটি আজ সত্য, ভবিষ্যতের জন্য উদ্বেগ রয়েছে। এটি ব্যবহৃত হত "শক্ত রাষ্ট্র" এর অর্থ চূড়ান্ত নির্ভরযোগ্যতা, তবে এখন আমাদের কাছে এমএলসি ফ্ল্যাশ রয়েছে যা কিছু ক্ষেত্রে কেবল প্রতি ব্লক 1000 মুছে চক্রের জন্য রেট দেওয়া হয়। সংকুচিত ডাই আকারগুলি কতক্ষণ অবধি সিপিইউগুলির জন্য একই ধরণের ঘটনা ঘটায় যা নিয়মিত 100% এ চালানো দরকার?
মাইকেল 15

2
@ মিশেল, সিপিইউগুলি যদিও পরিবর্তিত হচ্ছে না এবং তারা অস্থির স্মৃতিতে লিখেছে — তবে এখনও আপনি কী বলতে চাইছেন তা আমি বুঝতে পারি।
পিটার

3

এ জাতীয় অবক্ষয় তাত্ত্বিকভাবে সম্ভব এবং একে বলা হয় " তড়িৎচঞ্চল "। বৈদ্যুতিন স্থানান্তর তাপমাত্রা-নির্ভর, তাপমাত্রা বৃদ্ধির সাথে সাথে ত্বরণ হয়। এটি আধুনিক সিপিইউগুলির জন্য ব্যবহারিক সমস্যা কিনা তা বিতর্কের অবতারণা। আধুনিক ভিএলএসআই ডিজাইনের অনুশীলনগুলি বৈদ্যুতিন অভিযানের জন্য ক্ষতিপূরণ দেয় এবং অন্যান্য কারণে চিপস ব্যর্থ হওয়ার সম্ভাবনা বেশি থাকে।

এই বলে যে, বৈদ্যুতিন স্থানান্তর এমনকি সাধারণ লোড এবং তাপমাত্রায়ও ঘটে , তবে এটি যথেষ্ট ধীর যে একটি ভাল-ডিজাইন করা চিপ ব্যর্থ হওয়ার অনেক আগেই অপ্রচলিত হয়ে যায়, বা এটি অন্য কোনও ব্যবস্থার মাধ্যমে প্রথমে ব্যর্থ হয়।

ইলেক্ট্রোমাইগ্রেশনের হার চিপ তাপমাত্রার উপর নির্ভর করে, প্রতিটি (খুব মোটামুটি) 10 ডিগ্রি সেন্টিগ্রেডের জন্য আজীবন দ্বিগুণ হয়। এটি আসলে, "এইচটিএল" (উচ্চ তাপমাত্রা অপারেটিং লাইফ) নামক একটি পরীক্ষার ভিত্তি, যা একটি চিপ মারা যেতে কত সময় নেয় তা পরিমাপ করে, বলে যে, 125 ° C। 125 ডিগ্রি সেন্টিগ্রেডে চলমান একটি চিপ 55 ডিগ্রি সেন্টিগ্রেডে চলমান চিপের চেয়ে প্রায় 100 গুণ দ্রুত ব্যর্থ হবে, সুতরাং যদি কমপক্ষে 10 বছর 55 ডিগ্রি সেন্টিগ্রেডে নকশাকৃত হয়, তবে একটি চিপ 1 মাসের মধ্যে 125 ডিগ্রি সেন্টিগ্রেডে ব্যর্থ হতে পারে। যদি 85 ডিগ্রি সেন্টিগ্রেডের মতো আরও যুক্তিসঙ্গত কোনও স্থানে চলতে থাকে তবে এই জাতীয় চিপটি এর জন্য নকশাকৃত ডিজাইন করা তার চেয়ে কমপক্ষে 5-10x ব্যর্থ হবে।

অবশ্যই, সিপিইউ সাধারণত উচ্চতর তাপমাত্রাকে মাথায় রেখে ডিজাইন করা হয়, তাই তারা সাধারণত 85 ডিগ্রি সেন্টিগ্রেড 24/7 100% লোড অপারেশনে বছরের পর বছর ধরে থাকতে পারে। সুতরাং আমি আপনাকে পরামর্শ দিচ্ছি যে আপনি সিপিইউ "পরিধান" সম্পর্কে চিন্তা করবেন না এবং কেবলমাত্র সফটওয়্যার ইঞ্জিনিয়ারিং দৃষ্টিকোণ থেকে 100% লোড উপযুক্ত কিনা তা নিয়ে চিন্তা করবেন না।


এই শব্দটি সন্ধান করে এমন অনেক ফলাফলের সাথে অনুসন্ধানের দিকে পরিচালিত করে যা এসই নেটওয়ার্ক জুড়ে ভাল পঠনযোগ্য ... যার মধ্যে অনেকগুলি ইলেক্ট্রনিক্স.এসই এবং সুপার ইউজারে রয়েছে।

1

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

অন্যরা যেমন বলেছিল, আপনি সেটআপ সম্পর্কে বেশ গোপনীয় ছিলেন, তাই আমি নিশ্চিত করে বলতে পারি না। তবে, যদি আপনার ক্লায়েন্টগুলি ডেস্কটপ কম্পিউটার হয় তবে 100% সিপিইউ ব্যবহার থেকে দূরে থাকুন। সিপিইউ অবক্ষয়ের কারণে নয়, তবে তাদের কাজের সময় ব্যবহারকারীদের ব্যত্যয় করা ভাল ফর্ম নয়।


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

2
@ জানহুদেক উইন্ডোজ আসলে এটি করে। superuser.com/questions/194223/…
এনটিএসকোবাল্ট

@ এনটিএসকোবাল্ট: হ্যাঁ। আপাতভাবে যা হয় না তা উইন্ডোজ সিই। এবং উইন্ডোজ যখনই ডিস্কে কোনও প্রক্রিয়া ভারী হয় তখন গুরুতর সমস্যা হয় তবে স্পষ্টতই এটি অন্যরকম কিছু (সাধারণভাবে উইন্ডোতে ডিস্ক হ্যান্ডলিংয়ের তুলনায় দুর্বল)।
জানু হুডেক

1

সুতরাং পরিস্থিতিটি হ'ল: আপনার কাছে এমন কিছু কোড রয়েছে যা সমস্ত সিপিইউর 100% ব্যবহার করে পাঁচ ঘন্টা ধরে চালায়, যা আপনি যতটা পারেন ততটাই অনুকূলিত করেছেন, মেশিনের মালিক পাঁচ মিনিটের জন্য মেশিনের অকেজো হয়ে থাকতে পারে, এবং আপনার সহকর্মী সমস্ত সিপিইউগুলির 83.33% ব্যবহার করে আপনার কোডটি 6 ঘন্টার মধ্যে চালানো ভাল বলে দাবি করে, কারণ এটি কম্পিউটারে কম পরিধান এবং টিয়ার রাখে।

এটি আপনি যে কম্পিউটারটি ব্যবহার করছেন তার উপর নির্ভর করে। আমি জানি যে কোনও কম্পিউটার প্রস্তুতকারক 24/7 চলমান বৈজ্ঞানিক সেটিংয়ে ব্যবহৃত সস্তা হোম কম্পিউটারগুলিতে ওয়ারেন্টি সময়ের মধ্যে ওয়্যারেন্টি মেরামত করতে অস্বীকার করেছিলেন। তারা স্পষ্টতই চেয়েছিল গ্রাহকরা তাদের আরও ব্যয়বহুল সার্ভার বা "ব্যবসায়" কম্পিউটার কিনে। তারা সফল হয়েছিল কিনা, আমি জানি না।

আমি যে মালিকানা পেয়েছি তা প্রতিটি ম্যাকের একসময় কয়েক দিনের জন্য 100% সিপিইউ ব্যবহারের লাইফ রান কোডের কিছুটা সময় আছে। একটি ক্ষেত্রে আমাকে ডিসপ্লেটি অফ করতে হয়েছিল, কারণ আমার কাছে ল্যাপটপের জন্য মূল চার্জারটি ছিল না, এবং চারটি কোর এবং হাইপার থ্রেডিং সহ এটি চার্জারের সরবরাহকারীর চেয়ে বেশি শক্তি ব্যবহার করেছিল - সুতরাং ব্যাটারিটি ডাউন হয়ে যায় এবং যখন এটি পৌঁছায় ব্যাটারি 10% পর্যন্ত না হওয়া পর্যন্ত 5 শতাংশ কম্পিউটার ঘড়ির গতি কমিয়ে দেয়! (ডিসপ্লে বন্ধ হওয়ার সাথে সাথে এটি বেশ কয়েক দিন ধরে পুরো গতিতে চলে)। কোনও ক্ষেত্রেই, কোনও খারাপ প্রভাব নেই।

সুতরাং একটি ভাল ডিজাইন করা কম্পিউটারের সাথে আপনি ঠিক বলেছেন। খারাপভাবে ডিজাইন করা, সস্তা কম্পিউটারের সাহায্যে আপনার সহকর্মী সঠিক হতে পারে। অন্যদিকে, আপনি আপনার অপেক্ষার সময়ের দাম এবং একটি প্রতিস্থাপন কম্পিউটার কেনার খরচ বিবেচনা করতে পারেন।


0

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

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