সুপার কম্পিউটার কি | কিভাবে কাজ করে? – বিস্তারিত ব্যাখ্যা | সুপার কম্পিউটিং মানেই কি সুপার ফাস্ট কম্পিউটিং?
অর্ধেক শতাব্দী পেছনে ফিরে গেলে, তখনকার সবচাইতে ছোট কম্পিউটারটিও একটি সম্পূর্ণ রুম দখল করে নিত। আর আজ মাইক্রোচিপের বদৌলতে আগের চেয়ে বেশি ক্ষমতাশালি কম্পিউটার গুলোও পকেটে এঁটে গেছে। কিন্তু কখনো ভেবে দেখেছেন কি, এখনকার এই ক্ষুদ্র চিপ গুলো দিয়ে যদি কোন ঘর সাইজের কম্পিউটার বানানো হয়, তবে সেটা কতটা শক্তিশালী হবে? এভাবেই কি তৈরি করা সম্ভব কোন সুপার কম্পিউটার? —যার সুপার কম্পিউটিং পাওয়ার আপনার বা আমার ল্যাপটপ বা ডেক্সটপ থেকে মিলিয়ন গুন বেশি, এবং এটি পৃথিবীর যেকোনো জটিল বৈজ্ঞানিক সমস্যার সমাধান করতে পারবে? আজকের প্রশ্ন হলো, ঠিক কোন বৈশিষ্ট্য একটি সাধারন কম্পিউটারকে সুপার-কম্পিউটার বানাতে সাহায্য করে? আপনার বর্তমান ব্যবহার করা কম্পিউটারটি থেকে একটি সুপার-কম্পিউটার কিভাবে আলাদা? চলুন সুপার কম্পিউটিং নিয়ে সকল তথ্য গুলো বিস্তারিত জেনে নেওয়া যাক।
সুপার কম্পিউটার কি?
তো, কোন সুপার বৈশিষ্ট্য গুলোর কারণে একটি কম্পিউটারকে, সুপার-কম্পিউটার বলে আখ্যায়িত করা হয়? কম্পিউটারটি উড়তে পাড়ার কারণে? কম্পিউটারটির সিপিইউ থেকে লেজার লাইট বেড় হওয়ার কারণে? না কম্পিউটারটির সাথে বিল্ডইন গোলাবারুদ আর কামান থাকার কারণে? আরে একমিনিট! এটা সুপার ম্যান নয়, সুপার-কম্পিউটার!
সহজ ভাষায় যে কম্পিউটার অত্যন্তবেশি দ্রুতগামী, জটিল বৈজ্ঞানিক সমস্যার সমাধান করতে পারে, আবহাওয়া পূর্বাভাস দিতে পারে অথবা এখনি বলে দিতে পারে ২০৫০ সালের জলবায়ু কেমন হবে এবং এরকম অসাধারণ কিছু কাজ করতে পারা কম্পিউটার গুলোকেই সুপার কম্পিউটার বলে। এখন আপনি হয়তো জিজ্ঞাস করতে পারেন, ঠিক কতটা ফাস্ট কাজ করার কম্পিউটার? যদি আমার কম্পিউটারে আরো বেশি র্যাম আর আরো বেশি কোর ওয়ালা প্রসেসর, আরো বেশি জিপিইউ যুক্ত করি, তবে আমিও কি সুপার কম্পিউটিং করতে পারবো? আসলে “সহজ ভাষায়” বলতে গিয়ে সুপার-কম্পিউটার নিয়ে যে সংজ্ঞা আমি দিয়েছি এটি পরিপূর্ণভাবে বুঝতে গেলে আপনাকে কিছু টার্ম সম্পর্কে প্রথমে অবগত হতে হবে।
দেখুন আজকের মূল প্রশ্নে প্রবেশের আগে আমাদের জানা প্রয়োজন আসলে কম্পিউটার টা কি? —এটি মূলত একটি মেশিন, যা যেকোনো সাধারন কাজ সম্পূর্ণ করে থাকে। এটি কোন কাজ করার জন্য প্রথমে ইনপুট দেওয়া তথ্য (ডাটা) গুলোকে গ্রহন করে, তারপর সেগুলোকে নিজের পাওয়ারে প্রসেসিং করে, এবং পরিশেষে একটি আউটপুট রেজাল্ট আপনার সামনে তুলে ধরে। আসলে সুপার-কম্পিউটার মানেই যে কোন বিশাল দৈত্যাকার কম্পিউটার হতে হবে কিংবা আপনার সাধারন কম্পিউটার থেকে মিলিয়ন-বিলিয়ন গুন দ্রুতগামী হতে হবে, মোটেও কিন্তু এমনটা নয়; আসলে এটি কোন কাজকে সম্পূর্ণ করার জন্য সম্পূর্ণ আলাদা পদ্ধতি ব্যবহার করে। আপনার সাধারন ডেক্সটপ বা ল্যাপটপের মতো এটি একটি সময়ে মাত্র একটিই কাজ না করে একসাথে অনেক কাজ করে। আর এটিই মূলত সেই প্রধান বৈশিষ্ট্য যা একটি কম্পিউটারকে সুপার কম্পিউটার বানায়।
সিরিয়াল এবং প্যারালেল প্রসেসিং
সিরিয়াল এবং প্যারালেল প্রসেসিং এর মধ্যে পার্থক্য কি? একটি সাধারন কম্পিউটার এক সময়ে মাত্র একটিই কাজ করতে পারে, অর্থাৎ কোন কাজ সম্পূর্ণ করার জন্য এটি একের পর এক প্রসেসিং সম্পূর্ণ করে কাজটির আউটপুট প্রদান করে। আর একে সিরিয়াল প্রসেসিং বলা হয়। এখন আপনি হয়তো বলবেন, “আরে আমি আমার কম্পিউটার দিয়ে একই সময়ে মিউজিক প্লে করি, ইন্টারনেট ব্রাউজ করি আবার ভিডিও রেন্ডার করি, আর আপনি বলছেন এক সময়ে একটি কাজ করে”? আসলে আপনার কম্পিউটার প্রতি সেকেন্ডে কয়েক মিলিয়ন আদেশ সম্পূর্ণ করতে পারে, এতে কোন কাজ একের পর এক সিরিয়ালি করেও আপনার কাছে রিয়াল টাইম মনে হয়। চলুন একটি সুন্দর উদাহরনের মাধ্যমে বিষয়টিকে আরো পরিষ্কার করার চেষ্টা করা যাক। একজন সাধারন দোকানীর কথা কল্পনা করুন, মনেকরুন আপনি তার দোকানে গেলেন এবং তাকে ১ কেজি ময়দার প্যাকেট দিতে বললেন। এবার সে কি করবে—সে প্রথমে তার সীট থেকে উঠবে তারপর ময়দার প্যাকেট রাখার র্যাকের দিকে যাবে, ময়দা প্যাকেটটি নিয়ে আসবে, আপনাকে হাতে ধরিয়ে দেবে, এবং আপনার দেওয়া ক্যাশ গননা করে ড্রয়ারে রেখে দেবে। এখন দেখুন, সে কতো দ্রুত তার আসন থেকে উঠলো বা কতো তাড়াতাড়ি র্যাক থেকে ময়দা এনে আপনার হাতে ধরিয়ে দিল এটা মূল বিষয় নয়। মূল বিষয়টি হচ্ছে সে একটি নির্দিষ্ট সময়ে কেবল একটিই কাজ করছে। সে যতো দ্রুতই আপনার কাছে সেবা সরবরাহ করুক না কেন, সে কিন্তু এক সময়ে একটিই কাজ করছে এবং একের পর এক কাজ করার মাধ্যমে আপনার কাছে সেবা সরবরাহ করছে। ঠিক এভাবেই সাধারন কম্পিউটার গুলো কাজ সম্পূর্ণ করে থাকে।
কিন্তু আজকের মডার্ন সুপার কম্পিউটার গুলো সম্পূর্ণ আলাদা পদ্ধতি ব্যবহার করে কাজ করে। এটি কোন কাজকে বিভিন্ন অংশে বিভক্ত করে নেয় এবং একই সাথে সেগুলোকে প্রসেসিং করে, আর এই কাজ করার সিস্টেমকেই প্যারালেল প্রসেসিং বলা হয়। উপরের উদাহরণ অনুসারে এখন মনে করুন, আপনি কোন দোকানে গেলেন ১ কেজি ময়দা, ১ লিটার তেল, এবং ১ কেজি চিনি কিনতে। এখন ধরুন ঐ দোকানে একসাথে ৩ জন লোক রয়েছে ঐ দোকানীকে সাহায্য করার জন্য। তাহলে আপনার চাওয়া জিনিষ গুলো আপনার পর্যন্ত সরবরাহ করতে সকলে একটি একটি করে আলাদা কাজ বেছে নিতে পারবে। কেউ চিনি আনবে, কেউ তেল আনবে আবার কেউ ময়দা সরবরাহ করবে এবং এই একই সময়ের মধ্যে আপনি দোকানীর সাথে টাকার লেনদেনটাও সেরে ফেলতে পারবেন। আবার খেয়াল করে দেখুন, প্রত্যেকে একই সময়ে আলাদা আলাদা জিনিষ আনলেও সবগুলো কিন্তু একত্রে আপনার কাছেই আসছে। এভাবে দোকানটিতে আপনি যতো জিনিষই কিনতে চান না কেন যদি সেখানে অনেক লোক কাজ করে তবে একই সময়ের মধ্যে অনেক দ্রুত সকল কাজ সম্পূর্ণ করা সম্ভব। আর এই হলো প্যারালেল প্রসেসিং, তাত্ত্বিকভাবে, আমাদের মস্তিষ্কও প্যারালেল প্রসেসে কাজ করে। একই সময়ে আপনি এই আর্টিকেলটি পড়ছেন আবার একই সময়ে আপনার মস্তিষ্ক আপনার দেহের অভ্যন্তরীণ সম্পূর্ণ কার্যকলাপ জারি রাখছে।
সুপার কম্পিউটিং এ প্যারালেল প্রসেসিং কেন প্রয়োজনীয়?
আমাদের প্রতিনিয়ত কাজের ব্যবহার করা কম্পিউটার গুলো এতোটা দক্ষ হওয়ার প্রয়োজন পড়ে না। ইন্টারনেট ব্রাউজিং, ইমেইল পাঠানো, বা টাইপ করার জন্য আপনার কম্পিউটারের অত্যন্ত কম প্রসেসিং ক্ষমতা ব্যয় করতে হয়। কিন্তু আপনি যদি অনেক জটিল কাজ যেমন- অনেক বড় রেজুলেসন ডিজিটাল ফটোর কালার পরিবর্তন করতে চান, তবে আপনার কম্পিউটারকে অনেক প্রসেসিং করতে হবে, অনেক সময় এটি সম্পূর্ণ করতে কয়েক মিনিট পর্যন্ত লেগে যেতে পারে। আবার আপনার কম্পিউটারে শুধু ইন্টারনেট ব্রাউজিং, ইমেইল পাঠানো, বা টাইপ ছাড়াও যদি গেমিং করতে চান, তবে আপনার অনেক ফাস্ট প্রসেসর, ডেডিকেটেড জিপিইউ এবং বেশি মেমোরির (র্যাম) প্রয়োজন পড়বে, নতুবা আপনার সিস্টেম স্লো কাজ করবে। ফাস্ট প্রসেসর, এবং দ্বিগুণ মেমোরি লাগালে আপনার কম্পিউটার নাটকীয়ভাবে অনেক দ্রুত কাজ করতে আরম্ভ করবে। কিন্তু কতটা দ্রুত? এই দ্রুতিরও একটি লিমিট রয়েছে—কেনোনা একটি প্রসেসর এক সময়ে কেবল একটিই মাত্র কাজ করতে পারে।
এখন মনেকরুন আপনি একজন বিজ্ঞানী এবং আপনি কোন আবহাওয়া অফিসে কাজ করেন। আপনাকে একসাথে আবহাওয়া পূর্বাভাস, নতুন ক্যান্সারের ঔষধ টেস্ট, এবং ২০৫০ সালে পর্যন্ত জলবায়ু মডেল করার কাজ করতে হবে। এখন এই কাজ গুলোকে সম্পূর্ণ করতে আপনার পিসির প্রসেসর এবং বেশি মেমোরি আপগ্রেড করতে পারেন, যদিও এটি আগের থেকে দ্রুত কাজ করবে কিন্তু তারপরেও এর কাজ করার একটি লিমিট রয়েছে। তবে যদি আপনার কাজ গুলোকে এক একটি টুকরাতে বিভক্ত করে নেওয়া হয় এবং প্রত্যেকটি টুকরাকে আলাদা প্রসেসর দিয়ে কাজ করানো হয়, মানে প্যারালেল প্রসেসিং করা হয়, তবে আপনার কাজ গুলো আগের চেয়ে অনেক দ্রুত এবং দক্ষতার সাথে করানো সম্ভব হবে।
প্যারালেল কম্পিউটিং
সুপার কম্পিউটার তৈরি করে সুপার কম্পিউটিং করার জন্য প্রয়োজন একসাথে অনেক গুলো প্রসেসর—যাতে সেগুলো একত্রে প্যারালেলে কাজ করে একই সময়ে অনেক কাজ সম্পূর্ণ করতে পারে। বর্তমান সময়ের সবচাইতে দ্রুতগামী সুপার কম্পিউটারের নাম হলো দ্যা সানয়ে তাইহুলাইট (The Sunway TaihuLight)। এতে ৬৪-বিট ৪০,৯৬০টি বহুকোর প্রসেসর রয়েছে এবং প্রত্যেকটি প্রসেসর চিপে রয়েছে ২৫৬ টি প্রসেসিং কোর। অর্থাৎ এই সম্পূর্ণ কম্পিউটারটি জুড়ে রয়েছে ১০,৬৪৯,৬০০ টি প্রসেসর!!!
সুপার কম্পিউটিং এর জন্য প্যারালেল কম্পিউটিং অবশ্যই একটি আদর্শ সিস্টেম, কিন্তু প্যারালেল কম্পিউটিং এর সাথেও কিছু গুরুত্বর সমস্যা রয়েছে। আবার সেই দোকানের উদাহরণে ফিরে যাওয়া যাক, কিন্তু এইবার উদাহরণ নেব সুপার মার্কেট দিয়ে। মনেকরুন আপনি আপনার কিছু বন্ধুকে নিয়ে সুপার মার্কেটে গেলেন কিছু জিনিষ কেনার জন্য। এখন আপনি যদি আপনার প্রত্যেকটি বন্ধুকে কিছু কিছু জিনিষ নেয়ার জন্য আলাদা আলাদা কাউন্টারে পাঠিয়ে দেন তবে অনেক কম সময়ে আপনার জিনিষ গুলো কেনা হয়ে যাবে, এবং শপিং শেষে সব জিনিষ আপনার কাছে একত্রিত হয়ে যাবে। ঠিক এমনভাবেই সুপার কম্পিউটার কোন কাজকে টুকরা টুকরা করিয়ে বিভিন্ন প্রসেসর দ্বারা সম্পূর্ণ করে আবার সেই টুকরা গুলোকে একত্র করে আউটপুট প্রদান করে। কিন্তু কোন কাজ যদি অনেক বড় হয়ে থাকে, তবে সেই কাজকে টুকরা করে প্রসেসর গুলোর কাছে পাঠানো এবং কাজ শেষে সকল টুকরা গুলোকে একত্রিত করা কম্পিউটারের ক্ষেত্রে অনেক কঠিন কাজ হয়ে দাঁড়ায়। এই কাজটি করার জন্য আরেকটি ম্যানেজমেন্ট সিস্টেমের প্রয়োজন পড়ে যাতে প্রত্যেকটি কাজ টুকরা করে প্রসেসরের কাছে পৌছিয়ে দেওয়া হয় এবং ফেরত আসা টুকরা গুলোকে একত্র করে আউটপুট দেওয়া যায়। কিন্তু এই ম্যানেজমেন্ট সিস্টেমকে প্রসেস করার জন্যও প্রয়োজন অনেক প্রসেসিং পাওয়ার, যা সিস্টেমকে ওভারলোড করে দিতে পারে। যেমন উইন্ডোজ ওএস এর টাস্ক ম্যানেজার—এটি মূলত সকল প্রোগ্রাম এর প্রসেসিং প্রদর্শন করায়, কিন্তু এগুলো প্রদর্শন করাতেও কিছু প্রসেসিং পাওয়ারের প্রয়োজন পড়ে।
আপনার বন্ধুদের বিভিন্ন কাউন্টারে পাঠিয়ে শপিং করাতে হয়তো অনেক কম সময়ে আপনি শপিং সম্পূর্ণ করতে পারবেন, কিন্তু টাকা পরিশোধ করার সময়ে দেরি হয়ে যাবে। মনেকরুন আপনি একসাথে মিলিয়ন জিনিষ শপিং করতে এসেছেন এবং ৫০,০০০ বন্ধু বিভিন্ন কাউন্টার থেকে জিনিষ গুলো সংগ্রহ করছে। যদি আপনি একবারে একটি কাউন্টার থেকে শপিং করতেন তাহলে একটি কাউন্টারেই ক্যাশ পে প্রবলেমটি সমাপ্ত হয়ে যেতো, কিন্তু বিভিন্ন কাউন্টারে শপিং করার ফলে একটি সমস্যা ৫০,০০০ সমস্যায় বিভক্ত হয়ে গেছে।
অনুরুপভাবে মনেকরুন আপনি গোটা পৃথিবীর সামনের সপ্তাহের আবহাওয়া পূর্বাভাস দেওয়ার জন্য কম্পিউটারে কম্যান্ড দিলেন। এখন আপনার কম্পিউটার এই সমস্ত কাজটি টুকরা টুকরা করে বিভিন্ন প্রসেসরে পাঠিয়ে দেবে প্রসেসিং করার জন্য, যদি আপনি কাজটি একটি প্রসেসরে করতেন তবে একবারেই সকল প্রসেসিং শেষ হয়ে যেতো। কিন্তু আলাদা প্রসেসরে প্রসেস করার জন্য প্রত্যেকটি প্রসেসরে আলাদা আলাদা ভাবে বিভিন্ন দেশের আবহাওয়া পূর্বাভাস বারবার প্রসেসিং হবে। বাট সমস্যাটি আরো গম্ভীর হতে পারে, কেনোনা পৃথিবীর বিভিন্ন দেশের আবহাওয়া আরেক দেশ থেকে সম্পূর্ণ আলাদা হতে পারে। ফলে একটি প্রসেসরকে আরেকটি প্রসেসরের কাজ সমাপ্ত হওয়া পর্যন্ত অপেক্ষা করতে হবে—এবং একটির সমস্যা সমাধানের জন্য আরেকটি প্রসেসর থেকে সাহায্য নেওয়ার প্রয়োজন পড়বে। তাই সুপার কম্পিউটারে কিছু কাজ প্যারালেল এবং কিছু কাজ সিরিয়াল প্রসেসিং এ করানোর প্রয়োজন পড়ে।
সুপার কম্পিউটিং
প্রকারভেদ—
এক বিশাল বাক্সে হাজার হাজার প্রসেসর, র্যাম আর জিপিইউ লাগিয়ে সুপার কম্পিউটার তৈরি করে এ দিয়ে প্যারালেল প্রসেসিং করিয়ে অনেক জটিল কাজ করানো সম্ভব। অথবা আপনি চাইলে একই ঘরের মধ্যে একত্রে অনেক গুলো পিসি একে অপরের সাথে অনেক ফাস্ট ল্যান (লোকাল এরিয়া নেটওয়ার্ক) ক্যাবল দিয়ে ইন্টারকানেক্ট করিয়েও সুপার কম্পিউটার তৈরি করতে পারেন। এই ধরনের সুপার কম্পিউটারকে ক্লাস্টার (Cluster) বলা হয়। গুগল এই ধরনের কম্পিউটার ব্যবহার করে তার ব্যবহারকারীগন দের সার্চ রেজাল্ট প্রদান করে থাকে।
আরেক ধরনের সুপার কম্পিউটারের নাম হলো গ্রিড (Grid)—যা অনেকটা ক্লাস্টারের মতোই, কিন্তু বিভিন্ন কম্পিউটার গুলো পৃথিবীর বিভিন্ন প্রান্তে অবস্থিত এবং ইন্টারনেট বা অন্যান্য কম্পিউটার নেটওয়ার্ক ব্যবহার করে একে অপরের সাথে কানেক্টেড হয়ে থাকে। এটি অনেকটা ডিস্ট্রিবিউটেড কম্পিউটিং এর উদাহরণ, যেখানে পৃথিবীর বিভিন্ন স্থানে থাকা কম্পিউটার গুলো একত্রে এক নেটওয়ার্কে কাজ করে। একে ভার্চুয়াল সুপার কম্পিউটিং ও বলতে পারেন। পৃথিবীর বিভিন্ন ভার্সিটি বা গবেষণা কেন্দ্র তাদের কম্পিউটার গুলোকে একে অপরের সাথে কানেক্ট করে রেখে গ্রিড সুপার কম্পিউটার তৈরি করে। গ্রিডে থাকা প্রত্যেকটি কম্পিউটার একই সাথে কাজ করেনা, বা তাদের কাজ করতে হয়না, তবে এরা একত্রে একটি শক্তিশালী কম্পিউটিং সিস্টেম তৈরি করে।
পরিচালনা—
ক্লাস্টার সুপার কম্পিউটার গুলোকে একত্রে কোন একটি বিশাল জায়গা জুড়ে রাখা হয়, অনেক সময় সে জায়গাটি ৩-৪টি ফুটবল মাঠের সমান হতে পারে। এবং এই দৈত্যাকার সাইজের কম্পিউটার গুলোকে চালানোর জন্য প্রয়োজন পড়ে এক বিশাল পরিমানের ইলেক্ট্রিসিটি, এই পরিমান ইলেক্ট্রিসিটি দ্বারা হাজার খানেক বাড়ি চালানো সম্ভব। এতো পরিমান ইলেক্ট্রিসিটি খরচ হওয়ার জন্য সুপার কম্পিউটার গুলোকে পরিচালনা করতে প্রয়োজন পড়ে মিলিয়ন-মিলিয়ন ডলার।
আবার সুপার কম্পিউটার গুলো অনেক বেশি উত্তাপ তৈরি করে, কেনোনা যখন ইলেক্ট্রিসিটি কোন ক্যাবলের মধ্যদিয়ে প্রবাহিত হয় তখন এতে তাপ শক্তিরও উৎপন্ন হয়। আর এই জন্য আপনার সাধারন কম্পিউটারেরও কুলিং সিস্টেমের প্রয়োজন পড়ে। কিন্তু এই বিশাল বড় কম্পিউটার গুলোকে তো আর সাধারন ফ্যান দ্বারা ঠাণ্ডা করা সম্ভব নয়। আজকের মডার্ন সুপার-কম্পিউটার গুলোকে তরল দ্বারা ঠাণ্ডা করানো হয়, ঠিক যে পদ্ধতিতে রেফ্রিজারেটর কাজ করে। এই কুলিং সিস্টেম পরিচালনা করার জন্য একে তো প্রচুর ইলেক্ট্রিসিটি ব্যয় হয়, দ্বিতীয়ত এটি পরিবেশের জন্যও হানীকারক।
সুপার কম্পিউটার কোন সফটওয়্যারে চলে?
আগেই বলেছি, কম্পিউটার এমন একটি মেশিন যা দ্বারা সকল সাধারন কাজ করানো সম্ভব (অবশ্যই ভার্চুয়ালি )। আপনি যদি চান তো সুপার কম্পিউটারে আপনার কম্পিউটারের অপারেটিং সিস্টেম ব্যবহার করিয়েই রান করতে পারেন, যেমন- উইন্ডোজ! কিন্তু বেশিরভাগ সুপার-কম্পিউটার লিনাক্স নির্ভর অপারেটিং সিস্টেমে চলে। এই অপারেটিং সিস্টেম গুলো অত্যন্ত কাস্টমাইজড হয়ে থাকে, মানে শুধু নির্দিষ্ট কাজের ফিচার গুলো দিয়েই তৈরি করা হয়ে থাকে। যেহেতু সুপার-কম্পিউটার গুলোকে মূলত বিভিন্ন বৈজ্ঞানিক সমস্যা সমাধানের জন্যই ব্যবহার করা হয়, সেখানে অন্যান্য কাজের ফিচার থাকার প্রয়োজন কি বলুন?
সুপার কম্পিউটিং কি কাজে লাগে?
কম্পিউটার যেহেতু সকল সাধারন কাজের একটি মেশিন তাই আপনি চাইলে সুপার-কম্পিউটার দিয়ে ইন্টারনেট ব্রাউজিং, মেইল সেন্ড, ফটো এডিটিং, ভিডিও এডিটিং, গেমিং এমনকি টেকহাবস এ আর্টিকেল পর্যন্ত পড়তে পারেন। আপনার সাধারন কম্পিউটার গুলোর মতোই এই কাজ গুলো করতে আপনার সিস্টেমে বিভিন্ন প্রোগ্রাম রান করানোর প্রয়োজন পড়বে। যেমনটা আপনার অ্যান্ড্রয়েড বা আইফোনে বিভিন্ন কাজ করার জন্য বিভিন্ন অ্যাপস (অ্যাপ্লিকেশন) এর প্রয়োজন পড়ে, এগুলো কিন্তু কম্পিউটার প্রোগ্রাম, কিন্তু ভিন্ননামে থাকে আর কি!
সুপার কম্পিউটারে আপাতত এসব কাজ করা হয় না। এটি দ্বারা বিভিন্ন জটিল গাণিতিক সমস্যার সমাধান, বৈজ্ঞানিক সমস্যার সমাধান, নিউক্লিয়ার মিশাইল টেস্ট, আবহাওয়া পূর্বাভাস, জলবায়ু পরিবর্তন, এবং ইনক্রিপশনের নিবিড়তা পরীক্ষা করার জন্য ব্যবহার করা হয়। তবে তাত্ত্বিকভাবে, সুপার-কম্পিউটার দ্বারা সকল কাজ করানো সম্ভব যা আপনার সাধারন কম্পিউটার করে থাকে।
সুপার কম্পিউটার কতটা শক্তিশালী?
সাধারন কম্পিউটার গুলো তাদের কাজ করার ক্ষমতাকে এমআইপিএস (MIPS) বা মিলিয়ন ইন্সট্রাকশন পার সেকেন্ড (Million Instructions Per Second) আকারে প্রকাশ করে। এটি দ্বারা নির্দেশ করে যে, ঐ সিস্টেমটি কোন কাজকে সম্পূর্ণ করতে কতো গুলো কম্যান্ড (রীড, রাইট, ডাটা স্টোর) প্রসেসিং করতে পারে। এমআইপিএস এর মাধ্যমে দুইটি প্রসেসরের মধ্যে তুলনা করা সহজ হয়, যে প্রসেসর যতোবেশি এমআইপিএস এ কাজ করতে পারবে সেটি ততো শক্তিশালী বলে আখ্যায়িত হয়। এটিকে সাধারনত আমরা প্রসেসর স্পীড বলে জানি, যা মূলত গিগাহার্জ রূপে প্রকাশ করা থাকে।
কিন্তু সুপার কম্পিউটার গুলোর কাজ করার ক্ষমতাকে আলাদা ভাবে প্রকাশ করা হয়। যেহেতু এই কম্পিউটার গুলোকে বৈজ্ঞানিক কাজে ব্যবহার করা হয় তাই এর ক্ষমতাকে এফএলওপিএস (FLOPS) ফ্ল্যোটিং পয়েন্ট অপারেশন পার সেকেন্ড (Floating Point Operations Per Second) হিসেবে গননা করা হয়। এটি কোন কম্পিউটারের কার্যকারী ক্ষমতা গননা করার দক্ষ পদ্ধতি। চলুন এই দুইটি টার্মকে একটি ছোট্ট উদাহরনের মাধ্যমে বোঝার চেষ্টা করি…
মনেকরুন, আপনি একটি ফুটবল ম্যাচ দেখছেন, আপনি দেখছেন বর্তমানে ১ নং প্লেয়ারের কাছে বলটি আছে তিনি মাঠের মাঝে থাকা ২ নং প্লেয়ারটিকে বলটি পাস করলেন, ২ নং প্লেয়ারটি গোলের কাছে থাকা ৩ নং প্লেয়ারকে বলটি পাস করলেন—এবং ৩ নং প্লেয়ারটি একটি বুদ্ধিমান জোরালো হিট করে বলটিকে গোলে প্রবেশ করিয়ে গোল করলেন। আর এভাবেই বিভিন্ন প্লেয়ারের হিটের মাধ্যমে আরো ৩ টি গোল হলো। এখন, এখানে এমআইপিএস মানে হলো একটি গোল সম্পূর্ণ করতে বলটিকে কতো গুলো প্লেয়ারের কাছ হতে হিট খেয়ে গোলে প্রবেশ করতে হয়েছে। এবং এফএলওপিএস মানে হলো, সেই টিমটি মোট কতো গুলো গোল দিয়েছে। অর্থাৎ প্রতি সেকেন্ডে একটি কাজ করার জন্য প্রসেসরকে কতো মিলিয়ন কম্যান্ড অনুসরন করতে হয় এটি এমআইপিএস দ্বারা প্রকাশ করা হয় এবং প্রতি সেকেন্ডে কতোটি কাজ সম্পূর্ণ করা হয় এটি এফএলওপিএস দ্বারা প্রকাশ করা হয়।
Unit | FLOPS | Power form | Example | Key decade |
---|---|---|---|---|
Hundred FLOPS | 100 FLOPS | 10^2 FLOPS | Eniac | 1940s |
KFLOPS (kiloflops) | 1,000 FLOPS | 10^3 FLOPS | IBM 704 | 1950s |
MFLOPS (megaflops) | 1,000,000 FLOPS | 10^6 FLOPS | CDC 6600 | 1960s |
GFLOPS (gigaflops) | 1,000,000,000 FLOPS | 10^9 FLOPS | Cray-2 | 1980s |
TFLOPS (teraflops) | 1,000,000,000,000 FLOPS | 10^12 FLOPS | ASCI Red | 1990s |
PFLOPS (petaflops) | 1,000,000,000,000,000 FLOPS | 10^15 FLOPS | Jaguar | 2010s |
পৃথিবীর সবচাইতে দ্রুতগামী ৫টি সুপার কম্পিউটার
Year | Supercomputer | Peak speed (Rmax) | Location |
---|---|---|---|
2016 | Sunway TaihuLight | 93.01 PFLOPS | Wuxi, China |
2013 | NUDT Tianhe-2 | 33.86 PFLOPS | Guangzhou, China |
2012 | Cray Titan | 17.59 PFLOPS | Oak Ridge, U.S. |
2012 | IBM Sequoia | 17.17 PFLOPS | Livermore, U.S. |
2011 | Fujitsu K computer | 10.51 PFLOPS | Kobe, Japan |
এছাড়া লেটেস্ট সুপার কম্পিউটার লিস্ট পেতে এবং অন্যান্য আরো সকল তথ্য পেতে https://www.top500.org/ ভিসিট করতে পারেন।
শেষ কথা
কম্পিউটিং এর দিক থেকে আমরা দিনদিন হাসিল করছি এক প্রশংসনীয় ক্ষমতা। আজকের পকেটে থাকা কম্পিউটিং ডিভাইজ গুলোর ক্ষমতা ২০ বছর আগের ঘরের সমান কম্পিউটার গুলো থেকে অনেক বেশি। আজ সুপার কম্পিউটিং এর প্রায় শীর্ষে পৌঁছে গেছি, এখন অপেক্ষা কোয়ান্টাম কম্পিউটিং এর। খুব শীঘ্রই হয়তো এটিও ব্যস্তব রুপ ধারণ করবে
আশা করি আজকের টিউনটি চমৎকার লেগেছে আপনার, বিশেষ করে টিউনটি লেখার সময় আমি নিজেও অনেক মজা পাচ্ছিলাম এই দৈত্যাকার টিউনটি মনোযোগ সহকারে পড়ার জন্য ধন্যবাদ, সাথে সুপার কম্পিউটিং নিয়ে যেকোনো আলোচনা বা প্রশ্নের জন্য নিচে টিউমেন্ট করতে ভুলবেন না। আর বরাবরের মতোই অবশ্যই টিউনটি বেশিবেশি শেয়ার করবেন।
"সুপার কম্পিউটার কি" - পূর্বে প্রকাশিত হয়েছে - টেকহাবস ডট নেট
No comments: