31 C
Dhaka
Tuesday, March 26, 2024

বটলনেক এর আদ্যপান্ত! Bottleneck and its solution

- Advertisement -

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

 

- Advertisement -
  • বটলনেক কি ?
  • কম্পোনেন্ট ভিত্তিক বিভিন্ন বটলনেক! এবং তাদের ফলাফল।
  • বটলনেকের সমাধান।

 

বটলনেক কি!

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

ব্যাপারটা আবার এভাবেও ব্যাখা করা যেতে পারে যে একটি কম্পোনেন্ট এর দুর্বলতার জন্য যখন বাকি কম্পোনেন্ট গুলোর কাজের গতি,ক্ষমতা লিমিটেড হয়ে যায় বা অকার্যকর হয়ে যায় (বা অব্যবহ্বত রয়ে যায়) তখন এই ঘটনাকে বটলনেক বলা হয়।

- Advertisement -

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

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

 

- Advertisement -

 

মোটামুটি বলা যেতে পারে কম্পোনেট এর ক্ষমতার বড় রকমের পার্থক্য এবং ইনপুট এর তুলনায় আউটপুট এর ক্ষমতার  পার্থক্য যদি বেশি হয় তাহলে বটলনেক হয় । অর্থাৎ একটি কম্পোনেন্ট এর কাছে যে পরিমাণ ডাটা একবারে পাঠানো হচ্ছে তা যদি ক্ষমতার বাইরে হয় অথবা একটি কম্পোনেন্ট এর ক্ষমতা অনুসারে তার কাছে যদি অনেক কম পরিমাণ ইনপুট যায় (অন্য দুর্বল কম্পোনেন্ট এর দ্বারা) তখন বটলনেক ঘটে।/

 

প্রসেসর বটলনেকঃ

প্রসেসর বটলনেক সিম্পল ডে টু ডে লাইফেও দেখা যেতে পারে আবার গেমিং এর ক্ষেত্রেও হতে পারে। আমরা দুইটিই আলোচনা করবো।

ডে টু ডে ইউসেজে প্রসেসর বটলনেকড বলা যায় তখনই যখন প্রসেসরটি হয় তুলনামুলক দুর্বল । এই সিস্টেমে র‍্যাম , স্টোরেজ ফাস্ট থাকলেও আশানুরুপ ফলাফল আসে না কেননা একটি গুরুত্বপুর্ণ পার্ট প্রসেসর, তার স্পিড, প্রসেসিং এর ক্ষমতা অনেক দুর্বল এবং সে দ্রুতই সামান্য কিছু টাস্ক চললেই ১০০% ইউসেজ এ পৌছে যায় সুতরাং এখন নতুন একটি টাস্ক চালু করতে গেলে স্টোরেজ ও র‍্যাম প্রসেসরের জন্য রেস্ট্রিক্টেড হয়ে যাবে। যেমন ব্যক্তিগতভাবে আমি একটি পুরাতন ল্যাপটপ ব্যবহার করি যেখানে core i7 640LM (একটি ৩২ ন্যানোমিটার ডুয়াল কোর প্রসেসর) এবং  4 জিবি র‍্যাম রয়েছে কিন্ত র‍্যাম ২ জিবির অধিক ফাকা থাকা সত্বেও এক একটা এপ্লিকেশন লোড হতে সেটি প্রচুর সময় নেয় , এমনকি একটি সিম্পল C program ও কম্পাইল করতে সে সময় নেয় কারণ প্রসেসরটির ক্ষমতা অনেক সীমিত। এখানে র‍্যাম বাড়ালে বা এসএসডি লাগালে সেরকম উন্নতি আসবে না।

গেমিং এবং প্রসেসর বটলনেকঃ

এখানে এসে কনসেপ্টটা আরো সোজা হয়ে যাচ্ছে অনেকটাই। আমরা সাধারণ হিসেবে ধরে নিতে পারি একটি গেম এর পারফর্মেন্স নির্ভর করে ৫০% গ্রাফিক্স কার্ডের উপর এবং বাকি ৩০% ও ২০% যথাক্রমে প্রসেসর ও র‍্যামের উপরে। ধরুন এখানে গ্রাফিক্স কার্ডটি যথেষ্ট ভালো এবং  একটি গেমের নির্দিষ্ট গ্রাফিক্স সেটিংসের রিকোয়ারমেন্ট ভালোমতই পুরণ করে তার মেমোরি ক্লক, মেমোরি ক্যাপাসিটি এবং মেমোরি ব্যান্ডউইথ ইত্যাদি দিয়ে, কিন্ত as an application  গেমের একটা অংশ কিন্ত গ্রাফিক্স প্রসেসিং ছাড়াও অন্য প্রসেসিং এর জন্য সম্পুর্ণ প্রসেসর এর উপর নির্ভরশীল এবং আপনার গেমের ফ্রেমরেট, এক্সপেরিয়েন্স ,ল্যাগ হ্যাং স্টাটার হওয়া না হওয়া গ্রাফিক্স কার্ড ছাড়াও  নির্ভর করবে প্রসেসর এর উপর। এবং প্রসেসরটি যদি উইক হয় , তখনই ঘটবে এই বটলনেক এবং গেমে উক্ত সমস্যা গুলো আপনি ফেস করতে শুরু করবেন এবং গ্রাফিক্স কার্ড ও লিমিটেড হয়ে যাবে যখন সে প্রসেসর থেকে আশানুরুপ আউটপুট পাবে না। কারণ পাওয়ারফুল হওয়া সত্বেও অনেকগুলো কাজ এর সাথে অন্য কম্পোনেন্ট এর ও সম্পর্ক থাকে।  এই সিস্টেমটিতে যেমন র‍্যাম অতিরিক্ত লাগিয়ে বা স্টোরেজ উন্নত করেও লাভ হবে না। ছবির প্রসেসরটির সাথে যদি RX 5700XT এর মত গ্রাফিক্সকার্ড লাগানো হয় তাহলে বটলনেকড হবে কারণ প্রসেসরটির ক্ষমতা অনেক সীমিত।

 

(গেমিং এর ক্ষেত্রে প্রসেসর বটলনেক গেম টু গেম ভ্যারি করতে পারে এবং এটি একটি আপেক্ষিক ব্যাপার)

র‍্যাম বটলনেকঃ

র‍্যাম বটলনেক দুই রকম হতে পারে।বটলনেক না বলে লিমিটেশন শব্দটা হয়তো বেশি মানায় এই ক্ষেত্রে।

ক্যাপাসিটি বটলনেকঃ(বা লিমিটেশন)

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

আবার আপনার বিল্ডটি Ryzen 5 3600, GTX 1660ti এর সাথে আপনি যদি চার জিবি র‍্যাম লাগান তাহলে গেমিং এর ক্ষেত্রে এটি অবশ্যই রেগুলার বটলনেক ক্রিয়েট করবে। আপনার সিস্টেমটির গেমিং পারফর্মেন্স লিমিটেড হয়ে যাবে র‍্যাম এর বটলনেক এর জন্য।

কিন্ত আপনার বিল্ডটি যদি এমন হয় যে আপনি একটি GT 1030, core i3 8100, 4gb র‍্যাম চালাচ্ছেন সেক্ষেত্রে মোটামুটি একটি ব্যালেন্সড বিল্ড বলা যেতে পারে এবং গেমিং এ পারফর্মেন্স এর ক্ষেত্রে কোন একটি কম্পোনেন্ট অন্যটির জন্য লিমিটেড হবে না কারণ সবগুলো কম্পোনেন্ট ফুললি ব্যবহ্বত হচ্ছে এবং সেগুলোর পাওয়ার অনুযায়ী যে পারফর্মেন্স পাওয়ার আপনি সেটিই পাবেন।

র‍্যাম স্পিড বটলনেকঃ

এটি একটু বিশেষ টাইপের বটলনেক। আপনার র‍্যামের স্পিড তুলনামুলক কম হওয়া এবং এর জন্য পারফর্মেন্স এ ইফেক্ট পড়াটাই মুলত স্পিড বটলনেক। তবে উপরের মত এখানেও টাইট বাজেট বিল্ডগুলোয় সাধারণত এই বটলনেক হয়না কারণ অন্যন্য কম্পোনেন্ট এর এবিলিটির সাথে একটা মোটামুটি equilibrium/সাম্যে থাকে।কিন্ত অতিরিক্ত কম স্পিডের র‍্যাম হলে এই বটলনেক লো স্পেকস সিস্টেমেও ঘটতে পারে । (যেমন <২১০০ হলে)। তবে হাই এন্ড বিল্ডে গেমিং এ এই বটলনেক  হওয়ার চান্স সবথেকে বেশি ।আজকালকার Ryzen 7 3700x, rx 2070 এই ধরনের সিস্টেম এর ক্ষেত্রে প্রায় প্রতি গেমেই আপনার একটি পারফর্মেন্স লিমিটেশন চলে আসতে পারে এবং সিস্টেম এর এবিলিটি অনুযায়ী ফুল আউটপুট না আসার সম্ভাবনা বেশি কারণ এই সিস্টেমে 2133/2400 বাসের র‍্যাম একটি বড় বটলনেক। (আবার অনেক গেমে এরকম হাই বাজেট বিল্ডেও স্পিড বটলনেক হয়না বা পরিমাণ সামান্য থাকে কিন্ত AAA গেমস গুলোয় বড় পার্থক্য চলে আসতে পারে)।

গ্রাফিক্স কার্ড বটলনেকঃ

GT 730

 

প্রসেসর বা বাকি সিস্টেমের তুলনায় গ্রাফিক্স কার্ডটি উইক হলে গ্রাফিক্স কার্ড বটলনেক ঘটে। এটি একটি তুলনামুলক ব্যাপার এবং এই ব্যাপারটি প্রসেসর এর মতই মাল্টি-কম্পোনেন্ট নির্ভর। অর্থাৎ অন্যন্য কম্পোনেন্ট এর উপর ও ডিপেন্ড করে ,তাছাড়া গেম থেকে গেমেও এই বটলনেক ভিন্ন ভিন্ন। যেমন একটি core i9 9900k বা Ryzen 7 3700x এর সাথে যদি GT 1030 গ্রাফিক্স কার্ড লাগানো হয় তো সিস্টেমটিতে গ্রাফিক্স কার্ড বটলনেক হবে। প্রসেসর এর ফুল পটেনশিয়াল কখনোই ব্যবহার হবে না তার আগেই গ্রাফিক্স কার্ডের জন্য লিমিটেশন চলে আসবে পারফর্মেন্স এ । এমনকি র‍্যাম বটলনেক ও ধরা নাও পড়তে পারে গ্রাফিক্সকার্ডের বটলনেক এর জন্য।

আপনি গেমের অন স্ক্রিন মনিটরিং চালু করলে রাখলে হয়তো দেখে থাকবেন যে প্রসেসর ইউসেজ ২০-১৫/২৫ এর মধ্যে ঘুরাফেরা করছে কিন্ত গ্রাফিক্স ইউসেজ ৯৯% বা এরকম থাকছে।।

সাধারণত একটি Ryzen 5 3600 দিয়ে RX 5700XT/ 2070 পর্যন্ত বটলনেক ছাড়াই চালানো সম্ভব। আবার একটি Ryzen 5 1600/Core i3 10100 দিয়ে RX 590/1660TI/Super পর্যন্ত ও চালানো সম্ভব।

2 very low budget performance limited graphics cards

যেসব গেম সিপিইউ ডিমান্ডিং সেসব ক্ষেত্রে গ্রাফিক্স কার্ড বটলনেক ধরা নাও পড়তে পারে তবে গ্রাফিক্স ডিমান্ডিং গেমে এটি একটি বড় ইস্যু।

*যদি বিল্ড হয় লো বাজেটের , যেমন rx 550/1050 এর সাথে Core i3 8100 এই ধরনের বিল্ডের ক্ষেত্রে ব্যালেন্সড বিল্ড বলা যেতে পারে তবে বটলনেক না, পারফর্মেন্স লিমিটেড শব্দটা বেশি প্রযোজ্য কারণ এখানে প্রতিটা কম্পোনেন্টই এবিলিটি অনুসারে সম্পুর্ণ ব্যবহ্বত হচ্ছে।

মনিটর-গ্রাফিক্স কার্ড বটলনেকঃ

মনিটরের রিফ্রেশ রেট যদি হয় ৬০/৭৫ আর গ্রাফিক্স কার্ডের আউটপুট এফপিএস যদি হয় এর থেকে অনেক বেশি তাহলে এখানেও একটি বটলনেক সৃষ্টি হবে তবেএটি কোন পারফর্মেন্স লিমিটেশন সৃষ্টি করবে না বা অন্যন্য কম্পোনেন্টেও প্রভাব ফেলবে না । কিন্তু আপনার এক্সপেরিয়েন্সে ডিফারেন্স আসবে।কারণ গ্রাফিক্স কার্ড যতগুলো ফ্রেম মনিটরকে দিচ্ছে ততগুলো ফ্রেম মনিটর আউটপুট দেখাতে পারছে না একত্রে।  এই বিশেষ সমস্যাটির ফলাফল হচ্ছে স্ক্রিন টিয়ারিং। (Screen tearing)। যদিও এটি সবসময় বোঝা ও যায় না এবং রিফ্রেশরেট-ফ্রেমরেট এর  খুব বেশি পার্থক্য না হলে সেরকম ইস্যু ও নয়।

screen tearing

 

উপসংহারঃবটলনেক এর সমাধান-

বটলনেকের সমাধান হচ্ছে বিল্ড করার সময় কম্পোনেন্টগুলোর মধ্যে ব্যালেন্স রাখা। এ ছাড়া কিছু নয়। সাধারণ হিসেবে গেমগুলো গ্রাফিক্স কার্ড hungry হয় এবং প্রসেসর এর তুলনায় গ্রাফিক্স কার্ডে বেশি ইনভেস্ট করা উচিত। দামের দিক দিয়ে বললে অবৈজ্ঞানিক ব্যাখা হতে পারে তবে একটি ১৫-২০ হাজার টাকার প্রসেসর দিয়ে আপনি ৪০-৫০ হাজার টাকা রেঞ্জের গ্রাফিক্স কার্ড পর্যন্ত চালাতে পারবেন মডেল হিসেবে বললে Ryzen 3 3300x এর বিল্ডে GTX 1660ti/ RX 5600XT খুবই ভালোভাবে যায়। তেমনি Ryzen 3 3100,Ryzen 5 1600/AF ,i3 10100 দিয়ে RX 590 পর্যন্ত চালানো যেতে পারে।খেয়াল রাখতে হবে তুলনামুলক ভাবে প্রসেসর বা গ্রাফিক্স কার্ড যেন অতিরিক্ত দুর্বল না হয়ে যায়  প্রকৃতপক্ষে আপনি যেকোন গ্রাফিক্স কার্ডের সাথেই যেকোনো প্রসেসর চালাতে পারবেন, পারফর্মেন্স ইস্যু হবে এটাই সমস্যা।

৮ জিবি র‍্যাম এখনো পারফেক্ট বলা যায় বাজেট বিল্ডে।  র‍্যাম এর ক্ষেত্রে 2666 বাসের র‍্যাম ৯০% ক্ষেত্রে কোন বটলনেক সৃষ্টি করবে না তবে এর থেকে কম স্পিডের র‍্যাম সিস্টেম কে পিছিয়ে দিবে। (এবং আপনি যদি 5700/XT/2070 এর মত গ্রাফিক্স কার্ড এর বিল্ড করেন তাহলে 3200Mhz র‍্যাম এর কম হলে তার প্রভাব দেখা যাবে পারফর্মেন্স এ। মনিটর এর ক্ষেত্রে আপনার সিস্টেমটি যদি ১২০/১৪৪ এফপিএস আউটপুট দেওয়ার মত হয় তাহলে মনিটর ও সেই রিফ্রেশ রেটেরই নেওয়া উচিত (তবে আমাদের দেশে ৯০% ক্ষেত্রেই এখনো ৭৫/৬০ হার্টজ ই ব্যবহ্বত হয়ে আসছে) অথবা গেমে V-sync চালু করলে এই স্ক্রিন টিয়ারিং সমস্যাটি কেটে যায়।

লঞ্চ হয়ে গেলো Oneplus Nord, দেখে নিন দাম,স্পেকস, রিলিজ ডেটঃ

লঞ্চ হলো Oneplus nord

MIUI 12 এর ফিচার জানতে দেখে নিন এই আর্টিকেলটিঃ

MIUI 12, কি কি থাকছে

আপনার ডিভাইসে কবে আসবে MIUI 12 আপডেট, দেখে নিনঃ

MIUI 12 কবে কোন ডিভাইসে পাওয়া যাবে আপডেট

মোস্তফা/কন্ট্রার মত ক্লাসিক গেমের মত গেম খুজছেন ? তাহলে এরকম গেম সম্পর্কে জেনে নিন এখান থেকেঃ

সেরা সাইড স্ক্রলিং গেমস

হাই স্পিডের র‍্যাম লাগাবেন কি না কনফিউশনে আছেন? পড়ে নিতে পারেন এই লেখাটিঃ

হায়ার বাস স্পিডের র‍্যামঃসত্যিই জরুরি?

 

 

 

- Advertisement -

LEAVE A REPLY

Please enter your comment!
Please enter your name here