Multicore - Parallel processing on multiple cores

버전 1.39.0.0 (44.6 KB) 작성자: Markus Buehren
This package provides parallel processing on multiple cores/machines.
다운로드 수: 21K
업데이트 날짜: 2014/7/21

라이선스 보기

This package provides parallel processing on multiple cores on a single machine or on multiple machines that have access to a common directory.
If you have multiple function calls that are independent of each other, and you can reformulate your code as

for k = 1:numel(parameterCell)
resultCell{k} = myfun(parameterCell{k});
end

then, replacing the loop by

resultCell = startmulticoremaster(@myfun, parameterCell);

allows you to evaluate your loop in parallel. All you need to do is to start as many additional Matlab sessions/processes as you want slaves to work, and to run

startmulticoreslave

in those additional Matlab sessions.

Everything is programmed in plain and platform-independent Matlab - no toolboxes are used, no compilation of mex-files is necessary.

Please get started with 1. the documentation in file multicore.html, 2. the help lines of function startmulticoremaster.m and 3. the demo function multicoredemo.m.

Discuss with other users here: http://groups.yahoo.com/group/multicore_for_matlab

I have spent many hours to develop this package. If you would like to let me know that you appreciate my work, you can do so by leaving a donation: https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=GPUZTN4K63NRY

Keywords: Parallel processing, distributed computing, multiple cores.

인용 양식

Markus Buehren (2024). Multicore - Parallel processing on multiple cores (https://www.mathworks.com/matlabcentral/fileexchange/13775-multicore-parallel-processing-on-multiple-cores), MATLAB Central File Exchange. 검색 날짜: .

MATLAB 릴리스 호환 정보
개발 환경: R2007b
모든 릴리스와 호환
플랫폼 호환성
Windows macOS Linux
카테고리
Help CenterMATLAB Answers에서 Big Data Processing에 대해 자세히 알아보기
도움

도움 준 파일: gapolyfitn, Batch Job

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!
버전 게시됨 릴리스 정보
1.39.0.0

Performance improvement especially for projects using many slave processes.

1.37.0.0

Added parfor-loop to demo.

1.35.0.0

Performance improvement - especially when using a large number of slaves

1.33.0.0

New features:
1. Slave settings can be set via command line argument.
2. Slave Matlab process can be quit after a given time in seconds.

1.32.0.0

Bugfix: calling startmulticoremaster.m without settings works now.

1.31.0.0

Typo fixed.

1.30.0.0

Typo fixed.

1.29.0.0

Overhead resulting from expanding the function handle cell reduced.

1.28.0.0

Description changed again.

1.27.0.0

Links in help lines corrected.

1.26.0.0

Description modified to make it more concise.

1.24.0.0

Only E-mail changed in html document.

1.23.0.0

Bugfix.

1.22.0.0

Small changes to documentation and gethostname.m

1.21.0.0

Structure being passed to post-processing function changed (still undocumented feature)

1.20.0.0

Estimation of time left changed, post-processing function introduced.

1.19.0.0

Bug fixed.

1.18.0.0

File displayerrorstruct.m was missing.

1.16.0.0

Call to "clear functions" now in master and slaves, bug fixed.

1.15.0.0

In each multicore run, "clear functions" is now called once to ensure that changes to m-files take effect.

1.14.0.0

Two bugs fixed, one regarding the waitbar, one regarding the semaphore mechanism.

1.13.0.0

Using system-dependent file separators in paths again. Waitbar shows progress during parameter file generation now.

1.12.0.0

Added estimation of time left in waitbar.

1.11.0.0

Added an optional waitbar.

1.10.0.0

If a slave is killed during working on a job, the master will now generate the parameter file of that job again instead of working on the file himself. This will increase performance in certain situations.

1.9.0.0

File regexptokens.m added.
Dicussion group created: http://groups.yahoo.com/group/multicore_for_matlab

1.8.0.0

Another change to the semaphore mechanism.

1.7.0.0

I have nearly re-written both master and slave in order to make the package even more robust and to reduce the overhead for inter-process communication.

1.5.0.0

Introduced parameter EVALSATONCE which causes the multicore package to do several function evaluations after each other before saving/loading and thus reducing the communication overhead. Demo function MULTICOREDEMO heavily commented.

1.4.0.0

Semaphore mechanism improved.

1.3.0.0

Forgot to include file chompsep.m

1.2.0.0

Semaphore stuff improved.

1.1.0.0

Subfunction datenum2 was not needed.

1.0.0.0

A subfunction that is only executed on certain systems was missing.