[vc_toggle title=”مطالعه فایل راهنما” style=”simple” css=”.vc_custom_1626794082513{margin-top: 15px !important;}”]لطفا برای آشنایی با نحوه کار مرکز پردازش سریع دانشگاه شریف، راهنمای HPC که در آدرس زیر قابل مشاهده است را به دقت مطالعه فرمایید.
https://ssh.hpc.sharif.ir/static/files/help.docx
https://ssh.hpc.sharif.ir/static/files/HPVM_guide.docx[/vc_toggle][vc_separator color=”chino”][vc_toggle title=”فایل اجرایی run.sh” style=”simple” css=”.vc_custom_1629702849085{margin-top: 15px !important;}”]این فایل، یک اسکریپت لینوکسی است که تنظیمات و نحوه اجرای کد یا نرمافزار مورد نیاز کاربر را مشخص میکند. این فایل معمولا شکلی شبیه زیر دارد:
#PBS -N myjob
#PBS -m abe
#PBS -M your@email.adress
#PBS -l nodes=1:ppn=1
cd $PBS_O_WORKDIR
PATH TO THE APPLICATION TO BE RUN
در این کد، سطر اول مشخص کننده نامی است که برای کار خود در نظر میگیرید و کاملا دلخواه است. سطر دوم، سطوح اطلاعرسانی را مشخص میکند. حرف a مشخص میکند که در صورت کنسل شدن اجرا، به شما اطلاع داده شود. حروف b و e هم به ترتیب برای اطلاعرسانی در زمان شروع و پایان یک کار مورد استفاده قرار میگیرند. خط سوم، ایمیل مورد نیاز برای اطلاعرسانی را تعیین مینماید. در خط چهارم، تعداد گرهها و هستههای پردازشی مورد نیاز مشخص میگردد. خط 5 اشارهای است به دیرکتوری جاری کاربر و در خط 6 به بعد نیز کدهای لازم جهت اجرای برنامه مورد نظر کاربر مشخص میگردد.[/vc_toggle][vc_separator color=”chino”][vc_toggle title=”نصب محیط و دسترسی به اینترنت جهت دانلود بستههای مورد نیاز” style=”simple” css=”.vc_custom_1693576787773{margin-top: 15px !important;}”]چگونگی ایجاد محیط دلخواه و نصب پکیجهای مختلف:
به منظور ایجاد و محیط مبتنی بر 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 دستور زیر در ترمینال وارد میشود:
/share/apps/Anaconda/anaconda3.8/bin/conda install -c anaconda scikit-learn
همچنین جهت نصب پکیج با استفاده از pip، میتوان دستور زیر را وارد نمود:
/share/apps/Anaconda/anaconda3.8/bin/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
export LD_LIBRARY_PATH=/share/apps/cuda/cuda-10.1/lib64:$LD_LIBRARY_PATH
export PATH=/share/apps/cuda/cuda-10.1/bin:$PATH
source /share/apps/Anaconda/anaconda3.8/bin/activate my_env
python -u Program.py
[/vc_toggle][vc_separator color=”chino”][vc_toggle title=”نحوه استفاده از پردازنده گرافیکی” style=”simple” css=”.vc_custom_1630126626233{margin-top: 15px !important;}”]برای استفاده از GPU در فایل run.sh خود، یکی از دستورات زیر را وارد نمایید:
#PBS -q cuda7 // Tesla 2075
#PBS -q cuda9 // GeForce GTX 1080 Ti
#PBS -q SP // RTX 2070 SUPER
#PBS -q DP // Titan RTX
#PBS -q DDP // Quadro RTX 8000
توجه داشته باشید که در حالت عادی امکان استفاده از تنها یک واحد پردازش گرافیکی وجود دارد و در صورت نیاز برای تعداد بیشتر، باید دلایل خود را به مرکز پشتیبانی مرکز پردازش سریع ارائه کنید.[/vc_toggle][vc_separator color=”chino”][vc_toggle title=”نحوه محاسبه هزینه” style=”simple” css=”.vc_custom_1631169347423{margin-top: 15px !important;}”]اجرای هر کار پردازشی در مرکز پردازش سریع با توجه به منابع مصرفی میزانی از اعتبار شما را مصرف خواهد کرد. منابع مصرفی شامل تعداد و سرعت هستههای پردازشی و حافظه رم میباشند. همچنین صفی که کار روی آن صف ثبت میشود در هزینه کار پردازشی موثر است.
نحوه محاسبه این هزینه به این صورت است:
Queue_type * (max(#Core_requested,#Core_used )*walltime * CPU_Clock ) + max (mem_requested,mem_used) + #GPUs)
هر 1 ساعت هسته برای 1 گیگ فرکانس مقدار 240 ریال هزینه دارد.
در خواست پردازنده گرافیکی برای ساعت 18000 ریال هزینه دارد. جهت استفاده از پردازنده گرافیکی باید از صف cuda7 استفاده شود
میزان حافظه مصرفی در بالا به مگابایت درج شده و برای هر هسته 2 گیگ رایگان می باشد و رم اضافه به اضافه هر ساعت 240 ریال می باشد.
فضای هارد در SAN به ازای هر کاربر 60 گیگ فضای رایگان و به ازای هر گیگ اضافه 180 ریال روزانه هزینه دارد.
هزینه هر جاب از طریق فرمول زیر محاسبه میشود:
هزینه = ((ضریب صف × (هسته مصرفی یا درخواستی × زمان اجرا به ساعت × سرعت هسته)) * 240) + (زمان مصرف هر گیگابایت رم مصرفی یا درخواستی به ساعت × 240) + (18000 × زمان مصرف GPU به ساعت)
هزینه نهایی به ریال است.
به ازای هر هسته، ۲ گیگابایت رم رایگان است.
سرعت هستهها ۲.۴ و یا ۳.۳ گیگاهرتز است.
فضای هارد به ازای هر کاربر ۶۰ گیگابایت رایگان است و هرگیگابایت فضای مازاد، 180 ریال روزانه هزینه دارد.[/vc_toggle][vc_separator color=”chino”][vc_toggle title=”کسر شدن هزینه با وجود عدم اجرای جاب” style=”simple” css=”.vc_custom_1629703658994{margin-top: 15px !important;}”]در این حالت و در اکثر موارد، هزینه کسر شده مربوط به استفاده از فضای ذخیرهسازی (بیش از 60 گیگابایت مشخص شده) میباشد که مطابق تعرفه، مبلغ آن محاسبه میگردد. اگر این اتفاق برای شما نیفتاده و فکر میکنید مشکل از جای دیگری است، با بخش پشتیبانی تماس بگیرید.[/vc_toggle][vc_separator color=”chino”][vc_toggle title=”حذف جاب” style=”simple” css=”.vc_custom_1626774214719{margin-top: 15px !important;}”]شما میتوانید با دستور qstat از شماره و وضعیت اجراهای خود مطلع شوید و با وارد کردن شمارهی اجرا بعد از دستور qdel، اجرای مورد نظر را حذف کنید.[/vc_toggle][vc_separator color=”chino”][vc_toggle title=”خطا و عدم اجرای دستور qsub” style=”simple” css=”.vc_custom_1631167305154{margin-top: 15px !important;}”]در صورتیکه در هنگام ثبت جاب خود با استفاده از دستور qsub با مشکل عدم دسترسی مواجه شدید، به احتمال زیاد مشکل از کافی نبودن اعتبار شماست که میبایست حساب خود را از این لینک شارژ نمایید.
در صورتیکه اعتبار کافی دارید و فکر میکنید مشکل از جای دیگری است، لطفا با مرکز پشتیبانی تماس حاصل بفرمایید.[/vc_toggle][vc_separator color=”chino”][vc_toggle title=”صف طولانی” style=”simple” css=”.vc_custom_1626774403381{margin-top: 15px !important;}”]به دلیل تعداد درخواستهای بالا صف طولانی ایجاد شده است که به ترتیب نوبتدهی و کارهای شما انجام خواهد شد.
در این حالت، لطفا شکیبا باشید.[/vc_toggle][vc_separator color=”chino”][vc_toggle title=”درخواست نصب نرمافزار” style=”simple” css=”.vc_custom_1629703016386{margin-top: 15px !important;}”]کاربر گرامی، لطفا فایلها و دستورالعملهای لازم برای نصب نرمافزارهای مورد نیاز خود بر روی لینوکس توزیع CentOS را در پوشه install واقع در اکانت خود قرار دهید و به اطلاع ما برسانید تا برای نصب آن اقدام شود.[/vc_toggle][vc_separator color=”chino”][vc_toggle title=”نیاز به استفاده از رابط کاربری گرافیکی برای کار با برخی نرمافزارها” style=”simple” css=”.vc_custom_1630412444695{margin-top: 15px !important;}”]
در صورتیکه برای کار با یک نرمافزار نیاز به رابط کاربری گرافیکی دارید، بهتر است
سرور مجازی خریداری نمایید. امکان اجرای کارها با رابط گرافیکی بر روی خوشه محاسبات مبتنی بر زمانبندی میسر نمیباشد.
[/vc_toggle][vc_separator color=”chino”][vc_toggle title=”بهروزرسانی و استفاده از نسخههای جدید gcc” style=”simple” css=”.vc_custom_1631164999368{margin-top: 15px !important;}”]جهت بهروزرسانی gcc، از دستور زیر استفاده کنید:
scl enable devtoolset-8 bash
همچنین، جهت اجرای مدل با gcc، دستور زیر را به فایل جاب (run.sh) خود اضافه نمایید:
export LD_LIBRARY_PATH=/share/apps/gcc/gcc-8.2.0/lib64/:$LD_LIBRARY_PATH
به جای نسخه 8.2.0 نیز میتوانید نام نسخه مد نظر خود را (که در مرکز نصب است) وارد نمایید.[/vc_toggle][vc_separator color=”chino”][vc_toggle title=”مشخص کردن میزان رم” style=”simple” css=”.vc_custom_1631165043135{margin-top: 15px !important;}”]جهت مشخص کردن میزان دقیق رمی که توسط یک جاب مشخص باید استفاده گردد،دستور زیر را در فایل جاب (run.sh) خود وارد نمایید:
#PBS -l mem=20G
به جای عدد 20 میتوانید مقدار مورد نیاز خود را قرار دهید.
توجه داشته باشید که در صورت مشخص نکردن رم، یک میزان رم توسط سیستم تا حد امکان برای اجرای برنامه اختصاص مییابد.[/vc_toggle][vc_separator color=”chino”][vc_toggle title=”استفاده از دستورات git” style=”simple” css=”.vc_custom_1631168765925{margin-top: 15px !important;}”]امکان استفاده از دستورات مختلف git نظیر git clone برای دانلود کدها از سایتهایی نظیر گیتهاب به صورت پیشفرض فراهم نمیباشد. بدین منظور، یا باید ابتدا فایلهای مورد نظر را بر روی سیستم خود دانلود نموده و سپس با استفاده از نرمافزارهای انتقال فایل (نظیر WinSCP) اقدام به جابجایی آن به کلاستر نمایید، یا اینکه محیط conda را، مطابق با دستوراتی که در همین قسمت و در بخش «نصب محیط و دسترسی به اینترنت جهت دانلود بستههای مورد نیاز» قرار دارد فعال نموده و اقدام به اجرای دستورات git نمایید.[/vc_toggle][vc_separator color=”chino”][vc_toggle title=”اجرای موازی بر روی متلب (MATLAB)” style=”simple” css=”.vc_custom_1631168109378{margin-top: 15px !important;}”]جهت اجرای موازی پردازش خود بر روی نرمافزار متلب، از نسخه نصب شده در این مسیر استفاده نمایید: share/apps/matlab/matlab2019b/bin/matlab
توجه داشته باشید که جهت اجرای موازی، ابتدا برنامه شما باید به صورت موازی نوشته شده و قابلیت اجرای همزمان بر روی چند هسته را داشته باشد. جهت اطلاع از موازیسازی در متلب به این لینک مراجعه نمایید.[/vc_toggle][vc_separator color=”chino”]