s****1 发帖数: 425 | 1 我有一个200行的matlab code,由于数据量比较大,有几个百万量级的循环,运行时间
也比较长(几天),我
32G内存已经不够用了,不知道转成C或者java是不是有帮助?目前没有HPC。谢谢 | b***i 发帖数: 3043 | 2 code pls
【在 s****1 的大作中提到】 : 我有一个200行的matlab code,由于数据量比较大,有几个百万量级的循环,运行时间 : 也比较长(几天),我 : 32G内存已经不够用了,不知道转成C或者java是不是有帮助?目前没有HPC。谢谢
| r*****s 发帖数: 985 | 3 不是语言的问题,
divide and conquer,
正好java有map reduce
【在 s****1 的大作中提到】 : 我有一个200行的matlab code,由于数据量比较大,有几个百万量级的循环,运行时间 : 也比较长(几天),我 : 32G内存已经不够用了,不知道转成C或者java是不是有帮助?目前没有HPC。谢谢
| s****1 发帖数: 425 | 4 我有一个200行的matlab code,由于数据量比较大,有几个百万量级的循环,运行时间
也比较长(几天),我
32G内存已经不够用了,不知道转成C或者java是不是有帮助?目前没有HPC。谢谢
为了简单,我只保留了结构。
maxepoch=1500;
cmax=1500000;
for nb=1:3
for m=1:30
Qw(:,:,m,nb)=ones(cmax,1)*constant; % 1500000*4*30*3
mu(:,:,m,nb)=
sigma(:,:,m,nb)=
end
end
for g=1:2000
for nb=1:3
x=batchdata(:,:,nb);%20000*800*3
.....
for m=1:30
for i=1:numwits(:,nb)%1000000*3
w(i,m,nb)= normrnd(mu(i,j,m,nb),sigma(i,j,m,nb));% j=one of
[1 2 3 ... 16]
end
h(:,:,m,nb)=; %1000*1000*30*3
hh(:,:,m,nb)=;%1000*800*30*3
hhh(:,:,m,nb)=;%800*500*30*3
hhhh(:,:,m,nb)=;%500*100*30*3
yx(:,:,m,nb)=;%100*500*30*3
yxx(:,:,m,nb)=;%500*800*30*3
yxxx(:,:,m,nb%800*1000*30*3
yxxxx(:,:,m,nb)=;%1000*1000*30*3
clear wx wxx wxxx wxxxx h hh hhh hhhh yx yxx yxxx yxxxx
if err(m,nb)>errbest(m,nb)
num=intersect(numbest{:,m,nb}(:),exist(:)); %几十万
for ii=1:length(num)
for i=1:k
c=bb{num(ii),:,m,nb}(i); %数组
if ...
...
elseif ...
...
else
...
end
...
end
end
else
...
for i=1:1000000
...
end
end
end
if error(nb)>serrbest(nb)
for ii=1:cmax
if ...
elseif ...
else
...
end
end
else
...
end
...
end
end
end | b***i 发帖数: 3043 | 5 code pls
【在 s****1 的大作中提到】 : 我有一个200行的matlab code,由于数据量比较大,有几个百万量级的循环,运行时间 : 也比较长(几天),我 : 32G内存已经不够用了,不知道转成C或者java是不是有帮助?目前没有HPC。谢谢 : 为了简单,我只保留了结构。 : maxepoch=1500; : cmax=1500000; : for nb=1:3 : for m=1:30 : Qw(:,:,m,nb)=ones(cmax,1)*constant; % 1500000*4*30*3 : mu(:,:,m,nb)=
| r*****s 发帖数: 985 | 6 不是语言的问题,
divide and conquer,
正好java有map reduce
【在 s****1 的大作中提到】 : 我有一个200行的matlab code,由于数据量比较大,有几个百万量级的循环,运行时间 : 也比较长(几天),我 : 32G内存已经不够用了,不知道转成C或者java是不是有帮助?目前没有HPC。谢谢 : 为了简单,我只保留了结构。 : maxepoch=1500; : cmax=1500000; : for nb=1:3 : for m=1:30 : Qw(:,:,m,nb)=ones(cmax,1)*constant; % 1500000*4*30*3 : mu(:,:,m,nb)=
| l*******g 发帖数: 82 | 7
我有一个200行的matlab code,由于数据量比较大,有几个百万量级的循环,运行时间
也比较长(几天),我32G内存已经不够用了,不知道转成C或者java是不是有帮助?目
前........
java,c都可以的。主要在于你怎么写代码了,如果可以的话,最好不要把数据一次读
入内存,可以采取用多少分析多少。
java的话比较方便,因为有很多数据结构可以用,还有内存管理。而且可以用多线程,
并行处理。
而c的话,如果你又足够信心来保证内存释放没有泄露的话,并且自己完成一些需要的
数据结构也是没问题的,而且根据我以前用c做基因数据分析来说,速度比java快超很
多,大概只用1/4时间。
【在 s****1 的大作中提到】 : 我有一个200行的matlab code,由于数据量比较大,有几个百万量级的循环,运行时间 : 也比较长(几天),我 : 32G内存已经不够用了,不知道转成C或者java是不是有帮助?目前没有HPC。谢谢 : 为了简单,我只保留了结构。 : maxepoch=1500; : cmax=1500000; : for nb=1:3 : for m=1:30 : Qw(:,:,m,nb)=ones(cmax,1)*constant; % 1500000*4*30*3 : mu(:,:,m,nb)=
| l*******g 发帖数: 82 | |
|