ابتدا وارد صفحه اصلی وبسایت مرکز پردازش سریع می‌‌شویم.

سیستم پردازش سریع دانشگاه شریف
سیستم پردازش سریع دانشگاه شریف
سیستم پردازش سریع دانشگاه شریف

از نوار بالا، و از منوی خدمات، گزینه “خدمات مبتنی بر زمان‌بندی” را انتخاب می‌کنیم

شکل ۲. صفحه اصلی وب‌سایت مرکز پردازش سریع

در صفحه باز شده، در صورتیکه قبلا ثبت نام کرده‌اید، با وارد کردن ایمیل و رمز عبور می‌توانید وارد شوید (در صورتی فراموشی رمز عبور خود می‌توانید بر روی گزینه Forgot your password? کلیک کنید. در این قسمت، با وارد کردن ایمیلی که با آن ثبت نام کرده‌اید، نحوه بازیابی رمز عبور برایتان ارسال خواهد شد).

اگر پیش از این ثبت نام نکرده‌اید، با کلیک بر روی Sign Up به صفحه مخصوص ثبت نام هدایت خواهید شد.

شکل 3. صفحه ورود

در صفحه ثبت نام، با وارد کردن اطلاعات خواسته شده، فرآیند ثبت نام را تکمیل نمایید و در نهایت بر روی دکمه Sign Up‌ کلیک کنید.

شکل 4. صفحه ثبت نام

داشبورد وحساب کاربری

پس از ثبت نام موفق،‌ وارد حساب کاربری و داشبورد خود می‌شوید. در این صفحه،‌ مواردی نظیر کارهای اجرا شده، میزان حافظه ذخیره‌سازی مصرفی، میزان گرنت باقیمانده و … قابل مشاهده هستند. از منوی سمت چپ هم می‌توانید به بخش اخبار، تراکنش‌های انجام شده، نرم‌افزارهای نصب شده، راهنما، بخش تیکت و … دسترسی داشته باشید.

شکل 5. صفحه اصلی داشبورد
شکل 7. تراکنش‌ها

در بخش نرم‌افزارهای پشتیبانی شده، نرم‌افزارهای نصب شده بر روی سامانه قابل مشاهده هستند. همچنین، راهنمای استفاده برای هر نرم‌افزار و لینک‌های راهنما برای آنها در نظر گرفته شده است.

شکل 8. نرم‌افزارهای نصب شده
شکل 9. لیست نرم‌افزارهای نصب شده
شکل 10. توضیحات مربوط به هر نرم‌افزار
شکل 11. منوی راهنمایی
شکل 12. صفحه راهنمایی

در بخش Ticketing می‌توانید درخواست‌ها و مشکلات خود را ثبت کنید تا در اسرع وقت به آنها رسیدگی شود.

شکل 13. منوی تیکت‌ها
شکل 14. فُرم ارسال درخواست

ارسال و دریافت فایل

جهت دسترسی از راه دور به سامانه و ارسال و دریافت فایل‌ها، باید از پروتکل انتقال فایل یا FTP[1] کمک بگیرید. نرم‌افزارهای منبع‌باز[2] متعددی برای این کار وجود دارند که دو تا از معروف‌ترینشان، نرم‌افزارهای WinSCP و FileZilla هستند. برای دانلود WinSCP وارد این لینک و برای دانلود FileZilla وارد این لینک شوید.

[1] File Transfer Protocol

[2] Open Source

شکل 15. صفحه دانلود وبسایت WinSCP
شکل 16. صفحه دانلود وبسایت FileZilla

پس از دانلود و نصب WinSCP، برنامه را باز کنید. در صفحه اول، از شما خواسته می‌شود تا اطلاعات خود را جهت لاگین در سامانه وارد نمایید. این موارد را مطابق با تصاویر زیر انجام دهید (در قسمت User name و Password از نام کاربری و رمز عبور خودتان استفاده کنید). در نهایت بر روی دکمه Login‌ کلیک نمایید.

شکل 17. صفحه لاگین WinSCP

روش کار در FileZilla هم مشابه WinSCP است. از نوار بالا اطلاعات قسمت‌های هایلایت شده را وارد نموده و سپس روی Quickconnect کلیک کنید.

شکل 18. صفحه لاگین FileZilla

پس از ورود (در هر دو نرم‌افزار) با دو پنجره مواجه خواهید شد. سمت چپ مربوط به پنجره شما به عنوان کاربر (یعنی کامپیوتر شما) است که فایل‌های خودتان در آنجا قابل مشاهده هستند. سمت راست را پنجره سرور تشکیل می‌دهد که می‌توانید فایل‌های موجود بر روی فضای ذخیره‌سازی HPC را در آنجا مشاهده کنید.

شکل 19. صفحه اصلی WinSCP
شکل 20. صفحه اصلی FileZilla

نحوه اجرای از راه دور دستورات

برای اجرای دستورات و نرم‌افزارها، لازم است تا این دستورات از طریق یک پروتکل ارتباطی به کلاستر HPC ارسال شوند. برای این کار،‌ در سیستم عامل ویندوز، از نرم‌افزار PuTTY استفاده خواهیم کرد (در سیستم عامل لینوکس این کار به سادگی از طریق خط فرمان خود لینوکس قابل اجراست). از این لینک می‌توانید این نرم‌افزار را دانلود نمایید.

شکل 21. صفحه دانلود وبسایت PuTTY

پس از نصب و اجرای برنامه، با پنجره‌ای مشابه تصویر زیر روبرو خواهید شد. در اینجا کافی است تا با وارد کردن آدرس سامانه HPC، و سپس کلیک بر روی Open، وارد خط فرمان شوید.

شکل 22. صفحه لاگین PuTTY

در پنجره باز شده، ابتدا باید نام کاربری که با آن ثبت نام کرده‌اید را وارد نموده و دکمه Enter را بزنید. سپس باید رمز عبوری خود را وارد نموده و مجددا دکمه Enter را بفشارید.

شکل 23. صفحه وارد کردن اطلاعات برای ورود به سامانه پردازش سریع

پس از وارد کردن اطلاعات خواسته شده، با تصویر زیر مواجه خواهید شد. در اینجا می‌توانید مقدار هسته‌های مصرفی (هر کاربر حداکثر می‌تواند از مجموع 160 هسته استفاده کند که هر کار، نهایتا 80 هسته می‌تواند درخواست نماید) و نیز میزان گرنت باقیمانده را مشاهده کنید (توجه داشته باشید که حساب شما می‌تواند اندکی منفی شود که در این صورت باید آن را شارژ نمایید).

شکل 24. صفحه خوش‌‌آمدگویی HPC

نمونه اجرای کار

حال، یک اجرای نمونه کار را با هم میبینیم. برای این کار، قصد داریم یک فایل متلب ایجاد کنیم. محتوای این فایل چیزی شبیه به تصویر زیر است. این فایل را با نام CPU-test.m‌ ذخیره نمایید.

شکل 25. فایل نمونه متلب

در گام بعدی،‌ فایل توصیف مشخصات کار را ایجاد می‌کنیم. این فایل فرمت sh دارد و به سامانه داده می‌شود تا مطابق با آن، دستورات را اجرا نماید. فایلی به نام CPU.sh با محتوای زیر ایجاد کنید. در این فایل،‌ خط اول نام کار را مشخص می‌کند. خط دوم مشخص می‌‌کند که در چه زمانی اعلان‌ها به شما ارسال خواهند شد. در اینجا سه حرف a، b و e به ترتیب حروف اول کلمات abort، begin و end هستند که یعنی اعلان‌ها از ابتدا تا انتها به شما نمایش داده خواهند شد. خط سوم، متغیر nodes تعداد گره‌های پردازشی را مشخص می‌کند (برای استفاده از بیش از یک گره باید درخواست خود را به صورت تیکت ارائه دهید). متغیر ppn تعداد هسته‌های قابل استفاده برای این کار است (به خاطر بیاورید که تعداد هسته‌ها برای هر کار نهایتا 80 عدد خواهد بود). خط پنجم مشخص کننده میزان حافظه اصلی استفاده شده توسط این کار است. خط ششم مشخص کننده دیرکتوری جاری است که فایل‌ها در آن قرار دارند. در خط هفتم،‌ نسخه نرم‌افزار متلب برای اجرای فایل مورد نظر مشخص می‌گردد

شکل 26. فایل نمونه کار برای اجرای متلب

حال، برای اجرای فایل کاری که در کامپیوتر خودمان ایجاد کردیم، باید این فایل را به فضای ذخیره‌سازی خود در HPC انتقال دهیم. برای این کار، وارد نرم‌افزار WinSCP (یا FileZilla) که پیش‌تر در آن لاگین کرده بودیم می‌شویم. در پنجره کاربر (سمت چپ) وارد پوشه‌ای که فایل‌ها در آن قرار دارند شده و فایل‌های مد نظر خود را با موس کشیده و به داخل فضای ذخیره‌سازی HPC می‌اندازیم.

شکل 27. نحوه انتقال فایل در WinSCP
شکل 28. فایل‌های انتقال داده شده

اگر به نرم‌افزار PuTTY بازگشته و دستور لینوکسی ls (که برای لیست کردن فایل‌های موجود در دیرکتوری جاری کاربرد دارد) را بزنیم، با خروجی شبیه به تصویر زیر روبرو می‌شویم. این پنجره مشابه همان چیزی است که در WinSCP (یا FileZilla) دیدیم. همانطور که قابل مشاهده است، دو فایلی که اخیرا کپی کردیم،‌ به وجود آمده‌اند.

شکل 29. مشاهده محتویات دیرکتوری جاری با استفاده از دستور ls

برای مشاهده محتوای فایل‌ها می‌توان از دستور لینوکسی cat کمک گرفت. این کار را مطابق تصویر زیر انجام دهید.

شکل 30. مشاهده محتوای فایل کار

همانطور که میبینید،‌ فایل متنی ما در اینجا قابل مشاهده است.

برای اجرای فایل کار مورد نظر، از دستور qsub استفاده می‌کنیم. این دستور، کار مورد نظر ما را وارد صف کارهای در انتظار اجرای HPC می‌کند. ابتدا عبارت qsub را وارد کرده و با یک فاصله، نام فایل sh خود را وارد کرده و در انتها دکمه Enter را فشار می‌دهیم.

شکل 31. اجرای کار و وارد کردن آن به صف HPC

پس از زدن Enter، با یک جمله مواجه می‌شویم که در ابتدای آن یک عدد قرار دارد. این عدد، شناسه کار ما خواهد بود که جهت اطلاع از وضعیت اجرای آن باید از این شناسه استفاده کنیم. این کار نیز با استفاده از دستور qstat و سپس وارد کردن این شناسه امکان‌پذیر خواهد بود.

بسته به نوع کار ارسال شده، ممکن است با چهار حالت روبرو شویم: 1) کار در صف قرار گرفته (Q)، 2) کار آماده اجراست (R)، 3) کار در حال اجرا شدن می‌باشد (E) و 4) اجرای کار به پایان رسیده (C).

شکل 32. وضعیت اجرای کار (در صف انتظار)
شکل 33. وضعیت اجرای کار (در صف اجرا)
شکل 34. وضعیت اجرای کار (تکمیل شده)

پس از تکمیل اجرای کار، خروجی مورد نظر با استفاده از دستور ls، مطابق تصویر زیر قابل مشاهده است.

محتوای این فایل‌های خروجی را می‌توانید با استفاده از دستور cat‌ مشاهده نمایید.

شکل 35. مشاهده فایل‌های خروجی با استفاده از دستور ls

آماده‌سازی محیط Conda و نمونه کار GPU

جهت آماده‌سازی محیط Conda، دستورات گفته شده را مطابق دستور زیر، به ترتیب، وارد نمایید (این مرحله ممکن است، به علت نصب موارد مورد نیاز،‌ اندکی زمان‌بر باشد).

شکل 36. مراحل آماده‌سازی محیط Conda

راهنمای استفاده از محیط
چگونگی ایجاد محیط دلخواه و نصب پکیج‌های مختلف:
به منظور ایجاد و محیط مبتنی بر conda در مرکز پردازش سریع به این ترتیب پیش می‌رویم:
ایجاد محیط:

/share/apps/Anaconda/anaconda3.8/bin/conda create -–name my_env

توجه: دقت بفرمایید نام محیط دلخواه شماست و هر کاربر محیط اختصاصی خود را دارد.

فعال‌سازی محیط:
پس از نصب موفقیت‌آمیز، با استفاده از دستور زیر، محیط ایجاد شده فعال می‌شود:

source /share/apps/Anaconda/anaconda3.8/bin/activate my_env

– نصب پکیج دلخواه:
پس از فعال‌سازی محیط در home خود، می‌توان پکیج‌های مورد نیاز را نصب نمود. به عنوان مثال، جهت نصب پکیج scikit-learn دستور زیر در ترمینال وارد می‌شود:

conda install -c anaconda scikit-learn

همچنین جهت نصب پکیج با استفاده از pip، می‌توان دستور زیر را وارد نمود:

pip install matplotlib

اسکریپت جهت اجرای جاب:
دقت نمایید ابتدا پکیج‌های مورد نیاز داخل ترمینال پس از فعال‌سازی محیط وارد شوند؛ سپس در اسکریپت خود تنها لازم است محیط را فعال کنید تا سامانه از پکیج‌های نصب شده جهت اجرا استفاده نماید. چگونگی انجام این کار در مثال زیر مشخص شده است:

#PBS -N myjob
#PBS -m abe
#PBS -M your@email.adress
#PBS -l nodes=1:ppn=1:gpus=1
#PBS -q cuda9
source /share/apps/Anaconda/anaconda3.8/bin/activate my_env
python -u Program.py

در ادامه،‌ نحوه ایجاد یک فایل تست GPU به زبان پایتون و فایل sh‌ مربوط به آن را مشاهده می‌کنیم.

شکل 37. فایل نمونه پایتون

در فایل اجرای GPU نیز باید یک سری پارامترها را مشابه حالت قبل تنظیم کنیم. در اینجا باید تعداد GPUهای مورد استفاده خود را نیز مشخص نماییم (خط 4). در اینجا هم برای استفاده از بیش از یک GPU نیاز است تا درخواست خود را در قابل تیکت برای ما ارسال نمایید.در خط پنجم، نوع GPU خود را مشخص میکنید که در جدول زیر، انواع آن را می‌توانید مشاهده نمایید.

شکل 38. فایل اجرای کار GPU

حذف جاب

جهت حذف جاب، میتوان از دستور زیر استفاده نمود:
qdel JOB_ID

حذف جاب
شکل ۳۹. حذف جاب