ابررایانه ها، کامپیوترهای غول پیکری هستند که از لحاظ ابعاد بسیار بزرگ بوده و فضای زیادی را اشغال میکنند. ابرکامپیوترها کمی با کامپیوترهای معمولی که دیده اید متفاوتند و ویژگیهای منحصر بفردی را بنام خود کرده اند که رایانههای معمولی از آنها بی بهره اند.
این کامپیوترهای غول پیکر تاریخچه هیجان انگیزی دارند و جزء کامپیوترهای قدرتمندی محسوب میشوند که گرمای زیادی را تولید میکنند.
ابررایانه چیست؟
ابررایانه ( Supercomputer ) به رایانهای اطلاق میگردد که در زمان معرفی آن در زمینه میزان ظرفیت محاسبه در واحد زمان در دنیا پیشرو باشد. این عبارت برای اولین بار توسط مجله «نیویورک ورلد» برای اشاره به جدولسازهای آیبیام در دانشگاه کلمبیا به کار رفت.
ابر کامپیوتر یا Supercomputer از نظر لغوی به معنی کامپیوتر مینفریم نسبتاً قوی است. منظور از Mainframe کامپیوترهای غولآسایی است که فضای زیادی مثل یک اتاق بزرگ یا یک سالن اشغال میکنند. در حقیقت ابر کامپیوترهای امروزی در فضایی بزرگ با سیستم تهویهی کارآمد قرار میگیرند و شامل تعداد زیادی کابینت و اتصالات شبکهای بین کامپیوترها هستند.
تکنولوژیها و دشواریهای ابررایانهها
یک ابررایانه گرمای زیادی تولید میکند و باید خنک شود. خنک کردن بسیاری ابررایانهها مسئلهٔ بسیار بزرگی برای HVAC است.
اطلاعات نمیتوانند با سرعتی بالاتر از سرعت نور بین دو بخش کامپیوتر جابجا شوند. به همین دلیل یک ابررایانه چندمتری (با عرض چندمتر) باید تأخیر (latency) بین قطعاتش در حد چند ده نانوثانیه باشد. به خاطر همین مشکل طراحیهای سیمور کری کوشیدند در حد امکان از طول کابلهای کمتر استفاده کنند شکل استوانهٔ کری هم به همین ترتیب به وجود آمد. در ابررایانههایی که تعداد بسیار زیادی cpu دارند که موازی هم کار میکنند برای فرستادن پیام بین پردازندهها توقف یک تا پنج میکرو ثانیه معمول است.
برای فرستادن پیام بین پردازندههاها حجم بسیار بالای اطلاعات را در مدت زمان کوتاه مصرف و تولید میکنند. کن بچر میگوید: برای فرستادن پیام بین پردازندهها وسیلهای است که مسائل محدود به محاسبه را محدود به I/O میکند. برای حصول اطمینان از انتقال سریع و ذخیرهٔ و بازیابی صحیح اطلاعات باید روی پهنای باند ذخیرهٔ خارجی کار زیادی انجام بدهیم.
تکنولوژیهای تولید شده برای ابررایانهها شامل اینها میشوند:
پردازش برداری
خنککنندگی مایع
دسترسی ناهمشکل به حافظه (NUMA)
دیسکهای راه راه (اولین نمونه از آنچه بعدها نامش RAID شد)
فایل سیستمهای موازی
تاریخچه ابررایانهها
ابررایانه هایی را که در دههٔ ۱۹۶۰ ساخته و ارائه شدند سیمور کری از بنگاه کنترل اطلاعات (CDC) طراحی کرده بود و تا دههٔ ۱۹۹۰ هم بازار در دست این ابررایانهها بود. زمانی که سیمور کری جدا شد و رفت تا شرکت خودش به نام تحقیقات سیمور را راهاندازی و اداره کند با طرحهای جدیدش بازار ابررایانهها را در دست گرفت و تا پنج سال (۱۹۸۵–۱۹۹۰) یکهتاز بازار ابر محاسبه بود.
خود کری هرگز واژهٔ ابررایانه را استفاده نکرد و کمتر کسی به خاطر دارد که او تنها کلمهٔ رایانه را استفاده میکرد. در سال ۱۹۸۰ همزمان با ظهور بازار رایانههای کوچک که یک دهه قبل به وجود آمده بودند تعداد زیادی رقبای کوچک وارد بازار شدند. اما بسیاری از اینها در دههٔ ۱۹۹۰ با بروز مبارزات بازار ابررایانه حذف شدند.
امروزه ابررایانهها طراحیهای سفارشی کمنظیری هستند که شرکتهای صنعتی مثل آیبیام و اچپی تولید میکنند. همان شرکتهایی که بسیاری از شرکتهای دههٔ ۱۹۹۰ را خریدند تا از تجربهشان استفاده کنند. البته بنگاه کری هنوز به صورت حرفهای به ساخت ابررایانه ادامه میدهد.
اصطلاح ابررایانه چندان پایدار و ثابت نیست. ممکن است ابررایانه امروز فردا تبدیل به یک رایانه معمولی شود. اولین دستگاههای CDC پردازندههای نردهای (اسکالر) خیلی سریع بودند؛ ده برابر سریعتر از سریعترین ماشینهای سایر شرکتها. در دههٔ ۱۹۷۰ اکثر ابررایانهها به انجام محاسبات برداری پرداختند و بسیاری رقبا و تولیدکنندگان جدید پردازندههای خودشان را با قیمت پایین با همان روش کار به بازار ارائه کردند تا در بازار حاضر شوند.
در ابتدا و میانهٔ دههٔ ۱۹۸۰ ماشینهایی با پردازندههای اندک برداری که به صورت موازی کار میکردند تبدیل به استاندارد شدند. هر ماشینی معمولاً چهارده تا شانزده پردازندهٔ برداری داشت. در اواخر دهٔ ۱۹۸۰ و ۱۹۹۰ دوباره توجهها از پردازندههای برداری به سیستمهای پردازندهٔ موازی معمول معطوف شد که هزاران ریزپردازنده معمولی داشتند و برخی از آنها نمونههای آماده و برخی هم سفارشهای مشتریان بودند (در اصطلاح کاری، این را حملهٔ میکروهای کشنده مینامند).
امروزه طرحهای موازی بر اساس ریزپردازندههای آمادهٔ نوع سرور ساخته میشوند از جمله Power PC, Itanium, x. ۸۶–۶۴ و مدرنترین ابررایانهها بسته (کلاستر)های رایانهای با تنظیمات دقیق هستند که پردازندههای کم حجم و رابطهای داخلی سفارشی و بسته به مورد دارند.
ابزارهای نرمافزاری ابررایانهها
ابزارهای نرمافزاری برای پردازش توزیع شده شامل APIهای استاندارد از جمله MPI, PVM و ابزارهای نرمافزاری متن باز ازجمله Beowulf, Warewulf, Open mosix هستند که ساختن یک ابررایانه را از تعدادی سرورها یا واحدهای کاری ممکن میکنند. تکنولوژیهایی مثل ZerConf (Rendez-Vous/Bonjour قرار ملاقات/سلام) برای ساخت بستههای کامپیوتری موردنیاز برای نرمافزارهای تخصصی مثل shake اپل هستند.
در علوم کامپیوتر هنوز یک زبان برنامهنویسی ساده برای ابرکامپیوترها نیست و موضوع خوبی برای تحقیق خواهد بود. برنامههای کاربردی هزاران دلار هزینه داشت، اما امروزه به لطف جامعهٔ متن باز (که گاهی در این زمینه تکنولوژیهای جالب توجهی به وجود میآورد) رایگان هستند.
استفادههای عمومی از ابررایانهها
ابررایانهها با رمها و کار آییهای بسیاری که دارند معمولاً برای عملیات حساس روی محاسبه از جمله مسائل فیزیک کوانتوم، هواشناسی، تحقیقات آب و هوا (از جمله تحقیق دربارهٔ گرم شدن کرهٔ زمین) مدلسازی مولکولی (مطالعهٔ ساختارها و محتویات ترکیبات شیمیایی، ماکرومولکولهای بیولوژیکی، پلیمرها و بلورها) شبیهسازیهای فیزیکی (مثل شبیهسازی هواپیماها در تونلهای هوا، شبیهسازی انفجار سلاحهای هستهای و تحقیق دربارهٔ پیوست هستهای) تحلیل مخفی و … استفاده میشوند. دانشگاههای بزرگ، مراکز نظامی و آزمایشگاههای تحقیقات علمی بزرگترین کاربران آن هستند. نوع خاصی از مسائل به نام مسائل بسیار مشکل، مسائلی که حل کامل شان نیازمند منابع کامپیوتری نیمه بی پایان هستند.
یک مطلب قابل توجه در این مقال تفاوت بین محاسبهٔ، توانایی محاسبه و ظرفیت است چنانکه گراهام و همکارانش بررسی کردهاند. محاسبهٔ توانایی یعنی استفاده از ماکزیمم توان محاسبه برای حل یک مسئلهٔ بزرگ در کمترین زمان. این سیستم اغلب میتواند مسئلهٔ را با حجم و پیچیدگی که هیچ کامپیوتر دیگری نمیتواند حل کند حل نماید. اما محاسبهٔ ظرفیت یعنی استفاده از توان محاسبهٔ مقرون به صرفه و کارآمد برای حل مسائل کم و بیش بزرگ یا تعداد زیادی مسائل کوچک یا آمادگی برای اجرا روی سیستم توانایی استفاده میشود.
طراحی سختافزار و نرمافزار ابررایانهها
ابررایانه هایی که پردازندههای سفارشی داشتند قبلاً سرعتی که روی کامپیوترهای معمولی داشتند را از طراحیهای ابتکاری شان به دست میآوردند که اجازه میداد مثل یک مهندسی به هم پیچیده چند کار را به صورت موازی انجام دهند. آنها را تنها برای انواع مشخصی از محاسبات مثل محاسبات عددی استفاده میکردند و در محاسبات کلیتر کامپیوتری ضعیف عمل میکردند.
سلسله مراتب حافظهٔ آنها به دقت طراحی میشد تا دائماً اطلاعات و دستورالعمل در دسترس پردازنده قرار گیرد. در اصل عمدهترین تفاوت بین ابررایانههاو کامپیوترهای کندتر در سلسله مراتب حافظهشان است. سیستم ورودی/خروجی آنها برای پهنای باندهای بالا با تأخیر (latency) بسیار پایین طراحی شدهاست چرا که اساساً ابرکامپیوترها برای پردازش انتقالات طراحی نشدهاند.
در این جا هم مثل هر سیستم موازی قانون آمدال صدق میکند. طراحیهای مختلف ابررایانهها برای حذف تتابع (serialization) نرمافزارها تلاش بسیاری میکنند و برای رفع مشکلات و تنگناهای باقیمانده و تسریع آنها از سختافزار استفاده میکنند.
مقایسهی قدرت پردازشی ابر کامپیوترها با کامپیوترهای خانگی
قدرت پردازشی ابر کامپیوترها به صورت تعداد اعمال محاسباتی که در هر ثانیه انجام میدهند، بیان میشود. برای اندازهگیری این فاکتور در کامپیوترهای معمولی که پردازنده و پردازندهی گرافیکی شناختهشدهای دارند، نرمافزارهای امتیازدهی یا بنچمارک طراحی شده است. شاید یک سیستم گیمینگ امروزی به اندازهی ابر کامپیوترهای قدیمی قدرتمند باشد، به همین دلیل نمیتوان در تعریف کردن لغت Supercomputer، قدرت پردازشی خاصی را ذکر کرد.
در حال حاضر قدرت پردازشی یک کارت گرافیک قدرتمند معمولی، در حد ۵ الی ۱۵ ترافلاپس است. یک FLOPS یا Floating Operation Per Second به معنی یک عمل اعشاری در هر ثانیه است که ممکن است با دقت ۳۲ بیت یا ۶۴ بیت (دقت مضاعف یا دابل) و یا ۱۶ بیت انجام شود ولیکن در عرصهی کامپیوترهای معمولی، همواره دقت محاسبات اعشاری ۳۲ ملاک است.
GFLOPS معادل ۱ میلیارد عمل اعشاری در ثانیه است و TFLOPS نیز معادل ۱ بیلیارد عمل اعشاری در ثانیه یا به زبان دیگر، معادل ۱۰۰۰ گیگافلاپس است. قدرت ابر کامپیوترهای امروزی در حد چند پتافلاپس است. یک PFLOPS معادل ۱۰۰۰ ترافلاپس است؛ بنابراین میتوان گفت که قدرت ابر کامپیوترهای امروزی نسبت به کامپیوترهای قدرتمند گیمینگ خانگی که شاید ۱۰ ترافلاپس قدرت پردازشی داشته باشند، چند هزار برابر بیشتر و البته بهینهتر است.
۱۰۰۰ گیگافلاپس = ۱ ترافلاپس
۱۰۰۰ ترافلاپس = ۱ پتافلاپس
در سالهای اخیر سه کشور چین، ایالات متحدهی آمریکا و ژاپن با توجه به نیازهای خود در عرصهی تحقیقات مختلف، همواره در تلاش برای ساخت ابرکامپیوترهای قویتر بودهاند. به عبارت دیگر لیست ۱۰ ابر کامپیوتر جهان، اغلب با نام این سه کشور روبرو میشویم.
آشنایی با سریعترین سوپرکامپیوتر جهان:
Sunway Taihulight چین
ابر کامپیوتری که چینیها در سالهای اخیر ساختهاند، مشخصاتی به شرح زیر دارد:
پردازندهی SW۲۶۰۱۰ با سرعت ۱.۴۵ گیگاهرتز و دارای ۴ گروه هسته
در هر گروه هسته، ۶۵ هسته وجود دارد و در مجموع یک گره شامل ۲۶۰ هسته خواهد بود.
در هر کابینت ۱۰۲۴ گره وجود دارد.
این ابر کامپیوتر مجموعاً ۴۰ کابینت دارد.
مجموعاً ۱.۳۱ میلیون گیگابایت رم در این ابر کامپیوتر به کار رفته است.
برای ارتباط بین کابینتها از اتصال PCIe ۳.۰ استفاده میشود چرا که به شبکهی بسیار سریعی نیاز است. نام این شبکهی سریع نیز Sunway Network گذاشته شده است. در Sunway Network از سوییچها و سختافزارهایی برای به اشتراکگذاری منابع استفاده شده و هر یک از سوپرگرهها با کابلهای ۷ اینچی به بقیه متصل است. هر یک از این کابلها میتواند داده را با سرعت باورنکردنی ۷۰ ترابایت بر ثانیه! جابجا کند.
توان مصرفی این ابر کامپیوتر چیزی در حدود ۱۵۰۰۰ کیلووات است. برای ساختن این ابر کامپیوتر چیزی در حدود ۳۹۰ میلیون دلار هزینه صرف شده است.
لیست ۱۰ ابر کامپیوتر برتر جهان
در حال حاضر لیست سریعترین ابر کامپیوترهای جهان شامل ۲ ابر کامپیوتر چینی، ۴ ابر کامپیوتر آمریکایی، ۳ ابر کامپیوتر ژاپنی و ۱ ابر کامپیوتر سوییسی میشود:
Sunway TaihuLight (چین): ۱۰۶۴۹۶۰۰ هسته، قدرت کلی ۹۳۰۱۴ ترافلاپس
Tianhe-۲ MilkyWay-۲ (چین): ۳۱۲۰۰۰۰ هسته، قدرت کلی ۳۳۹۶۲ ترافلاپس
Piz Daint (سوییس): ۳۶۱۷۶۰ هسته، قدرت کلی ۱۹۵۹۰ ترافلاپس
Gyoukou (ژاپن): ۱۹۸۶۰۰۰۰ هسته، قدرت کلی ۱۹۱۳۶ ترافلاپس
Titan (آمریکا): ۵۶۰۶۴۰ هسته، قدرت کلی ۱۷۵۹۰ ترافلاپس
Sequoia (آمریکا): ۱۵۷۲۸۶۴ هسته، قدرت کلی ۱۷۱۷۳ ترافلاپس
Trinity (آمریکا): ۹۷۹۹۶۸ هسته، قدرت کلی ۱۴۱۳۷ ترافلاپس
Cori (آمریکا): ۶۲۲۳۳۶ هسته، قدرت کلی ۱۴۰۱۵ ترافلاپس
Oakforest-PACS (ژاپن): ۵۵۶۱۰۴ هسته، قدرت کلی ۱۳۵۵۵ ترافلاپس
K. Computer – Sparc۶۴ (ژاپن): ۷۰۵۰۲۴ هسته، قدرت کلی ۱۰۵۱۰ ترافلاپس
کاربردهای سوپرکامپیوترها
شاید برایتان سوال شده که آیا با وجود پیشرفت شگرفی که کامپیوترهای خانگی و حتی محصولاتی مثل گوشی و تبلت داشتهاند، نیازی به کامپیوترهای چند میلیون هستهای وجود دارد؟
در پاسخ به این سوال باید از نگاه محققین به کامپیوتر نگاه کرد. کاربردهای ابر کامپیوترها معمولاً در عرصهی تحقیقات علمی است، جایی که محاسبات و یا دقتی که برای محاسبات مدنظر است، به قدری پیچیده و بالاست که قطعاً در کامپیوترها و سرورهای قدرتمند حاصل نمیشود و یا زمان بسیار طولانی برای تکمیل فرآیندها لازم است. در ادامه به چند کاربری اصلی ابر کامپیوترها به صورت خلاصه اشاره میکنیم.
ابررایانهها در صنایع
کمپانی جنرال الکتریک که از پیشگامان عرصهی هوافضاست، برای شبیهسازی پیشرفتهی موتور جت در Oak Ridge National Laboratory از ابر کامپیوترها استفاده میکند. هدف شبیهسازیها این است که کمپانی GE بازدهی موتورهای جت را بیشتر کند.
محققین Lawrence Livermore National Labs با استفاده از سوپرکامپیوترها به دنبال راههایی برای جمعآوری اطلاعات زیرسطحی هستند تا در صنایع نفت و گاز برای شناسایی معادل در خلیج مکزیک مورد استفاده قرار گیرد و در نهایت به استخراج بیشتر سوختهای فسیلی منجر شود.
مهندسین کمپانی بویینگ برای شبیهسازی هواپیماها و ایرودینامیکشان به صورت دقیق، از سوپرکامپیوترها استفاده میکنند تا هواپیماهایی با امنیت بیشتر و بازدهی سوخت بالاتر طراحی شود.
در صنایع فضایی اگر کوچکترین خطایی در محاسبات وجود داشته باشد و یا دقت محاسبات مثل محاسبات معمولی در حد ۳ رقم پس از اعشار باشد، نتیجه این خواهد بود که فضاپیما صدها کیلومتر در مسیر خود اشتباه حرکت میکند و ممکن است برخورد فاجعهباری با سطح سیارات و قمرها داشته باشد!
ابررایانهها در سازمانهای دولتی
مراکز تحقیقاتی در حوزهی ویروس و کنترل بیماریها با استفاده از سوپرکامپیوترها به شبیهسازی ویروسهایی مثل ویروس هپاتیت نوع C. پرداختهاند. با استفاده از شبیهسازیهای دقیق میتوان راههای درمان جدید برای بیماریها کشف کرد، همچنان که در مورد هپاتیت نوع C. این اتفاق افتاده است.
دپارتمان دفاعی ایالات متحدهی آمریکا با استفاده از سوپرکامپیوترها مدل جدید و دقیقی از وضعیت جوی تهیه کرده و به کمک آن میتوان گردبادها و طوفانهای خطرناک را پیشبینی کرد. ممکن است حتی ۵ روز قبل از طوفانهای خطرناک آنها را پیشبینی کرد. به این ترتیب یکی از کاربردهای اصلی ابر کامپیوترها در هواشناسی است.
ابررایانهها در صنایع نظامی
انجام برخی آزمایشهای تسلیحات بسیار هزینهبر و مخرب است. به همین علت میتوان از شبیهسازیهای دقیق به کمک ابر کامپیوترها استفاده کرد.
یکی از عجیبترین ابر کامپیوترهایی که در صنایع نظامی استفاده شده، ابر کامپیوتری به اسم Condor Cluster است که ارتش آمریکا در سال ۲۰۱۰ برای نیروی هوایی ساخته است. مهندسین با استفاده از ۱۷۶۰ کنسول بازی پلیاستیشن ۳ سونی! یک ابر کامپیوتر قدرتمند ساختهاند که قدرت محاسباتی آن ۵۰۰ ترافلاپس است. از این ابر کامپیوتر عجیب در تشخیص طرحها، پردازش تصاویر ماهوارهای و تحقیقات در حوزهی هوش مصنوعی استفاده میشود.
منبع : باشگاه خبرنگاران جوان