• ورود برای خرید
  • درگاه پرداخت آنلاین
📌 سفارش آموزش و شبیه‌سازی با متلب را از طریق فرم سایت ارسال نمایید. 📞 09378425676 🕙 ساعت تماس: 10 تا 23 هر روز | ⚠️ لطفاً جهت استعلام هزینه تماس نگیرید؛ سفارش شما ابتدا باید توسط متخصصین بررسی شود.
  • سبد خرید فروشگاه سبد خرید فروشگاه
    0سبد خرید فروشگاه
متلبی
  • خانه
  • فروشگاه متلبی
  • وبلاگ
  • دعوت به همکاری
  • فرم ثبت سفارش
  • Click to open the search input field Click to open the search input field جستجو
  • منو منو
وبلاگ آموزش ها و اخبار متلبی
مکان شما: خانه1 / وبلاگ آموزش ها و اخبار متلبی2 / آموزش متلب3 / رفع خطای Out of Memory متلب
رفع خطای Out of Memory متلب

رفع خطای Out of Memory متلب

0 دیدگاه /در آموزش متلب, هلپ متلب, وبلاگ/توسط حسن یوسفی

رفع خطای Out of Memory متلب

متلب برنامه ای هست که در طی تحلیل و اجرای برنامه بر اساس مقدار دیتای مورد محاسبه رم سیستم را درگیر می کند.

در این پست قصد داریم راهکارهای متفاوتی را برای رفع خطای خارج شدن از حافظه, بررسی کنیم و به آن بپردازیم.

مهم نیست که چگونه با این خطا مواجه شده اید, ما بهینه کردن برنامه و سیستم را برای گذر از این خطای Out of Memory توضیح می دهیم.

رفع خطای Out of Memory متلب

چه زمانی خطای Out of Memory رخ می دهد؟

متلب بسیار هوشمند است و برای مواقعی که محاسبات بیشتر از مقدار 100درصدی حافظه یا همان Ram سیستم هست با نمایش خطای Out of Memory کاربر را مطلع می سازد. از این رو کاربر متوجه می شود مشکل از پر شدن حافظه بوده است.

این در صورتی هست که برنامه های دیگر وقتی از حداکثر ظرفیت رم استفاده میکنند, سیستم هنگ می کند یا برنامه بسته میشود.

شاید الان با خودتان بگویید پس چرا گاها سیستم من با اجرای برنامه متلب هنگ می کند!

پاسخ این است که متلب این قابلیت را دارد که از 100درصد رم برای محاسبات استفاده کند. در تنظیمات متلب می توان مقدار حداکثر استفاده متلب از رم را مشخص کرد. برای اینکار به مسیر زیر بروید:

 Home تب,  Environment بخش ,  Preferences کلیک . MATLAB > Workspace را انتخاب کنید

از سمت چپ به راست به ترتیب عمل کنید.

خب حالا طبق این لینک تنظیمات را اعمال کنید. (چون مبحث در مورد راه های رفع خطای حافظه هست این موضوع را بیشتر تشریح نکردیم)

 

استراتژی حل خطای Out of Memory در متلب

در زیر راه های مختلف را با هم بررسی می کنیم. ما راهکار حل مشکل را هم با تغییرات در پروژه متلب و هم در سخت افزار و ویندوز و… بررسی می کنیم. چرا که این خطا میتواند با عوامل بسیار زیادی مرتبط باشد و کارهای زیر همگی در رفع این خطا موثر هستند:

  • رم سیستم خود را افزایش دهید (دارای هزینه)

رم (RAM) حافظه موقت سیستم شماست, میتوانید از یک متخصص کامپیوتر یا لپ تاپ برای این امر کمک بگیرید.

 

  • افزایش رم به صورت مجازی (virtual memory) (بدون هزینه)

با یک جستجوی ساده در گوگل میتوانید راهکارهای افزایش حافظه مجازی را مطابق با ویندوز خود مشاهده و اعمال نمایید. این یک اقدام بسیار کار ساز برای رفع مشکل Out of Memory در متلب است.

 

  • از نسخه 64بیتی متلب استفاده کنید

ویندوز های 64بیتی فضای بیشتری از حافظه رم سیستم را برای استفاده در نظر می گیرند.

 

  • برنامه های اضافی را ببندید

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

برای این کار بعضی از نرم افزار ها با نام بوستر رم در فضای اینترنت موجود است که میتوان استفاده کرد.

 

  • از ذخیره سازی اطلاعات مناسب استفاده کنید

از کلاس عددی مناسب استفاده کنید. یعنی برای داده ای که میشود از کلاس Single یا uint8 استفاده کرد, به هیچ عنوان از Double استفاده نکنید

 

کلاس (نوع داده)

بایت عملیات پشتیبانی شده

single

4

بیشتر ریاضیات

double

8

همه ریاضیات

logical

1

عملیات منطقی / شرطی

int8, uint8

1

حساب و برخی توابع ساده

int16, uint16

2

حساب و برخی توابع ساده

int32, uint32

4

حساب و برخی توابع ساده

int64, int64 8

حساب و برخی توابع ساده

  • فراخوانی دیتا با کلاس مناسب

مثال زیر را در نظر بگیرید:

fid = fopen('large_file_of_uint8s.bin', 'r'); 
a = fread(fid, 1e3, 'uint8');              % Requires 8k 
whos a
  Name         Size            Bytes  Class    Attributes
 
  a         1000x1              8000  double    
  
a = fread(fid, 1e3, 'uint8=>uint8');       % Requires 1k 
whos a
  Name         Size            Bytes  Class    Attributes
 
  a         1000x1              1000  uint8

همانطور که مشاهده میشود دیتا با کلاس دابل 8کیلوبایت و با کلاس uint8 یک کیلوبایت حجم در حافظه اشغال می کند.

  • در صورت امکان آرایه ها را کم حجم کنید

شاید برای شما هم جالب باشد که آرایه های صفر در ماتریس ها فضای بیشتری اشغال می کنند.

باز هم مثال میزنیم:

A = eye(1000);        % Full matrix with ones on the diagonal
As = sparse(A);       % Sparse matrix with only nonzero elements
whos
  Name         Size                Bytes  Class     Attributes

  A         1000x1000            8000000  double              
  As        1000x1000              24008  double    sparse

در ابعاد کوچک تر نتیجه این دو دستور را نمایش میدهیم.

A= eye(4)

نتیجه:

A =

1 0 0 0
0 1 0 0
0 0 1 0
0 0 0 1

و اما دستور زیر:

As = sparse(A)

As =

(1,1) 1
(2,2) 1
(3,3) 1
(4,4) 1

دستور sparse عناصر صفر را حذف می کند. یعنی فقط عناصر غیر از صفر را نگه میدارد.

گاهی یک برنامه چند 100 خطی را میتوان با چند دستور و به بهینه ترین و سبک ترین حالت پیاده سازی کرد. فقط باید دایره شناخت ما از دستورات متلب بازتر شود. هلپ متلب بزرگترین و قویترین منبع آموزش متلب است.

  • وبلاگ و اخبار متلبی
  • آموزش رفع مشکل لایسنس متلب
  • رفع خطای must be monotonically increasing در سیمولینک متلب
  • آموزش رفع خطای License Error –4,0 موقع باز کردن Polyspace متلب

 

این مطلب باز هم آپدیت میشود و راهکارهای بیشتری را ارائه خواهیم کرد.

نظرات خود را با ما در بخش دیدگاه های همین پست در میان بگذارید.

 

free

 

برچسب ها: خطا در متلب, خطای حافظه متلب
اشتراک این مطلب
  • Facebook Facebook اشتراک در Facebook
  • X-twitter X-twitter اشتراک در X
  • Whatsapp Whatsapp اشتراک گذاری در واتس اپ
  • Pinterest Pinterest اشتراک در Pinterest
  • Linkedin Linkedin اشتراک در LinkedIn
  • Tumblr Tumblr اشتراک در Tumblr
  • Reddit Reddit اشتراک در Reddit
https://www.matlabi.ir/wp-content/uploads/2020/12/Out-of-memory-matlabi.jpg 350 450 حسن یوسفی https://www.matlabi.ir/wp-content/uploads/2020/05/logo-matlabi.png حسن یوسفی2020-12-18 13:07:352021-03-06 17:20:50رفع خطای Out of Memory متلب
شاید این موارد نیز مورد علاقه شما باشد
راه حل برای خطای Index exceeds matrix dimensions در متلب راه حل برای خطای Index exceeds matrix dimensions در متلب
0 پاسخ

دیدگاه خود را ثبت کنید

تمایل دارید در گفتگوها شرکت کنید؟
در گفتگو ها شرکت کنید.

دیدگاهتان را بنویسید لغو پاسخ

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

دسته ها

  • اخبار و وبلاگ
  • آموزش متلب
  • آموزش دستورات متلب

آخرین اخبار و آموزش های متلبی

  • آموزش کامل کنترل LQR در MATLAB به زبان ساده (به همراه مثال عددی و کد آماده)
  • دانلود و آموزش نصب متلب 2025b
  • آموزش کنترلر PI در MATLAB | شبیه‌سازی و نکات کاربردی
  • آموزش PID در MATLAB | شبیه‌سازی برای مهندسی برق و کنترل + کد نمونه
  • آموزش MATLAB: شبیه‌سازی سیستم‌های مرتبه اول و دوم با مثال و کد

نمونه محصولات متلبی

  • Optimal tracking and robust power control of the DFIG wind turbine Optimal tracking and robust power control of the DFIG wind turbine 589,080تومان
  • Novel Image Steganographic Method Using Tri-way Pixel-Value Differencing Novel Image Steganographic Method Using Tri-way Pixel-Value Differencing 323,760تومان
  • کنترل تطبیقی مبتنی بر PD به‌همراه مد لغزشی برای ردیابی مسیر در بازوی رباتیکی کنترل تطبیقی مبتنی بر PD به‌همراه مد لغزشی برای ردیابی مسیر در بازوی رباتیکی 399,000تومان
  • Optimization of New Fuzzy Logic Controller by Genetic Algorithm for Maximum Power Point Tracking in Photovoltaic System Optimization of New Fuzzy Logic Controller by Genetic Algorithm for Maximum Power Point Tracking in Photovoltaic System 418,080تومان
  • Passivity Based Adaptive Control of Robotic Manipulators Electrically Controlled Passivity Based Adaptive Control of Robotic Manipulators Electrically Controlled 353,880تومان

نمونه ای از خدمات متلبی

  • شبیه‌سازی سیستم‌ها با MATLAB
  • انجام پروژه آباکوس صنعتی
  • انجام پروژه EMTP و شبیه‌سازی شبکه‌های قدرت
  • انجام پروژه پاورپوینت علمی
  • انجام پروژه گمز (GAMS)
  • ترجمه تخصصی مقاله متلب و شبیه‌سازی
  • انجام پروژه آردوینو و شبیه‌سازی بردهای الکترونیکی
Doc-text Doc-text فرم ثبت سفارش
Basket Basket فروشگاه متلبی
Docs Docs وبلاگ متلبی
User-add User-add دعوت به همکاری
Megaphone Megaphone تبلیغات در متلبی

جستجو در سایت

Search Search

جستجو در فروشگاه متلبی

  • درگاه پرداخت دلخواه آنلاین
  • تماس با ما
  • درباره ما

متلبی با بیش از یک دهه تجربه و فعالیت در زمینه انجام پروژه های صنعتی, تجاری و آموزشی به صورت تخصصی با کلیه نرم افزارهای مهندسی فعالیت دارد.

سایت متلبی با ضمانت هزینه, سفارشات را با بهترین کیفیت و در کمترین زمان ممکن توسط بهترین متخصصین مربوطه انجام میدهد.

آنچه سایت متلبی را از سایرین متمایز می کند انجام پروژه به همراه آموزش و ارائه پشتیبانی قوی آن است.

بانک عظیم و منحصر بفرد مقالات شبیه سازی شده در قالب مباحث آموزشی و کمک آموزشی را در فروشگاه متلبی میتوان یافت, که با تضمین هزینه و پشتیبانی, قبل و بعد از خرید می باشد.

انجام پروژه متلب تنها یکی از خدمات نرم افزاری سایت متلبی است و تمامی سفارشات برنامه نویسی و شبیه سازی با کلیه نرم افزارها قابل انجام است.

ثبت شده در ستاد ساماندهی پایگاه های اینترنتی (مرکز فن آوری دیجیتال)

تمام حقوق مادی و معنوی محفوظ می باشد - متلبی
  • لینک به Telegram لینک به Telegram لینک به Telegram
  • لینک به Facebook لینک به Facebook لینک به Facebook
  • لینک به Instagram لینک به Instagram لینک به Instagram
  • لینک به WhatsApp لینک به WhatsApp لینک به WhatsApp
  • اطلاع از تخفیف های متلبی
پیوند: دانلود نرم افزار متلب MATHWORKS MATLAB R2020b پیوند: دانلود نرم افزار متلب MATHWORKS MATLAB R2020b دانلود نرم افزار متلب MATHWORKS MATLAB R2020bدانلود نرم افزار متلب MATHWORKS MATLAB R2020b پیوند: چرا با خطای Undefined function or variable مواجه میشویم؟ پیوند: چرا با خطای Undefined function or variable مواجه میشویم؟ Undefined function or variableچرا با خطای Undefined function or variable مواجه میشویم؟...
رفتن به بالا رفتن به بالا رفتن به بالا