ماشین مجازی محاسباتی سربارهای اصلی
ماشین مجازی محاسباتی سربارهای اصلی – ایران ترجمه – Irantarjomeh
مقالات ترجمه شده آماده گروه کامپیوتر
مقالات ترجمه شده آماده کل گروه های دانشگاهی
مقالات
قیمت
قیمت این مقاله: 38000 تومان (ایران ترجمه - Irantarjomeh)
توضیح
بخش زیادی از این مقاله بصورت رایگان ذیلا قابل مطالعه می باشد.
شماره | ۹۷ |
کد مقاله | COM97 |
مترجم | گروه مترجمین ایران ترجمه – irantarjomeh |
نام فارسی | اصول کاربردی ماشین های مجازی برای محاسبات دارای عملکرد بالا:یک مطالعه کمی درباره سربارهای اصلی |
نام انگلیسی | Pragmatics of Virtual Machines for High-Performance Computing: A Quantitative Study of Basic Overheads |
تعداد صفحه به فارسی | ۳۰ |
تعداد صفحه به انگلیسی | ۷ |
کلمات کلیدی به فارسی | فرا محاسبه (فرا رایانش)، رایانش گرید، ماشین مجازی(VM)، بیوانفورماتیک، GROMACS (شبیه سازی دینامیکی مولکولی)، معیار سنجی، فایل سیستم ها |
کلمات کلیدی به انگلیسی | metacomputing, grid computing, virtual machine (VM),bioinformatics, GROMACS (molecular dynamics simulation), bench-marking, file systems |
مرجع به فارسی | دپارتمان علوم کامپیوتر، دانشگاه آلبرتا، کانادا |
مرجع به انگلیسی | Dept. of Computing Science; University of Alberta; Edmonton, Alberta, Canada |
کشور | کانادا |
اصول کاربردی ماشین های مجازی برای محاسبات دارای عملکرد بالا: یک مطالعه کمی درباره سربارهای اصلی
چکیده
حوزه های مدیریتی ناهمگن، سیستم های عامل (OS) و کتابخانه ها امر بهره برداری کامل از فرا کامپیوترها و گریدها، برای محققینی که در امور محاسباتی فعالیت دارند، را مشکل می سازد. سر و کار داشتن با مسایلی همانند حضور یا عدم حضور برخی از ویژگیها، نظیر کلاسترها یا خوشه های مختلف، سبب اضافه شدن به پیچیدگی های موجود شده است. چگونه یک کاربر و یا یک برنامه کاربردی محاسباتی با ویژگی عملکرد بالا (HPC) می توانند با چنین مواردی از ناهمگنی یا عدم تجانس به تعامل پردازند؟
یکی از راه حل های احتمالی استفاده از یک محیط ماشین مجازی (VM) می باشد که از سیستمهای عملیاتی میزبان و دیسک های مجازی پشتیبانی می نماید. با این وجود، در خلال دههها، ماشین های مجازی در برخی از مواقع از سربارهای عملی و سکوها یا پلتفرمهای محدودی برخوردار بودند که دایره اجرایی آنها را تنگ نموده بود. بر این مبنا، از طریق یک مطالعه کمی ساده، ما پیشرفت های اخیر در زمینه پشتیبانی از ویژگیهای نرم افزاری و سخت افزاری، که سبب کاهش سربارهای برنامه های کاربردی HPC (نظیر، GROMACS، BLAST، HMMer) به زیر ۶% برای برنامههای محاسبه- بر، و در عین حال، ۷/۹ % یا بیشتر برای برنامههای I/O– بر، در پلتفرم مبتنی بر پردازنده X86 ما شدهاند، را مورد بررسی قرار می دهیم. بعلاوه، ما مزیت های عملی و کیفی استفاده از ماشین های مجازی برای محاسبات دارای عملکرد بالا را مورد بررسی قرار میدهیم، که شامل سادگی پیاده سازی، کاربرد پذیری ارتقا یافته و قابلیت اجرای وظایف بر روی سیستم های بیشتری، در مقایسه با آنچه معمولاً در دسترس می باشد، خواهد بود. در عین آنکه نمی توان این سیستم را کامل دانست، ماشین های مجازی بعنوان یک ابزار عملی در زمینه محاسبات دارای عملکرد بالا در حال ظهور می باشند.
کلمات کلیدی: فرا محاسبه (فرا رایانش)، رایانش گرید، ماشین مجازی (VM)، بیوانفورماتیک، GROMACS (شبیه سازی دینامیکی مولکولی)، معیار سنجی، فایل سیستم ها
۱- مقدمه
ناهمگنی یا عدم تجانس در اشکال مختلف، غالباً بعنوان یک مانع عملی برای کاربرانی بشمار میآید که خواستار بهره گیری از مزیت سیستم های کامپیوتری مختلف برای محاسبات با حجم کاری دارای عملکرد بالا (HPC) بودهاند. بطور مثال، بسیاری از محاسبات علمی در HPC متشکل از مجموعه ای از وظایف مشابه (بصورت ترتیبی یا موازی، البته ما بطور عمده در این مبحث بر روی وظایف ترتیبی تمرکز مینماییم.) برای روبش/ جاروی پارامتر (parameter–sweep)، و بگونهای است که قابیلت اکتشاف یا بررسی نیروهای بین دو مولکول بعنوان یک موقعیت نسبی تغییر مولکولها وجود داشته باشد [Su and Xu, 2005]. بطور ایده آل، دانشمندان می بایست قابلیت انباشتگی گروههای ایستگاه های کاری تحقیقاتی، خوشه دپارتمان، یا کنسرسیومی از HPCهای دانشگاهی را داشته باشند تا بتوانند، بطور مستقل از حجم کاری، قابلیت اجرای وظایف مختلفی را فراهم آورند. اما، در صورتی که این سیستم ها دارای زیر ساخت های امنیتی مختلفی باشند، و ازسیستم های عامل مختلفی استفاده نمایند، و یا آنکه از نگارش های مختلف کتابخانههای نرم افزاری استفاده نمایند، با یک فرآیند (بالقوه) پیچیده انتقال و پیکر بندی مجدد برنامه های کاربردی و روتینهای کاری برای هر سیستم روبرو خواهیم شد.
ماشین مجازی محاسباتی سربارهای اصلی
الف. سابقه
محاسبه گرید [Foster et al., 2002] سعی در حل برخی از مشکلات مربوطه به این عدم تجانس از طریق بکارگیری کلاس خاصی از نرم افزار می نماید که می بایست آن را در کلیه سیستم ها نصب نمود. بطور مثال، در صورتی که اقدام به نصب زیرساختار امنیتی گرید (GSI) بر روی کلیه سیستم ها شود، صرفنظر از مکانیزهای امنیتی غیر متجانس موجود، امکان پشتیبانی از یک مدل امنیتی متعارف بر روی آن گرید خاص فراهم خواهد شد. بطور ذاتی، محاسبات گرید، از طریق تعریف یک سکوی نرم افزاری جدید همگن، قابلیت حاصل آوردن تجانس را خواهد داشت. پروژه های دیگر [Lu et al., 2006]، [Pinchak et al., 2003]، [Anderson, 2004] بطور نسبی اقدام به مخاطب قراردادن این ناهمگنی از طریق بررسی سیستم های نرم افزاری موجودی نمودند که قبلاً (بطور تقریبی) در سطح گسترده ای پیاده سازی گردید ( نظیر Secure Shell برای مسایل ایمنی یا TCP/IP اصلی برای تعاملات کلاینت – سرور) و بر این اساس توانستند نسبت به کاهش نیاز نرم افزارهای جدید جهت تعامل با حجم کاری HPC اقدام نمایند.
ب. ماشین های مجازی
چگونه میتوان نسبت به پشتیبانی از برنامه های کاربردی بدون تغییر و موجود در پلتفرمهای مختلف، صرفنظر از نوع سیستم و کتابخانه های آنها، یا نگارش کتابخانه ها که بر روی سیستم میزبان مهیا شده اند، اقدام نمود؟ یکی از جواب های محتمل استفاده از ماشین مجازی (VM) جهت مجازی سازی سخت افزار فیزیکی می باشد، نظیر VMware [Adams and Agesen, 2006] (www.vmware.com)، Parallels (www.parallels.com) و از نقطه نظر تاریخی ماشین های مجازی ۳۶۰ IBM (IBM System/360 VM). (توجه داشته باشید که Parallels نام محصول تجاری است و بطور خاص به رویه موازی سازی در HPC دلالت ندارد). بغیر از Java VMs، VMware (و سیستم های مشابه) نیز نسبت به مجازی سازی سخت افزار بدون تغییر مجموعه دستورالعمل های پردازنده یا تغییر روش های استاندارد تعامل با ورودی / خروجی(I/O) اقدام مینمایند. دیدگاه های دیگری در زمینه مجازی سازی وجود دارند، همانند دیدگاههای پارا- مجازی سازی Xen، [Barham et al., 2003]، لینوکس کرنل- محور KVM [Qumranet, 2006]، و استراتژی در حال ظهور مبتنی بر ویندوز از مایکروسافت. برای این مطالعه، ما نگاه خود را معطوف به VMware مینماییم که علت آن نیز بلوغ نسبی و مهیا بودن گسترده آن بطور کلی میباشد. مقایسه بین ماشین های مجازی مختلف و استراتژی گوناگون جزء مباحث تحقیقاتی آتی به شمار میآید.
…
با این وجود، دیدگاه مبتنی بر ماشین مجازی دارای برخی از معایب نیز خواهد بود:
بوجود آوردن یک ماشین مجازی برای کاربردهای علمی امر ساده ای تلقی نمی شود. گردآوری کلیه مولفهها همانند سیستم عامل، کتابخانه ها، همراه با سیستم کاربردی، در مقایسه با اقدامات علمی محاسباتی متعارف، بخودی خود تخصص بیشتر (و تلاش مضاعف) را طلب مینماید.
محصولات ماشین مجازی معاصر، نظیر VMware محدود به سکوهای سخت افزاری مبتنی برX86 می باشند.
مجازی سازی دارای سربارهایی نیز خواهد بود [Adams and Agesen, 2006]. شبیه سازی ادوات ورودی – خروجی (I/O) مختلف و کار با مواردی که از اولویت برخوردار میباشند (در حالت متعارف آن برای سیستم های عامل) منجر به اتلاف برخی از عملکردها، در مقایسه با اجرای مستقیم آنها بر روی یک سیستم عامل و سخت افزار میزبان خواهد شد.
هدف مقاله کنونی ارزیابی سربارهای مجازی سازی، در محتوای سیستم های کاربردی HPC میباشد تا آنکه برخی از مسائل عملی مرتبط با ماشین های مجازی مشخص گردیده و تعدادی از نتیجه گیریهای متناسب در زمینه مزیت ها و معایب ماشین های مجازی برای HPC مشخص شود. پس از انجام مجموعه ای از آزمایشات ساده و کمی، ما بدین نتیجه می رسیم که ماشین های مجازی بعنوان ابزارهای امید بخشی برای برنامه های کاربردی محاسبه – بر محسوب میشوند و در مقابل برای برنامه های کاربردی که IO– بر چندان متناسب نخواهند بود.
ماشین مجازی محاسباتی سربارهای اصلی
۲- اصول عملی ماشین های مجازی
تعدادی از مباحث به نفع کاربرد ماشین های مجازی بر روی گریدها و محیط های مشابه [Figueiredoet al., 2003] مطرح شده اند. در این بخش، تمرکز ما بر روی سه دلیل عملی مهم در زمینه توجه به ماشین های مجازی می باشد. در بخش بعدی، ما عملکرد برنامه های کاربردی که از اندازه کاملی برخوردار میباشند را مدنظر قرار خواهیم داد.
اصول عملی ۱: ادوات مجازی: با وجود آنکه ایجاد یک ماشین مجازی از ابتدا نیازمند تخصصی نمی باشد، یک خط مشی در حال رشد در زمینه ماشین های مجازی ایجاد چیزی است که تحت عنوان ادوات مجازی خوانده می شود. بطور مثال، یک سیستم توزیعی مبتنی برلینوکس ۶/۲ (موجود در Gentoo، Debian، Scientific Linux یا هر نوع دیگر) را می توان در یک ماشین مجازی مجتمع نموده وآن را بعنوان یک واحد مجزا در قیاس با نرم افزار فشرده شده و بسته بندی گردیده به مشتریان عرضه نمود. علی الخصوص، VMware هم اکنون از یک جامعه کاربر آنلاین پشتیبانی می نماید که در آن تعداد زیادی از ادوات از قبل مهیا شده ایجاد گردیده که برای دانلود در آدرس روبرو موجود میباشند: (http://www.vmware.com/vmtn) مثال های از این ادوات شامل سرورهای پستی خود محتوایی، فایروال ها یا دیوارهای آتش شبکه و سیستمهای فایل توزیعی می باشند [Closson , Lu, 2005]. بعلاوه، ادوات مجازی را می توان با نگارش های مجانی VMware ماشین مجازی بکار گرفت که تحت عنوان VMware Player (قابل قیاس با نگارش مجانی آکروباد شرکت ادوبی، که تحت عنوان آکروبات ریدر (Acrobat Reader) شناخته می شود) و سرور VMware (که متفاوت از سرور غیر- مجانی VMware ESX Server است).
ماشین مجازی محاسباتی سربارهای اصلی
۳- آزمایشات
هدف از این آزمایشات پاسخ دادن به سوال ذیل می باشد: آیا نسل کنونی ماشین های مجازی همانگونه که توسط VMware ارائه شده است، از توانایی رقابتی کافی در مقایسه با سخت افزار عریان جهت تضمین ملاحظات مربوط به حجم بار کاری HPC، با توجه به عملکرد کلی، برخودار میباشد یا خیر؟
الف. BLAST
BLAST ( ابزار اصلی جستجوی هم ترازی محلی) بعنوان یک ابزار با کاربرد گسترده جهت یافتن نوکلئوتید یا توالی پروتئینی مشابه بشمار میآید. یک ورودی معمولی از یک توالی/ ترتیب واحدی برخوردار میباشد که میتوان آن را با بانک اطلاعات دارای توالی های شناخته شده مقایسه نمود. توالی هایی که دارای بیشترین میزان مشابهت آماری می باشند محاسبه شده و برگشت داده میشوند. آزمایشات BLAST از دو منبع اعمال می گردند: (۱) سیستم معیار سنجشی بیوانفورماتیک (BBS) (نگارش۳) و (۲) پروژه تحلیل خط سیر (Pathway Analyst project) که در دانشگاه آلبرتا اعمال شده است. برای این آزمایشات، ما از نگارش ۲،۲،۱۵ BLAST استفاده نمودیم.
ب. HMMer
HMMer یک پروفایل پیاده سازی مدل مارکوف (Markov) مخفی (HMM) بشمار می آید که بوجود آورنده تشریحات آماری در زمینه خانواده های توالی و جستجو کننده بانکهای اطلاعاتی برای توالی های مشابه می باشد. مشابه با سیستم معیار سنجی BLAST ما، ورودی های وابسته به HMMer از BBS حاصل می شوند. نگارش ۲٫۳٫۲ HMMer برای این آزمایشها مورد استفاده قرار گرفت. معیار سنجشی HMMer شامل برنامه های کاربردی آموزشی HMM و همچنین سیستمهای کاربردی جستجو می باشد. رویه فراگیری HMM (با برچسب hmmer-no-nr در نمودارها) بعنوان یک رویه محاسبه – بر با I/O اندک بشمار میآید. برنامه های کاربردی جستجوی HMM (دارای برچسب hmmer-with-nr در نمودار)، همانگونه که بوسیله vmstat تصدیق شده است، جزء جستجوی بانک اطلاعات محسوب شده و بنابراین I/O – بر هستند. برای جستجوی HMM، بانک اطلاعات NR FASTA ذکر شده فوق بعنوان بانک اطلاعات جستجو مورد استفاده قرار گرفت.
ج. GROMACS
GROMACS یک سیستم کاربردی مناسبی است که برای شبیه سازیهای دینامیکی مولکولی (MD) استفاده می شود. این سیستم تولید کننده خطوط سیر اتم ها در یک مولکول، درآب، در خلال یک برهه زمانی، غالباً در مرتبه پیکو ثانیه یا نانو ثانیه می باشد. برای این مطالعه، ما زمان اجرای برنامه محاسبه بر mdrun که در حقیقت اجرا کننده این شبیه سازی می باشد را برآورد می نماییم. GROMACS v3.2.1 همراه با نگارش کتابخانهای FFTWv2.2.15 استفاده شد. ما از GROMACS v3.2.1 استفاده نمودیم، چراکه این نگارش بوسیله زیست شناس های محاسباتی که با آنها همکاری داریم مورد استفاده قرار گرفته است. نگارش۳٫۳٫۱ GROMACS جدیدتر دارای مشکلاتی با نگارش های مختلف کامپایلرGNU C (gcc) می باشد، و از اینرو همکاران ما از این نگارش استفاده نکرده اند. بعنوان ورودی، ما از معیار سنجی GROMACS تحت عنوان gmxbench استفاده نمودیم که شامل ۴ مولکول مشخص شده بوسیله گروه GROMACS می باشد. این ۴ مولکول در gmxbench عبارتند از d.dppc, d.lzm, d.poly-ch2 و d.villin. این معیار سنجشی در هر دو بخش ۳- د و ۳- ه استفاده شده است.
د. نتایج
شکل۱ نشان دهنده نتایج معیار سنجی BBS BLAST با استفاده از یک و دو پردازنده از طریق موازی سازی حافظه به اشتراک گذاشته شده می باشد. هریک از مجموعه های این میله های نمودار مقایسه کننده رویه معیار سنجی انجام شده تحت VMware در برابر اجرا بر روی یک سخت افزار می باشد. هر دوی دیسک های قابل رشد و دیسک های از قبل تخصیص یافته از نظر اندازه مورد ارزیابی قرار گرفتند. درصدهای فوق در کنار میله های نمودار شامل درصدهای سربارها در زمان اجرا تحت مجازی سازی می باشند.
ه. استفاده از فایل سیستم شبکه (Trellis File System) برای دسترسی از راه دور به داده ها
بعنوان یکی از مثال های مرتبط با مزیت های کاربردی گردآوری و بهرهگیری از ادوات مجازی (کاربرد ۱، بخش۲) فایل سیستم شبکه را میتوان در ماشین مجازی، همراه با خود برنامه کاربردی، از قبل نصب و پیکر بندی نمود. بطور معمول، پیاده سازی یک فایل سیستم توزیعی، برای غالب محققین محاسباتی، یا بصورت بازدارنده ای پیچیده می باشد و یا آنکه این فایل سیستم نیازمند دسترسی ممتاز و دارای اولویتی برای نصب می باشد. با توجه به دیدگاه مبتنی بر ماشین مجازی، فایل سیستم شبکه را می توان بعنوان یک ابزار مجازی مهیا ساخت. براین مبنا، محققین قابلیت مشارکت در نصب برنامه های کاربردی خود با استفاده از این ابزار را خواهند داشت. با اجرای ابزار مبتنی بر ماشین مجازی و برنامه های کاربردی بر روی یک گره کامپیوتری، هیچگونه نیازی به امتیاز خاص نخواهد بود، چرا که کلیه مراحل دارای اولویت خود در داخل ماشین مجازی قرار داده شده اند.
و. بهینه سازی های اسمبرلر ۳۲ بیتی در برابر ۶۴ بیتی
به هنگام اجرای یک برنامه کاربردی GROMACS در بخش ۳- ه ( جدول۱) ما مشاهده نمودیم که زمان های اجرا کمتر از هر دوی زمان های سخت افزار و ماشین مجازی بخش سه- د بوده اند (نظیر ۴۴۱۲٫۷ ثانیه در جدول ۱ در برابر ۵۳۴۰ ثانیه، که بوسیله میله سخت افزار منتها الیه سمت چپ در شکل ۳ برای d.dppc نشان داده شده است). پس از چندین بررسی، ما مشخص نمودیم که اجرای در ابزار ۳۲ بیتی Trellis NAS Bridge Appliance ماشین مجازی (جدول۱) سبب بروز مشکل می شود. این ماشین مجازی در بردارنده این واقعیت است که پردازنده فیزیکی یک Opteron ۶۴ بیتی (X86-64) می باشد و بنابر این سیستم عامل میهمان و GROMACS بعنوان پردازنده ۳۲ بیتیi683 مشخص شده اند.
ماشین مجازی محاسباتی سربارهای اصلی
۴- تحقیقات مرتبط و نقطه نظرات
محققین دیگری نیز اقدام به مطالعه سربارهای ماشین های مجازی [Adams and Agesen, 2006] و همچنین استراتژی استفاده از ماشین های مجازی جهت درج وظایف HPC در آن [Figueiredo et al., 2003]، [Santhanamet al., 2005] نمودند. در این بررسی، ما اقدام به گسترش و آپدیت مطالعات جاری نمودیم که از طریق انتخاب سیستم های کاربردی دارای اندازه کامل (نظیر GROMACS، BLAST، HMMer )، که بطور گسترده ای در جامعه HPC ما شیوع دارند، در تعامل با گروه تحقیقاتی ما (نظیر پروژه های Proteome و تحلیل خط سیر در مبحث استفاده از BLAST و HMMer) استفاده نموده اند)، به جای تکیه بر معیارها سنجیهای استانداردهای صنعتی (اما عمومی) [Adams and Agesen, 2006] اعمال شدند.
ماشین مجازی محاسباتی سربارهای اصلی