01-11-2017, 02:49 PM
ابررایانههایی را که در دههٔ ۱۹۶۰ ساخته و ارائه شدند سیمور کری از بنگاه کنترل اطلاعات (CDC) طراحی کرده بود و تا دههٔ ۱۹۹۰ هم بازار در دست این ابررایانهها بود. زمانی که سیمور کری جدا شد و رفت تا شرکت خودش به نام تحقیقات سیمور را راهاندازی و اداره کند با طرحهای جدیدش بازار ابررایانهها را در دست گرفت و تا پنج سال (۱۹۸۵–۱۹۹۰) یکهتاز بازار ابرمحاسبه بود. خود کری هرگز واژهٔ ابررایانه را استفاده نکرد و کمتر کسی به خاطر دارد که او تنها کلمهٔ رایانه را استفاده میکرد. در سال ۱۹۸۰ همزمان با ظهور بازار رایانههای کوچک که یک دهه قبل به وجود آمده بودند تعداد زیادی رقبای کوچک وارد بازار شدند. اما بسیاری از اینها در دههٔ ۱۹۹۰ با بروز مبارزات بازار ابررایانه حذف شدند. امروزه ابررایانهها طراحیهای سفارشی کمنظیری هستند که شرکتهای صنعتی مثل آیبیام و اچپی تولید میکنند. همان شرکتهایی که بسیاری از شرکتهای دههٔ ۱۹۹۰ را خریدند تا از تجربهشان استفاده کنند. البته بنگاه کری هنوز به صورت حرفهای به ساخت ابررایانه ادامه میدهد. اصطلاح ابررایانه چندان پایدار و ثابت نیست. ممکن است ابررایانه امروز فردا تبدیل به یک رایانه معمولی شود. اولین دستگاههای CDC پردازندههای نردهای (اسکالر) خیلی سریع بودند؛ ده برابر سریعتر از سریعترین ماشینهای سایر شرکتها. در دههٔ ۱۹۷۰ اکثر ابررایانهها به انجام محاسبات برداری پرداختند و بسیاری رقبا و تولیدکنندگان جدید پردازندههای خودشان را با قیمت پایین با همان روش کار به بازار ارائه کردند تا در بازار حاضر شوند. در ابتدا و میانهٔ دههٔ ۱۹۸۰ ماشینهایی با پردازندههای اندک برداری که به صورت موازی کار میکردند تبدیل به استاندارد شدند. هر ماشینی معمولاً چهارده تا شانزده پردازندهٔ برداری داشت. در اواخر دهٔ ۱۹۸۰ و ۱۹۹۰ دوباره توجهها از پردازندههای برداری به سیستمهای پردازندهٔ موازی معمول معطوف شد که هزاران ریزپردازنده معمولی داشتند و برخی از آنها نمونههای آماده و برخی هم سفارشهای مشتریان بودند (در اصطلاح کاری، این را حملهٔ میکروهای کشنده مینامند). امروزه طرحهای موازی بر اساس ریزپردازندههای آمادهٔ نوع سرور ساخته میشوند از جمله Power PC, Itanium, x۸۶–۶۴ و مدرنترین ابررایانهها بسته (کلاستر)های رایانهای با تنظیمات دقیق هستند که پردازندههای کم حجم و رابطهای داخلی سفارشی و بسته به مورد دارند.
ابزارهای نرمافزاری برای پردازش توزیع شده شامل APIهای استاندارد از جمله MPI, PVM و ابزارهای نرمافزاری متن باز ازجمله Beowulf, Warewulf, Open mosix هستند که ساختن یک ابررایانه را از تعدادی سرورها یا واحدهای کاری ممکن میکنند. تکنولوژیهایی مثل ZerConf (Rendez-Vous/Bonjourقرار ملاقات/سلام) برای ساخت بستههای کامپیوتری موردنیاز برای نرمافزارهای تخصصی مثل shake اپل هستند. در علوم کامپیوتر هنوز یک زبان برنامهنویسی ساده برای ابرکامپیوترها نیست و موضوع خوبی برای تحقیق خواهد بود. برنامههای کاربردی هزاران دلار هزینه داشت اما امروزه به لطف جامعهٔ متن باز (که گاهی در این زمینه تکنولوژیهای جالب توجهی به وجود میآورد) رایگان هستند.
ابررایانهها با رمها و کار آییهای بسیاری که دارند معمولاً برای عملیات حساس روی محاسبه از جمله مسائل فیزیک کوانتوم، هواشناسی، تحقیقات آب و هوا (از جمله تحقیق دربارهٔ گرم شدن کرهٔ زمین) مدل سازی مولکولی (مطالعهٔ ساختارها و محتویات ترکیبات شیمیایی، ماکرومولکولهای بیولوژیکی، پلیمرها و بلورها) شبیهسازیهای فیزیکی (مثل شبیهسازی هواپیماها در تونلهای هوا، شبیهسازی انفجار سلاحهای هستهای و تحقیق دربارهٔ پیوست هستهای) تحلیل مخفی و … استفاده میشوند. دانشگاههای بزرگ، مراکز نظامی و آزمایشگاههای تحقیقات علمی بزرگترین کاربران آن هستند. نوع خاصی از مسائل به نام مسائل بسیار مشکل، مسائلی که حل کامل شان نیازمند منابع کامپیوتری نیمه بی پایان هستند. یک مطلب قابل توجه در این مقال تفاوت بین محاسبهٔ، توانایی محاسبه و ظرفیت است چنانکه گراهام و همکارانش بررسی کردهاند. محاسبهٔ توانایی یعنی استفاده از ماکزیمم توان محاسبه برای حل یک مسئلهٔ بزرگ در کمترین زمان. این سیستم اغلب میتواند مسئلهٔ را با حجم و پیچیدگی که هیچ کامپیوتر دیگری نمیتواند حل کند حل نماید. اما محاسبهٔ ظرفیت یعنی استفاده از توان محاسبهٔ مقرون به صرفه و کارآمد برای حل مسائل کم و بیش بزرگ یا تعداد زیادی مسائل کوچک یا آمادگی برای اجرا روی سیستم توانایی استفاده میشود.
[list]
[*]یک ابررایانه گرمای زیادی تولید میکند و باید خنک شود. خنک کردن بسیاری ابررایانهها مسئلهٔ بسیار بزرگی برای HVAC است.
[*]اطلاعات نمیتوانند با سرعتی بالاتر از سرعت نور بین دو بخش کامپیوتر جابجا شوند. به همین دلیل یک ابررایانه چندمتری (با عرض چندمتر) باید تأخیر (latency) بین قطعاتش در حد چند ده نانوثانیه باشد. به خاطر همین مشکل طراحیهای سیمور کری کوشیدند در حد امکان از طول کابلهای کمتراستفاده کنند شکل استوانهٔ کری هم به همین ترتیب به وجود آمد. در ابررایانههایی که تعداد بسیار زیادی cpu دارند که موازی هم کار میکنند برای فرستادن پیام بین پردازندهها توقف یک تا پنج میکرو ثانیه معمول است.
[*]برای فرستادن پیام بین پردازندههاها حجم بسیار بالای اطلاعات را در مدت زمان کوتاه مصرف و تولید میکنند. کن بچر میگوید: برای فرستادن پیام بین پردازندهها وسیلهای است که مسائل محدود به محاسبه را محدود به I/O میکند. برای حصول اطمینان از انتقال سریع و ذخیرهٔ و بازیابی صحیح اطلاعات باید روی پهنای باند ذخیرهٔ خارجی کار زیادی انجام بدهیم.
[/list]تکنولوژیهای تولید شده برای ابررایانهها شامل اینها میشوند:
[list]
[*]پردازش برداری
[*]خنککنندگی مایع
[*]دسترسی ناهمشکل به حافظه (NUMA)
[*]دیسکهای راه راه (اولین نمونه از آنچه بعدها نامش RAID شد)
[*]فایل سیستمهای موازی
[/list]سیستمعامل ابررایانهها که اغلب امروزه انواعی از لینوکس و یونیکس هستند و اگر پیچیدهتر از ماشینهای کوچکتر نباشند همان قدر پیچیده هستند. ظاهری که کاربر میبیند سادهتر است چون سازندگان OSها منابع برنامهنویسی کمتری برای سرمایهگذاری بر بخشهای غیرضروری OSها (یعنی بخشهایی که مستقیماً به بهترین کاربرد سختافزار نمیشود) دارند. دلیل اصلی آن این است که این کامپیوترها میلیونها دلار قیمت دارند امابازار خریدشان بسیار کوچک است لذا بودجههای R&D شان اغلب محدود است. وجود یونیکس و لینوکس اجازه میدهد ظاهر کاربرد (user interface) نرمافزار دسکتاپ معمولی دوباره مورد استفاده قرار بگیرد. جالب آنجا ست که در تاریخ صنعت ابررایانهها این روند هم چنان ادامه پیدا کرده است و رهبران قدیمی این تکنولوژی از جمله Silicon Graphics در برابر امثال nVIDIA عقب نشستهاند چرا که اینها میتوانند محصولات ابتکاری ارزان و پرفایده و پرکاربرد را به لطف مشتریان بسیارشان که R&D آنها را تأمین میکنند تولید نمایند. از نظر تاریخی تا ابتدا و میانهٔ دههٔ ابررایانهها اغلب سازگاری گروه دستورات و قابلیت جابجایی کدها را فدای عملکرد و سرعت پردازش و دسترسی به حافظهٔ کامپیوتر میکردند. اغلب ابررایانهها تا به امروز برخلاف کامپیوترهای گرانقیمت فنی high end main frames سیستمهای عامل بسیار متفاوتی دارند. Cray-۱ به تنهایی شش OS مخصوص خودش را داشت که جامعهٔ کامپیوتر هیچ خبری از آنها نداشت. مشابه آن کامپایلرهای برداری کننده و مواز ی کنندهٔ بسیاری هم برای فرترن موجود بود. اگر به خاطر سازگاری گروه دستورات اولیه بین Cray-۱ و Cray x-mp و پذیرش انواع OSهای یونیکس مثل CrayUnicos و لینوکس نبود این اتفاق برای ETA-۱۰ هم میافتاد. به همین دلیل در آینده سیستمهایی با بالاترین کاربرد احتمالاً رنگ و بویی از یونیکس خواهند داشت اما با خاصیتهای مخصوص سیستم ناسازگار خصوصاً برای سیستمهای بسیار فنی و گرانقیمت با امکانات امن مطمئن.
ابررایانه هدفمند ابزارهای محاسباتی با عملکرد بسیار سطح بالا و معماری سختافزاری مناسب حل یک مسئلهٔ خاص هستند. میتوان در آنها از تراشههای FPGA برنامهریزی شده یا چیپهای VLSI سفارشی استفاده نمود که عمومیت شان را از دست میدهند اما در عوض نسبت قیمت به کاربرد بالاتری ارائه میدهند. از آنها برای محاسبات نجومی و کد شکنیهای بسیار قوی استفاده میشود. پیش آمده است که یک ابررایانه هدفمند جدید از برخی نظرها از سریعترین ابررایانه وقت سریع تر عمل کند مثلاً GRAPE-۶ که در سال ۲۰۰۲ در برخی مسائل سریع تر از شبیهساز زمین عمل کرد. مثالهایی از ابررایانه هدفمند
[list]
[*]DEEP BLUE برای بازی شطرنج
[*]ماشینها یا ابزار و قطعات ماشینهای محاسبهٔ قابل پیکربندی مجدد
[*]GRAPE برای فیزیک نجوم و دینامیک مولکول
[*]DEEP CRACK برای رمزشکنی DES
[/list]
سرعت ابررایانه بر اساس FLOPS محاسبه میشود که مخفف عملیات دقیق شناور در هر لحظه میباشد و معمولاً هم یک پسوند SI مثل ترا یا پتا با آن است. در حالت ترا بودن آن را TFLOPS ترافلاپ ده به توان دوازده FLOP و در حالت پتا بودن PFLOPS پتافلاپ ده به توان پانزده میگویند. این محاسبهٔ بر اساس مقیاسی که مارتیس بزرگ را تجزیه ی(LU decomposition میکند صورت میگیرد. این نمونه مسائل حقیقی را بررسی میکند اما خیلی راحت تر از محاسبهٔ مسائل دنیای واقعی است.
ابزارهای نرمافزاری برای پردازش توزیع شده شامل APIهای استاندارد از جمله MPI, PVM و ابزارهای نرمافزاری متن باز ازجمله Beowulf, Warewulf, Open mosix هستند که ساختن یک ابررایانه را از تعدادی سرورها یا واحدهای کاری ممکن میکنند. تکنولوژیهایی مثل ZerConf (Rendez-Vous/Bonjourقرار ملاقات/سلام) برای ساخت بستههای کامپیوتری موردنیاز برای نرمافزارهای تخصصی مثل shake اپل هستند. در علوم کامپیوتر هنوز یک زبان برنامهنویسی ساده برای ابرکامپیوترها نیست و موضوع خوبی برای تحقیق خواهد بود. برنامههای کاربردی هزاران دلار هزینه داشت اما امروزه به لطف جامعهٔ متن باز (که گاهی در این زمینه تکنولوژیهای جالب توجهی به وجود میآورد) رایگان هستند.
ابررایانهها با رمها و کار آییهای بسیاری که دارند معمولاً برای عملیات حساس روی محاسبه از جمله مسائل فیزیک کوانتوم، هواشناسی، تحقیقات آب و هوا (از جمله تحقیق دربارهٔ گرم شدن کرهٔ زمین) مدل سازی مولکولی (مطالعهٔ ساختارها و محتویات ترکیبات شیمیایی، ماکرومولکولهای بیولوژیکی، پلیمرها و بلورها) شبیهسازیهای فیزیکی (مثل شبیهسازی هواپیماها در تونلهای هوا، شبیهسازی انفجار سلاحهای هستهای و تحقیق دربارهٔ پیوست هستهای) تحلیل مخفی و … استفاده میشوند. دانشگاههای بزرگ، مراکز نظامی و آزمایشگاههای تحقیقات علمی بزرگترین کاربران آن هستند. نوع خاصی از مسائل به نام مسائل بسیار مشکل، مسائلی که حل کامل شان نیازمند منابع کامپیوتری نیمه بی پایان هستند. یک مطلب قابل توجه در این مقال تفاوت بین محاسبهٔ، توانایی محاسبه و ظرفیت است چنانکه گراهام و همکارانش بررسی کردهاند. محاسبهٔ توانایی یعنی استفاده از ماکزیمم توان محاسبه برای حل یک مسئلهٔ بزرگ در کمترین زمان. این سیستم اغلب میتواند مسئلهٔ را با حجم و پیچیدگی که هیچ کامپیوتر دیگری نمیتواند حل کند حل نماید. اما محاسبهٔ ظرفیت یعنی استفاده از توان محاسبهٔ مقرون به صرفه و کارآمد برای حل مسائل کم و بیش بزرگ یا تعداد زیادی مسائل کوچک یا آمادگی برای اجرا روی سیستم توانایی استفاده میشود.
[list]
[*]یک ابررایانه گرمای زیادی تولید میکند و باید خنک شود. خنک کردن بسیاری ابررایانهها مسئلهٔ بسیار بزرگی برای HVAC است.
[*]اطلاعات نمیتوانند با سرعتی بالاتر از سرعت نور بین دو بخش کامپیوتر جابجا شوند. به همین دلیل یک ابررایانه چندمتری (با عرض چندمتر) باید تأخیر (latency) بین قطعاتش در حد چند ده نانوثانیه باشد. به خاطر همین مشکل طراحیهای سیمور کری کوشیدند در حد امکان از طول کابلهای کمتراستفاده کنند شکل استوانهٔ کری هم به همین ترتیب به وجود آمد. در ابررایانههایی که تعداد بسیار زیادی cpu دارند که موازی هم کار میکنند برای فرستادن پیام بین پردازندهها توقف یک تا پنج میکرو ثانیه معمول است.
[*]برای فرستادن پیام بین پردازندههاها حجم بسیار بالای اطلاعات را در مدت زمان کوتاه مصرف و تولید میکنند. کن بچر میگوید: برای فرستادن پیام بین پردازندهها وسیلهای است که مسائل محدود به محاسبه را محدود به I/O میکند. برای حصول اطمینان از انتقال سریع و ذخیرهٔ و بازیابی صحیح اطلاعات باید روی پهنای باند ذخیرهٔ خارجی کار زیادی انجام بدهیم.
[/list]تکنولوژیهای تولید شده برای ابررایانهها شامل اینها میشوند:
[list]
[*]پردازش برداری
[*]خنککنندگی مایع
[*]دسترسی ناهمشکل به حافظه (NUMA)
[*]دیسکهای راه راه (اولین نمونه از آنچه بعدها نامش RAID شد)
[*]فایل سیستمهای موازی
[/list]سیستمعامل ابررایانهها که اغلب امروزه انواعی از لینوکس و یونیکس هستند و اگر پیچیدهتر از ماشینهای کوچکتر نباشند همان قدر پیچیده هستند. ظاهری که کاربر میبیند سادهتر است چون سازندگان OSها منابع برنامهنویسی کمتری برای سرمایهگذاری بر بخشهای غیرضروری OSها (یعنی بخشهایی که مستقیماً به بهترین کاربرد سختافزار نمیشود) دارند. دلیل اصلی آن این است که این کامپیوترها میلیونها دلار قیمت دارند امابازار خریدشان بسیار کوچک است لذا بودجههای R&D شان اغلب محدود است. وجود یونیکس و لینوکس اجازه میدهد ظاهر کاربرد (user interface) نرمافزار دسکتاپ معمولی دوباره مورد استفاده قرار بگیرد. جالب آنجا ست که در تاریخ صنعت ابررایانهها این روند هم چنان ادامه پیدا کرده است و رهبران قدیمی این تکنولوژی از جمله Silicon Graphics در برابر امثال nVIDIA عقب نشستهاند چرا که اینها میتوانند محصولات ابتکاری ارزان و پرفایده و پرکاربرد را به لطف مشتریان بسیارشان که R&D آنها را تأمین میکنند تولید نمایند. از نظر تاریخی تا ابتدا و میانهٔ دههٔ ابررایانهها اغلب سازگاری گروه دستورات و قابلیت جابجایی کدها را فدای عملکرد و سرعت پردازش و دسترسی به حافظهٔ کامپیوتر میکردند. اغلب ابررایانهها تا به امروز برخلاف کامپیوترهای گرانقیمت فنی high end main frames سیستمهای عامل بسیار متفاوتی دارند. Cray-۱ به تنهایی شش OS مخصوص خودش را داشت که جامعهٔ کامپیوتر هیچ خبری از آنها نداشت. مشابه آن کامپایلرهای برداری کننده و مواز ی کنندهٔ بسیاری هم برای فرترن موجود بود. اگر به خاطر سازگاری گروه دستورات اولیه بین Cray-۱ و Cray x-mp و پذیرش انواع OSهای یونیکس مثل CrayUnicos و لینوکس نبود این اتفاق برای ETA-۱۰ هم میافتاد. به همین دلیل در آینده سیستمهایی با بالاترین کاربرد احتمالاً رنگ و بویی از یونیکس خواهند داشت اما با خاصیتهای مخصوص سیستم ناسازگار خصوصاً برای سیستمهای بسیار فنی و گرانقیمت با امکانات امن مطمئن.
ابررایانه هدفمند ابزارهای محاسباتی با عملکرد بسیار سطح بالا و معماری سختافزاری مناسب حل یک مسئلهٔ خاص هستند. میتوان در آنها از تراشههای FPGA برنامهریزی شده یا چیپهای VLSI سفارشی استفاده نمود که عمومیت شان را از دست میدهند اما در عوض نسبت قیمت به کاربرد بالاتری ارائه میدهند. از آنها برای محاسبات نجومی و کد شکنیهای بسیار قوی استفاده میشود. پیش آمده است که یک ابررایانه هدفمند جدید از برخی نظرها از سریعترین ابررایانه وقت سریع تر عمل کند مثلاً GRAPE-۶ که در سال ۲۰۰۲ در برخی مسائل سریع تر از شبیهساز زمین عمل کرد. مثالهایی از ابررایانه هدفمند
[list]
[*]DEEP BLUE برای بازی شطرنج
[*]ماشینها یا ابزار و قطعات ماشینهای محاسبهٔ قابل پیکربندی مجدد
[*]GRAPE برای فیزیک نجوم و دینامیک مولکول
[*]DEEP CRACK برای رمزشکنی DES
[/list]
سرعت ابررایانه بر اساس FLOPS محاسبه میشود که مخفف عملیات دقیق شناور در هر لحظه میباشد و معمولاً هم یک پسوند SI مثل ترا یا پتا با آن است. در حالت ترا بودن آن را TFLOPS ترافلاپ ده به توان دوازده FLOP و در حالت پتا بودن PFLOPS پتافلاپ ده به توان پانزده میگویند. این محاسبهٔ بر اساس مقیاسی که مارتیس بزرگ را تجزیه ی(LU decomposition میکند صورت میگیرد. این نمونه مسائل حقیقی را بررسی میکند اما خیلی راحت تر از محاسبهٔ مسائل دنیای واقعی است.