محاسبات با عملکرد بالا (HPC): چگونه یک شبیهسازی را برای حل موازی روی چندین هسته (CPU) تنظیم کنیم؟
۱. چرا شبیهسازیهای پیچیده شما ساعتها یا روزها طول میکشد و راه حل آن چیست؟
حتماً برای شما هم پیش آمده که دکمه Run را در نرمافزار میزنید و بعد… انتظار شروع میشود. یک ساعت، ده ساعت، گاهی حتی چند روز. مانیتورینگ نمودار باقیماندهها (Residuals) به یک عادت فرسایشی تبدیل میشود و ددلاین پروژه یا دفاع پایاننامه نزدیکتر و نزدیکتر میشود. این حس کلافگی، یک درد مشترک بین تمام مهندسان است. تیم سیمومک در تمام مراحل انجام پروژه فلوئنت کنار شماست؛ چه برای انجام پروژه دانشجویی فلوئنت و مشاوره تخصصی انجام پایان نامه فلوئنت نیاز به راهنمایی داشته باشید ما راهکار دقیق را به شما ارائه میدهیم.
جدول راهنمای انتخاب سختافزار بر اساس پیچیدگی پروژه
| سطح پروژه | تعداد سلولهای مش | RAM پیشنهادی | CPU پیشنهادی (تعداد هسته) | راهحل محاسباتی |
| دانشجویی / ساده | زیر ۲ میلیون | ۱۶ گیگابایت | ۴ تا ۸ هسته | لپتاپ / کامپیوتر شخصی |
| صنعتی / متوسط | ۲ تا ۲۰ میلیون | ۳۲ تا ۶۴ گیگابایت | ۸ تا ۱۶ هسته | کامپیوتر قدرتمند (Workstation) |
| پیشرفته / بزرگ | ۲۰ تا ۱۰۰ میلیون | ۱۲۸ گیگابایت به بالا | ۱۶ تا ۶۴ هسته | Workstation بسیار قوی / کلاستر کوچک |
| بسیار پیچیده | بیش از ۱۰۰ میلیون | ۲۵۶ گیگابایت به بالا | +۶۴ هسته | کلاستر HPC / رایانش ابری |
اما مشکل اصلی کجاست؟ اغلب فکر میکنیم مشکل از سختافزار ضعیف ماست، در حالی که در بسیاری از موارد، ما از تمام قدرت پردازنده مدرن خود استفاده نمیکنیم. کامپیوتر شما مثل یک تیم از کارگران ماهر است، اما شما فقط یک نفر از آنها را برای ساختن یک ساختمان بزرگ به کار گرفتهاید! این مقاله دقیقاً برای این نوشته شده که به شما یاد بدهد چطور تمام این تیم را همزمان به کار بگیرید. اگر میخواهید با اصول اولیه نرمافزارهای شبیهسازی بیشتر آشنا شوید، پیشنهاد میکنم نگاهی به راهنمای جامع ما در مورد آموزش کامل انسیس فلوئنت از مقدماتی تا پیشرفته بیندازید.

۲. محاسبات با عملکرد بالا (HPC) چگونه میتواند زمان پروژههای مهندسی شما را به چند ساعت کاهش دهد؟
وقتی صحبت از محاسبات با عملکرد بالا (HPC) میشود، شاید تصویر یک سوپرکامپیوتر غولپیکر در یک مرکز داده به ذهنتان بیاید. این تصور اشتباه نیست، اما HPC یک مفهوم بسیار در دسترستر هم دارد: استفاده هوشمندانه از چندین هسته پردازشی (CPU Core) به صورت همزمان برای حل یک مسئله واحد.
به زبان ساده، به جای اینکه یک هسته CPU به تنهایی تمام محاسبات پیچیده یک شبیهسازی CFD را انجام دهد، ما مسئله را به تکههای کوچکتر تقسیم میکنیم و هر تکه را به یک هسته جداگانه میسپاریم. این کارگران (هستهها) به طور موازی کار میکنند و در نهایت نتایجشان را با هم ترکیب میکنند تا پاسخ نهایی به دست آید. نتیجه؟ یک شبیهسازی که قبلاً ۲۴ ساعت طول میکشید، حالا ممکن است روی یک سیستم ۸ هستهای تنها در ۳ تا ۴ ساعت به جواب برسد. این یعنی قدرت واقعی HPC در دستان شما. 🚀
۳. پردازش موازی در شبیهسازی به چه معناست و چرا هر مهندسی باید آن را بداند؟
پردازش موازی (Parallel Processing) همان مکانیسمی است که HPC را ممکن میکند. در دنیای شبیهسازی، این فرآیند معمولاً از طریق تکنیکی به نام “تجزیه دامنه” (Domain Decomposition) انجام میشود. نرمافزار، شبکه مش محاسباتی شما را (همان میلیونها سلولی که با زحمت تولید کردهاید) به چندین بخش تقسیم میکند و هر بخش را برای حل به یک هسته CPU اختصاص میدهد.
دانستن این موضوع دیگر یک مزیت نیست، یک ضرورت است. چرا؟ چون پیچیدگی پروژههای صنعتی و دانشگاهی روز به روز بیشتر میشود. از تحلیل جریانهای آشفته گرفته تا شبیهسازیهای چندفازی، دیگر نمیتوان با یک هسته به نتایج دقیق و سریع رسید. تسلط بر پردازش موازی به شما اجازه میدهد پروژههای بزرگتری را در زمان کمتر انجام دهید، که این یعنی افزایش بهرهوری و شانس موفقیت بیشتر. کیفیت مش شما تاثیر مستقیمی بر این فرآیند دارد؛ برای درک بهتر، میتوانید مقاله ما در مورد مقایسه مش ششوجهی و چهاروجهی را مطالعه کنید.

۴. قبل از شروع، چگونه بفهمیم کامپیوتر ما برای حل موازی چند هسته پردازشی (CPU Core) در اختیار دارد؟
قبل از هر کاری، باید بدانید که با چه ارتشی طرف هستید! پیدا کردن تعداد هستههای CPU بسیار ساده است و به هیچ نرمافزار خاصی نیاز ندارد.
در ویندوز:
- کلیدهای Ctrl + Shift + Esc را فشار دهید تا Task Manager باز شود.
- به تب Performance بروید.
- در بخش CPU، در سمت راست، مقدار “Cores” (هستهها) و “Logical processors” (پردازندههای منطقی) را خواهید دید.
معمولاً برای شبیهسازی، تعداد هستههای فیزیکی (Cores) معیار مهمتری است، اما میتوانید از پردازندههای منطقی هم استفاده کنید. هواستون باشه که همیشه استفاده از تمام ظرفیت، بهترین نتیجه را نمیدهد. 💻
۵. چطور میتوانیم یک شبیهسازی در Ansys Fluent را قدم به قدم برای تنظیمات حل موازی آماده کنیم؟
خب، به بخش عملی ماجرا رسیدیم. در Ansys Fluent، فعالسازی حل موازی به سادگی در پنجره Fluent Launcher انجام میشود:
- مرحله اول: Fluent Launcher را باز کنید.
- مرحله دوم: در تب Processing Options، گزینه Parallel را انتخاب کنید.
- مرحله سوم: در فیلد Processes، تعداد هستههایی که میخواهید استفاده کنید را وارد کنید. (مثلاً اگر ۸ هسته دارید، میتوانید عدد ۸ را وارد کنید).
- مرحله چهارم: مطمئن شوید که در بخش Parallel Settings، متد Shared Memory برای یک کامپیوتر واحد انتخاب شده باشد.
- مرحله پنجم: روی Start کلیک کنید و تمام! فلوئنت حالا با قدرت چند هسته اجرا میشود.
یادمه اوایل کارم، روی یک پروژه تحلیل آیرودینامیک ساده، فکر میکردم هرچه هسته بیشتری بدهم بهتر است. ۱۶ هسته به یک مسئله کوچک با مش کم تعداد اختصاص دادم و با تعجب دیدم زمان حل از حالت ۸ هسته هم بیشتر شد! اونجا بود که فهمیدم ارتباط بین هستهها (Communication Overhead) هم خودش زمانبر است و برای مسائل کوچک، موازیساری بیش از حد میتواند نتیجه عکس بدهد. این تجربهای بود که در هیچ کتابی ننوشته بودند. برای تعریف شرایط پیچیده بدون نیاز به کدنویسی سنگین، بد نیست نگاهی به مقاله استفاده از Expression ها به جای UDF بیندازید که میتواند مکمل خوبی برای کارهای پیشرفته شما باشد.
۶. تنظیمات کلیدی برای اجرای موازی یک تحلیل دینامیکی پیچیده در نرمافزار Abaqus کدامند؟
هرچند تمرکز ما اینجا بیشتر روی CFD است، اما اصول پردازش موازی در نرمافزارهای تحلیل سازه مثل Abaqus هم کاملاً مشابه است. اگر با Abaqus کار میکنید، هنگام ارسال Job برای حل، میتوانید به سادگی تعداد هستههای مورد نظر را مشخص کنید.
در محیط گرافیکی Abaqus/CAE، در ماژول Job، هنگام ایجاد یک Job جدید، به تب Parallelization بروید و گزینه Use multiple processors را فعال کرده و تعداد هستهها را وارد کنید. این کار به خصوص در تحلیلهای دینامیکی غیرخطی یا مسائل تماسی پیچیده، میتواند تفاوت چشمگیری در زمان حل ایجاد کند.
۷. مفهوم تجزیه دامنه (Domain Decomposition) چیست و چه تاثیری بر سرعت حل شما در نرمافزارهای CFD دارد؟
برگردیم به آن مفهوم کلیدی که قبلاً اشاره کردیم. تجزیه دامنه را مثل تقسیم کردن یک پیتزای بزرگ بین چند نفر در نظر بگیرید. 🍕 هر نفر (هر هسته CPU) یک تکه از پیتزا (بخشی از مش) را دریافت میکند. همه همزمان شروع به خوردن میکنند و کار خیلی سریعتر تمام میشود.
اما یک نکته ظریف وجود دارد: مرز بین این تکهها. هستهها باید در مرزهای مشترکشان با یکدیگر اطلاعات رد و بدل کنند (مثلاً مقدار فشار یا سرعت در سلولهای مرزی). این “حرف زدن” بین هستهها، سربار محاسباتی (Overhead) ایجاد میکند. اگر مش شما کیفیت خوبی نداشته باشد یا تکهها خیلی کوچک و زیاد باشند، این ارتباطات آنقدر زیاد میشود که سرعت کلی کار را پایین میآورد. این مفهوم به خصوص در شبیهسازیهایی که مش در طول زمان تغییر میکند، مانند آنچه در تکنیکهای پیشرفته مش دینامیک بررسی میشود، اهمیت دوچندانی پیدا میکند.
۸. چگونه محدودیتهای لایسنس نرمافزار بر تعداد هستههای قابل استفاده شما برای حل موازی تاثیر میگذارد؟
این یکی از آن دیوارهای بتنی است که خیلی از دانشجوها و حتی شرکتهای کوچک با آن برخورد میکنند. متاسفانه، صرف داشتن یک CPU قدرتمند با ۳۲ هسته کافی نیست. لایسنس نرمافزار شما باید اجازه استفاده از این تعداد هسته را بدهد.
- لایسنسهای دانشجویی (Academic): معمولاً محدودیت دارند و ممکن است به شما اجازه استفاده از ۴ یا ۸ هسته را بدهند.
- لایسنسهای تجاری (Commercial): لایسنس پایه معمولاً تعداد محدودی هسته را پشتیبانی میکند و برای استفاده از تعداد بیشتر، باید بستههای اضافی به نام HPC Packs را خریداری کنید.
این یک فاکتور بسیار مهم در برنامهریزی برای پروژههای شبیهسازی بزرگ است. گاهی یک شبیهسازی پیچیده مانند کیس استادی کاهش درگ یک خودروی مسابقه نیازمند دهها یا صدها هسته است که تنها با لایسنسهای پیشرفته و زیرساختهای خاص امکانپذیر است. همچنین برای تحلیلهای پیچیدهای مثل اندرکنش سیال و سازه که ذاتاً سنگین هستند، دانستن این محدودیتها حیاتی است؛ موضوعی که در مقاله کوپل کردن فلوئنت و مکانیکال برای تحلیل FSI به آن پرداختهایم.

۹. آیا استفاده از هستههای بیشتر همیشه به معنای سرعت بالاتر است؟ (نگاهی به چالش مقیاسپذیری یا Scalability)
این یک تله کلاسیک است که خودم هم اوایل کارم در آن افتادم. جواب کوتاه: خیر! یک قانونی نانوشته در دنیای محاسبات با عملکرد بالا وجود دارد به نام “قانون بازده نزولی”. یعنی از یک جایی به بعد، اضافه کردن هستههای بیشتر، نه تنها سرعت را به همان نسبت افزایش نمیدهد، بلکه ممکن است به خاطر سربار ارتباطی بین هستهها (Communication Overhead)، فرآیند را کندتر هم بکند.
تصور کنید برای رنگ کردن یک اتاق کوچک، ۲۰ نقاش را استخدام کنید. بیشتر وقتشان به جاخالی دادن به همدیگر و هماهنگی میگذرد تا رنگ زدن! در شبیهسازی هم همینطور است. بهترین راه، انجام یک تست مقیاسپذیری (Scalability Test) ساده است. شبیهسازی خود را یک بار با ۴ هسته، یک بار با ۸ و یک بار با ۱۲ هسته اجرا کنید و زمان حل را مقایسه کنید. جایی که افزایش سرعت متوقف یا ناچیز شد، نقطه بهینه شماست. این بهینهسازی وقتی مهمتر میشود که با مشهای بسیار حساس در نزدیکی دیواره سروکار دارید، موضوعی که در مقاله راهنمای کامل Y+ و تنظیم مش لایه مرزی به طور کامل به آن پرداختهایم.
۱۰. چه اشتباهات رایجی در تنظیمات موازیسازی باعث کندتر شدن شبیهسازی شما میشود؟
فراتر از انتخاب تعداد هسته نامناسب، چند اشتباه دیگر هم هست که میتواند تمام زحمات شما را هدر دهد:
- تجزیه دامنه نامناسب: برخی نرمافزارها به شما اجازه میدهند متد تجزیه دامنه را انتخاب کنید. یک انتخاب اشتباه میتواند بخشهای نامتوازنی از مش را به هستهها اختصاص دهد، در نتیجه یک هسته کارش تمام میشود و باید منتظر بقیه بماند.
- فراموش کردن گلوگاه ورودی/خروجی (I/O Bottleneck): اگر تنظیم کرده باشید که فایل نتایج در هر تکرار (Iteration) ذخیره شود، نوشتن همزمان داده توسط چندین هسته روی یک هارد دیسک کند، میتواند سرعت کلی را به شدت کاهش دهد. فرکانس ذخیره نتایج را هوشمندانه انتخاب کنید.
- نادیده گرفتن هشدارهای حلگر: گاهی اوقات، یک حل موازی ممکن است به خاطر ناپایداریهای عددی، سریعتر از حل سری به سمت واگرایی برود. اگر با این مشکل مواجه شدید، حتماً راهنمای ما در مورد ۷ دلیل اصلی عدم همگرایی در فلوئنت را مطالعه کنید، چون ریشه مشکل ممکن است جای دیگری باشد.
۱۱. برای دستیابی به بهترین عملکرد در حل موازی، رم (RAM) و سرعت حافظه چه نقش کلیدی ایفا میکنند؟
پردازنده (CPU) مغز عملیات است، اما حافظه رم (RAM) میز کار اوست. اگر میز کار کوچک باشد، مغز هرچقدر هم سریع باشد، نمیتواند کارش را درست انجام دهد. هر هسته پردازشی برای نگهداری اطلاعات بخش خود از مش به مقدار مشخصی رم نیاز دارد.
یک قاعده سرانگشتی میگوید به ازای هر یک میلیون سلول مش محاسباتی، حدود ۱ تا ۲ گیگابایت رم نیاز دارید. این مقدار بسته به فیزیک مسئله (مثلاً مدلهای توربولانسی پیچیده یا واکنشهای شیمیایی) میتواند بیشتر هم بشود. کمبود رم باعث میشود سیستم عامل به استفاده از حافظه مجازی روی هارد دیسک (Page File) رو بیاورد که هزاران بار کندتر از رم است و عملاً شبیهسازی شما را متوقف میکند. پس همیشه قبل از شروع حل، مصرف رم را زیر نظر داشته باشید. 💾 از پروژههای کلاسی و انجام پروژه دانشجویی فلوئنت گرفته تا سطوح پیشرفته مثل انجام پایان نامه فلوئنت و انجام پروژه انسیس فلوئنت با هندسههای پیچیده، تیم ما آماده انجام پروژه فلوئنت با تضمین کیفیت و آموزش کامل است.
جدول مقایسه سریع مزایا و معایب موازیسازی
| مزایا ✅ | معایب / چالشها ❌ |
| کاهش چشمگیر زمان حل | نیاز به لایسنسهای گرانقیمت (HPC Packs) |
| امکان حل مسائل بسیار بزرگتر و پیچیدهتر | نیاز به سختافزار قدرتمندتر (CPU و RAM) |
| افزایش بهرهوری و سرعت در چرخه طراحی | پیچیدگی بیشتر در مدیریت و عیبیابی |
| امکان انجام تحلیلهای بهینهسازی و DOE | سربار ارتباطی (Overhead) که میتواند بازده را کاهش دهد |
۱۲. پس از یک حل موازی موفق، چگونه نتایج را از هستههای مختلف به درستی استخراج و یکپارچه کنیم؟
خوشبختانه این بخش ماجرا دیگر دغدغه شما نیست. تقریباً تمام نرمافزارهای مدرن CFD و FEA این فرآیند را به صورت خودکار در پسزمینه انجام میدهند. وقتی شبیهسازی تمام میشود، حلگر (Solver) دادههای توزیعشده بین هستههای مختلف را جمعآوری کرده و یک فایل نتیجه واحد و یکپارچه به شما تحویل میدهد.
بنابراین شما برای پسپردازش (Post-processing) فقط با یک فایل نتیجه سروکار دارید و نیازی به هیچ کار اضافهای ندارید. تمام تمرکز خود را میتوانید روی تحلیل نتایج بگذارید. اگر میخواهید در این زمینه حرفهایتر عمل کنید، پیشنهاد میکنم نگاهی به مقاله تکنیکهای حرفهای پسپردازش در CFD-Post بیندازید.
۱۳. چه زمانی کامپیوتر شخصی شما دیگر برای پروژههای سنگین کافی نیست و باید به سراغ کلاسترهای HPC بروید؟
یک کامپیوتر شخصی قدرتمند (Workstation) با ۱۶ یا ۳۲ هسته برای بسیاری از پروژههای دانشگاهی و صنعتی کوچک کافی است. اما شما در شرایط زیر به یک “اسب قویتر” یعنی کلاستر محاسباتی یا رایانش ابری نیاز خواهید داشت:
- مشهای بسیار بزرگ: وقتی تعداد سلولهای مش از ۵۰ میلیون فراتر میرود.
- شبیهسازیهای گذرا (Transient) با گامهای زمانی بسیار کوچک: تحلیل پدیدههایی مثل Vortex Shedding یا شبیهسازی انفجار.
- مدلهای فیزیکی بسیار پیچیده: مانند شبیهسازی مقیاس بزرگ گردابه (LES) یا شبیهسازی مستقیم عددی (DNS) که نیاز به توان محاسباتی فوقالعاده بالایی دارند.
در این مقیاس، دیگر صحبت از یک کامپیوتر نیست، بلکه مجموعهای از دهها یا صدها کامپیوتر (Node) است که با یک شبکه بسیار سریع به هم متصل شدهاند.
۱۴. سیمومک (simumech) چگونه با بهرهگیری از زیرساخت HPC، پروژههای شبیهسازی پیچیده صنعتی را در کسری از زمان ممکن تحویل میدهد؟
وقتی پروژهای از محدودیتهای سختافزاری یک ورکاستیشن فراتر میرود، اینجاست که تخصص و زیرساخت ما در سیمومک وارد عمل میشود. ما با دسترسی به کلاسترهای محاسباتی قدرتمند، میتوانیم مسائلی را حل کنیم که روی سیستمهای عادی ماهها زمان میبرند. خدمات ما در این حوزه شامل موارد زیر است:
- اجرای شبیهسازیهای بسیار بزرگ (با بیش از ۱۰۰ میلیون سلول)
- انجام تحلیلهای بهینهسازی (Optimization) که نیازمند اجرای صدها سناریوی مختلف است.
- شبیهسازیهای پیچیده FSI (اندرکنش سیال و سازه) و مسائل چندفازی در مقیاس صنعتی.
- ارائه توان محاسباتی برای پروژههایی که با محدودیت زمانی شدید مواجه هستند.
تیم ما نه تنها زیرساخت لازم را فراهم میکند، بلکه با سالها تجربه، شبیهسازی شما را برای حداکثر بازدهی روی این سیستمها بهینه میکند. اگر با چنین چالشهایی روبرو هستید، میتوانید جزئیات بیشتری را در صفحه انجام پروژه فلوئنت مشاهده کنید.

۱۵. آیا برونسپاری محاسبات سنگین به یک تیم متخصص مانند سیمومک از نظر اقتصادی برای شرکت شما بهصرفه است؟
این سوالی است که بسیاری از مدیران R&D از ما میپرسند. خرید، راهاندازی و نگهداری یک کلاستر HPC داخلی هزینههای سرسامآوری دارد: هزینه سختافزار، لایسنسهای گرانقیمت HPC نرمافزار، هزینه برق و خنککاری، و حقوق یک متخصص برای مدیریت سیستم.
برای شرکتهایی که به طور مداوم به این سطح از توان محاسباتی نیاز ندارند، برونسپاری بسیار هوشمندانهتر است. شما فقط به ازای زمان و منابعی که استفاده میکنید هزینه پرداخت میکنید و از تخصص تیمی بهرهمند میشوید که روزانه با این چالشها دست و پنجه نرم میکند. این کار ریسک پروژه را کاهش داده و زمان رسیدن به بازار (Time-to-Market) را به شدت کوتاه میکند.
۱۶. چکلیست نهایی شما برای تنظیم یک شبیهسازی موازی موفق و بدون خطا چیست؟
برای جمعبندی، این چکلیست کوتاه را همیشه قبل از فشردن دکمه Run در ذهن داشته باشید:
- تعداد هستهها را چک کن: آیا از تعداد هستههای فیزیکی سیستم خود مطلع هستید؟
- لایسنس را بررسی کن: آیا لایسنس شما اجازه استفاده از این تعداد هسته را میدهد؟
- از کم شروع کن: برای تست، با نیمی از هستههای موجود شروع کنید.
- مقیاسپذیری را بسنج: آیا اضافه کردن هسته بیشتر، واقعاً زمان را کاهش میدهد؟
- رم را مانیتور کن: آیا به اندازه کافی رم برای این تعداد هسته و این اندازه مش دارید؟
- فرکانس ذخیرهسازی را تنظیم کن: از ذخیره کردن بیش از حد نتایج که باعث کندی میشود، خودداری کن.
رعایت این نکات ساده اما حیاتی، شما را در مسیر درست قرار میدهد و کمک میکند از تمام پتانسیل سختافزار خود برای تنظیم یک شبیهسازی برای حل موازی روی چندین هسته به بهترین شکل استفاده کنید. برای اطمینان از کیفیت و دقت نتایج، میتوانید از خدمات انجام پروژه انسیس فلوئنت ما استفاده کنید. همچنین برای پروژههای حساس، امکان عقد قرارداد و انجام پروژه فلوئنت در تهران به صورت حضوری و یا انجام پروژه فلوئنت به صورت آنلاین برای سراسر کشور فراهم است.
سوالات متداول
۱. آیا برای پردازش موازی حتماً به CPU گرانقیمت نیاز دارم؟
خیر. تقریباً تمام CPUهای مدرن (حتی در لپتاپها) دارای حداقل ۴ هسته هستند. استفاده از همین ۴ هسته به جای ۱ هسته، میتواند سرعت شما را ۳ تا ۴ برابر کند. پس همیشه ارزشش را دارد.
۲. تفاوت بین هسته (Core) و رشته (Thread) چیست؟
هسته یک واحد پردازشی فیزیکی است. رشته (Thread) یک وظیفه مجازی است که سیستم عامل به هسته میدهد. تکنولوژی Hyper-Threading به یک هسته فیزیکی اجازه میدهد دو رشته را همزمان مدیریت کند. برای شبیهسازی، معمولاً تعداد هستههای فیزیکی معیار مهمتری است.
۳. آیا میتوان از کارت گرافیک (GPU) هم برای حل موازی استفاده کرد؟
بله، این قابلیت وجود دارد و به آن GPU Acceleration میگویند. برخی حلگرها در Ansys Fluent از این قابلیت پشتیبانی میکنند. این روش برای مسائل خاصی میتواند بسیار سریع باشد، اما تنظیمات پیچیدهتری دارد و همه مدلهای فیزیکی از آن پشتیبانی نمیکنند.
۴. چطور بفهمم که حل موازی من به درستی کار میکند؟
در Task Manager (تب Performance)، میتوانید ببینید که آیا تمام هستههای CPU شما درگیر شدهاند یا خیر. اگر استفاده از CPU نزدیک به ۱۰۰٪ باشد و نمودار همه هستهها فعال باشد، یعنی تنظیمات شما درست است.
۵. آیا موازیسازی بر دقت نتایج تاثیر میگذارد؟
در تئوری، خیر. نتیجه نهایی باید دقیقاً یکسان باشد. اما گاهی به دلیل تفاوتهای بسیار جزئی در محاسبات ممیز شناور (Floating Point) بین هستهها، ممکن است مسیر همگرایی کمی تغییر کند و نتایج نهایی تفاوت بسیار ناچیزی (در حد خطای عددی) داشته باشند که قابل چشمپوشی است.
۶. حداقل رم مورد نیاز برای اجرای موازی یک شبیهسازی ۱۰ میلیون سلولی چقدر است؟
یک قاعده سرانگشتی خوب، ۱.۵ گیگابایت رم به ازای هر میلیون سلول است. پس برای ۱۰ میلیون سلول، حداقل به ۱۶ گیگابایت رم نیاز دارید. اگر رم شما کمتر باشد، شبیهسازی یا بسیار کند میشود یا با خطا متوقف خواهد شد.
۷. آیا بستن برنامههای دیگر هنگام اجرای حل موازی تاثیری دارد؟
بله، قطعاً. هر برنامهای مقداری از منابع CPU و RAM را مصرف میکند. هنگام اجرای یک شبیهسازی سنگین، تمام برنامههای غیرضروری مثل مرورگر وب، آفیس و… را ببندید تا تمام قدرت سیستم به حلگر اختصاص یابد.
۸. چرا با وجود تنظیمات موازی، فقط یکی از هستههای من ۱۰۰٪ کار میکند؟
این مشکل معمولاً در مراحل پیشپردازش (مثل خواندن مش) یا پسپردازش رخ میدهد که ذاتاً تکهستهای هستند. اگر در حین فرآیند حل (Solving) این اتفاق بیفتد، یعنی تنظیمات موازی شما به درستی اعمال نشده است.
۹. آیا میتوانم روی یک کامپیوتر حل را به صورت موازی اجرا کنم و همزمان با آن کار دیگری انجام دهم؟
توصیه نمیشود. این کار هم سرعت شبیهسازی را کاهش میدهد و هم کار کردن شما با کامپیوتر را به شدت کند و آزاردهنده میکند. بهتر است شبیهسازی را در زمانی اجرا کنید که به سیستم نیاز ندارید (مثلاً شبها).
۱۰. برای پروژههای دانشجویی با لایسنس محدود به ۴ هسته، بهترین کار چیست؟
از همان ۴ هسته حداکثر استفاده را بکنید! تفاوت بین ۱ و ۴ هسته بسیار چشمگیر است و میتواند زمان یک شبیهسازی یک روزه را به ۶-۷ ساعت کاهش دهد. همچنین روی بهینهسازی مش تمرکز کنید تا تعداد سلولها را تا حد ممکن پایین نگه دارید.