【问题标题】:Matlab, memory issuesMatlab,内存问题
【发布时间】:2015-05-27 20:55:49
【问题描述】:

我已经阅读了几个关于同一主题的类似问题,但我仍然没有设法解决我的问题。 一段时间以来,我遇到了内存不足错误;

这很奇怪,因为我总是在 Matlab 上工作,即使矩阵和数据比现在更大(约 300 万行),以前从未遇到过这个问题;相反,从昨天开始,即使我尝试制作一个简单的零矩阵,我也会收到此错误。 顺便说一句,正如我告诉你的那样,我看到了这里给出的 Mathworks 的建议 http://nl.mathworks.com/help/matlab/matlab_prog/resolving-out-of-memory-errors.html 以及在此处找到的一些已回答问题的内容。 所以我 : 1)增加分页大小设置初始大小10000 MB,最大大小12150 MB 2) 将 Java 堆内存增加到 2025 MB 3) 再次编写将矩阵拆分为非常小的部分的代码

我假设我有一台 8 GB RAM windows 64 位机器。 如果我输入内存命令,我会得到:

有人知道我该怎么做吗?我有点感觉它与计算机有关,而不是与 Matlab 本身有关,但我想听听比我更有经验的人的意见:)

提前谢谢你!!

感谢 Rollen Dsouza 的评论,你是对的,这里是我的犯罪代码:

%% Investigation of negative peaks

%% main

clear all
close all
clc

cd('C:\Users\jemy\Downloads\CURRENT PROJECTS\SPIKE\code');

filename= 'Du-181014_D-ch27-Spikes_TimeStamps';

load(strcat('C:\Users\jemy\Desktop\SpikeS\', filename), 'Spikes');
load(strcat('C:\Users\jemy\Downloads\CURRENT PROJECTS\SPIKE\parameters\stend_', filename));


%% Splitting matrices

dim= size(Spikes, 1);

% First quarter of the file

sub_Spikes= double(Spikes(1:round(dim/16), :));

sub_stend= stend(1:round(dim/16), :);

clear Spikes;
clear Stend;

% Window where double minima will be searched
s= sub_stend(:, 14);
e= sub_stend(:, 5);

% Inizialization of results matrices
minima= zeros(size(sub_Spikes, 1), size(sub_Spikes, 2));
dev= zeros(size(sub_Spikes, 1));

注意:当前大小(sub_Spikes)为 145377x46。

【问题讨论】:

  • 呃。也许您应该显示有问题的代码(准确地说是MCVE)。否则没有人能给你任何好的答案。据其他人所知,您使用的内存可能比您想象的要多。
  • 抱歉,如果它在零矩阵分配时崩溃,那么 MCVE 并不合适。您是否确认内存中没有其他内容 (clear all)。
  • 两件事,首先你检查过你电脑的可用内存吗?二、你写clear Stendstend大吗?
  • 根据您声明的当前大小规格判断,除非您在后台运行其他一些进程或者@patrik 说,Stend 非常大,否则您不应该出现 OutOfMemory 异常。附: clear 区分大小写。

标签: matlab memory memory-management out-of-memory


【解决方案1】:

您确定需要dev= zeros(size(sub_Spikes, 1)) 还是忘记了...,1)?那是 2.1134e+10 (145377*145377) 元素,我的电脑也无法处理。 没有足够的声誉来发表评论。

【讨论】:

  • 真是个愚蠢的错误......对不起,我为此困扰了你,我整天都在为此苦苦挣扎。谢谢它实际上解决了我的问题!
  • 没问题,我在代码中多次犯同样的错误;)
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2010-09-22
  • 2014-12-19
相关资源
最近更新 更多