2016-08-04 2 views

답변

3

서로 다른 근로자 (power)로 전송 한 변수를 가지고 당신이 다른 코어를 사용하여 작성하려는 때문에 작동하지 않습니다.

다른 근로자와 같은 변수에 어떻게 쓸 수 있습니까? 누가 메모리를 저장합니까? 노동자들은 어디에서 글을 썼고 어디에서 의사 소통을 했습니까? 병렬 컴퓨팅을 수행 할 때 코드의 구조는 매우 중요합니다. 어떤 작업자에게 어떤 메모리를 보내야하는지 알고 있어야합니다. 변수를 전달할 때 잘못된 접근 방식을 선택하면 코드가 비 병렬 방식보다 느려질 수 있습니다.

당신이 보여 코드가 변경 될 수 있습니다

R=10; 
Power1=zeros(1,R); 
Power2=zeros(1,R); 

parfor s=1:R 
    Power1(1,s)=1 
    Power2(1,s)=2; 
end 
Power=[Power1;Power2] 

나는 MATLAB 오류가 당신이 지시하는 것을, 당신은 http://uk.mathworks.com/help/distcomp/parallel-for-loops-parfor.html 로 이동 특히 variable types in parfors은 "개념"섹션을 읽으십시오.

관련 문제