Deep Learning: Training Network with "parallel" option using only CPUs
이 질문을 팔로우합니다.
- 팔로우하는 게시물 피드에서 업데이트를 확인할 수 있습니다.
- 정보 수신 기본 설정에 따라 이메일을 받을 수 있습니다.
오류 발생
페이지가 변경되었기 때문에 동작을 완료할 수 없습니다. 업데이트된 상태를 보려면 페이지를 다시 불러오십시오.
이전 댓글 표시
Hi,
I am trying to train a network using the follow parameters:
miniBatchSize = 10;
clear NewNetIn3D
valFrequency = floor(numel(imdsTrain)/miniBatchSize);
options = trainingOptions('sgdm', ...
'MiniBatchSize',miniBatchSize, ...
'MaxEpochs',6, ...
'InitialLearnRate',1e-5,...
'Shuffle','never',...
'ExecutionEnvironment','parallel',...
'Verbose',false, ...
'Plots','training-progress');
net = trainNetwork(imdsTrain,LabelsTrain,LayersBMC,options);
Since my graphic card is not super, I am trying to run the code using multiple CPUs, but the parallel option always go with multiple GPUs and then crashes. Is there any way to restrict the paralel pool to use only CPUs? If I define the option 'cpu' it works, but with only one core.
채택된 답변
Joss Knight
2019년 12월 16일
Even with a weak graphics card you will usually see better performance than on multiple CPUs. However, to try it out, after you start MATLAB, type
setenv CUDA_VISIBLE_DEVICES -1
댓글 수: 13
Brunno Machado de Campos
2019년 12월 17일
편집: Brunno Machado de Campos
2019년 12월 17일
Hi, thank you!
Your line worked perfectly.
I believe my problem with GPU is the dedicated memory. I am running with 800 3D MagRessoImages and when the trainning starts with GPUs it stops imediately with a memory related error.
The correct solution is to reduce the MiniBatchSize training option until you have enough memory.
Hello Mr. Knight
i need to use multiple CPU instead of hardware resource: single CPU in order to speed the network up, so do you have any suggestion for me?
thanks
Joss Knight
2020년 10월 5일
편집: Joss Knight
2020년 10월 8일
Yes, use 'ExecutionEnvironment', 'parallel' as the opening poster is doing.
thanks sir
if i use 'ExecutionEnvironnment', 'parallel' it will help to speed the network up?
my computer features are: 8 GB HD graphic, core i7 8th generation
Give it a go and see if it helps!
i did it but i got this error:
Error using trainingOptions (line 285)
'ExecutionEnvironnment' is not an option for solver 'sgdm'.
Looks like you have a typo since there are only three 'n's in Environment.
so, how to solve this issue?
Type ExecutionEnvironment instead of ExecutionEnvironnment.
By the way it's my bad because my earlier comment had the typo.
oh no problem sir
is there a way to showdown the 'parallel' command in the system, because after multiple CPU i again use single CPU but there is a little bit on my learning curve.
through the running on single CPU i found this on command window and it seems affected on my model:
IdleTimeout has been reached.
Parallel pool using the 'local' profile is shutting down.
That's nothing. You had a bunch of MATLABs running to do your parallel training, you stopped using them, so eventually they were terminated.
추가 답변 (0개)
카테고리
도움말 센터 및 File Exchange에서 Deep Learning Toolbox에 대해 자세히 알아보기
참고 항목
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!웹사이트 선택
번역된 콘텐츠를 보고 지역별 이벤트와 혜택을 살펴보려면 웹사이트를 선택하십시오. 현재 계신 지역에 따라 다음 웹사이트를 권장합니다:
또한 다음 목록에서 웹사이트를 선택하실 수도 있습니다.
사이트 성능 최적화 방법
최고의 사이트 성능을 위해 중국 사이트(중국어 또는 영어)를 선택하십시오. 현재 계신 지역에서는 다른 국가의 MathWorks 사이트 방문이 최적화되지 않았습니다.
미주
- América Latina (Español)
- Canada (English)
- United States (English)
유럽
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)
