의 동작을 compelete 데 시간이 너무 오래 시간을내어 및 사용이 많이 나는이 코드 조각이 :물리적 메모리
function Plot2DScatter(img1,img2)
n = size(img1,1);
m = size(img2,1);
axis([0 280 0 280])
hold on
for i=1:n
for j=1:m
x = img1(i,j);
y = img2(i,j);
plot(x,y);
end
end
end
을하는 GUI에서 사용되는 함수이야. img1과 img2는 두 개의 2048 * 2048 이미지 행렬입니다.
루프가 4194304 번 반복되어야합니다.
내 문제는 시스템이 작업을 완료하는 데 너무 많은 시간이 걸리고 (약 45 분) CPU 사용량이 실제로 높다는 것입니다. 그리고 컴퓨터가 멈추게 될 때 많은 양의 실제 메모리 (RAM)가 필요합니다 (약 45 %).
시스템에 적용되는 압력을 줄이고 작업을 빠르게 수행 할 수있는 방법이 있습니까?
작은 코멘트 : 그것은 좋은 연습 (http://stackoverflow.com/questions/14790740/using- [매트랩 변수 NAMS로'i'와'j'를 사용하지 않는]입니다 i-and-j-as-variables-in-matlab)을 사용합니다. – Shai