distributed computing in the engineering workflow...7 ® ® distributed computing toolbox in r2007a...
TRANSCRIPT
![Page 1: Distributed Computing in the Engineering Workflow...7 ® ® Distributed Computing Toolbox in R2007a Single processor Multi-core Multiprocessor Clusters Grids MATLAB to Distributed](https://reader035.vdocuments.us/reader035/viewer/2022071405/60fa950cb8aaa11a032a27d2/html5/thumbnails/1.jpg)
©20
07 T
he M
athW
orks
, Inc
.
® ®
Distributed Computing in the Engineering Workflow
Loren DeanDirector of Engineering, MATLAB ProductsThe MathWorks
![Page 2: Distributed Computing in the Engineering Workflow...7 ® ® Distributed Computing Toolbox in R2007a Single processor Multi-core Multiprocessor Clusters Grids MATLAB to Distributed](https://reader035.vdocuments.us/reader035/viewer/2022071405/60fa950cb8aaa11a032a27d2/html5/thumbnails/2.jpg)
2
® ®
Agenda
An important trend impacting the Engineering workflow
Task parallel applications
Data parallel applications
![Page 3: Distributed Computing in the Engineering Workflow...7 ® ® Distributed Computing Toolbox in R2007a Single processor Multi-core Multiprocessor Clusters Grids MATLAB to Distributed](https://reader035.vdocuments.us/reader035/viewer/2022071405/60fa950cb8aaa11a032a27d2/html5/thumbnails/3.jpg)
3
® ®
Single processor Multi-core Multiprocessor Clusters Grids
Market trend: from single processor to grids
![Page 4: Distributed Computing in the Engineering Workflow...7 ® ® Distributed Computing Toolbox in R2007a Single processor Multi-core Multiprocessor Clusters Grids MATLAB to Distributed](https://reader035.vdocuments.us/reader035/viewer/2022071405/60fa950cb8aaa11a032a27d2/html5/thumbnails/4.jpg)
4
® ®
Why is this important?
Technical computingModeling and analysis involves numerous runs
Monte carlo or similar applications very commonComplexity of algorithms causes longer execution times
Data sets are increasing in size
Model-based designSimulation is done prior to real-world implementation
Many scenarios testedOptimal solutions can be found earlier
Simulations are growing in complexity and sizeSimulation time increasesRsim and other targets are only part of the solution
![Page 5: Distributed Computing in the Engineering Workflow...7 ® ® Distributed Computing Toolbox in R2007a Single processor Multi-core Multiprocessor Clusters Grids MATLAB to Distributed](https://reader035.vdocuments.us/reader035/viewer/2022071405/60fa950cb8aaa11a032a27d2/html5/thumbnails/5.jpg)
5
® ®
MATLABin R2006b
Single processor Multi-core Multiprocessor Clusters Grids
MATLAB addresses the market trend
![Page 6: Distributed Computing in the Engineering Workflow...7 ® ® Distributed Computing Toolbox in R2007a Single processor Multi-core Multiprocessor Clusters Grids MATLAB to Distributed](https://reader035.vdocuments.us/reader035/viewer/2022071405/60fa950cb8aaa11a032a27d2/html5/thumbnails/6.jpg)
6
® ®
MATLABin R2007a
Single processor Multi-core Multiprocessor Clusters Grids
MATLAB addresses the market trend
![Page 7: Distributed Computing in the Engineering Workflow...7 ® ® Distributed Computing Toolbox in R2007a Single processor Multi-core Multiprocessor Clusters Grids MATLAB to Distributed](https://reader035.vdocuments.us/reader035/viewer/2022071405/60fa950cb8aaa11a032a27d2/html5/thumbnails/7.jpg)
7
® ®
Distributed Computing Toolboxin R2007a
Single processor Multi-core Multiprocessor Clusters Grids
MATLAB to Distributed Computing
MATLAB Distributed Computing Engine
![Page 8: Distributed Computing in the Engineering Workflow...7 ® ® Distributed Computing Toolbox in R2007a Single processor Multi-core Multiprocessor Clusters Grids MATLAB to Distributed](https://reader035.vdocuments.us/reader035/viewer/2022071405/60fa950cb8aaa11a032a27d2/html5/thumbnails/8.jpg)
8
® ®
What is happening because of this trend?
Interactive programming -re-use of existing applications
Low-cost hardware 4xShuttle$4,000
Schedulers and Operating Systems
providing foundation services
Distributed/parallel engineering software tools
becoming available ScaLAPACK
![Page 9: Distributed Computing in the Engineering Workflow...7 ® ® Distributed Computing Toolbox in R2007a Single processor Multi-core Multiprocessor Clusters Grids MATLAB to Distributed](https://reader035.vdocuments.us/reader035/viewer/2022071405/60fa950cb8aaa11a032a27d2/html5/thumbnails/9.jpg)
9
® ®
Skills required for distributed computing today
Capability, Enterprise
(128+)
Divisional(64, 96, 128)
Departmental(16, 32)
Workgroup(<8, 8, 16)
“Passive”, Never everuser
User TypeUser Type
HPC user
“Active” user
“Active” user
HPC user
IT S
peci
aliz
atio
n
CS
Deg
ree
Engi
neer
ing
/ Sci
ence
Deg
ree
SkillsSkills
Individual (1, Multicore, SMP)
Cluster TypeCluster Type
![Page 10: Distributed Computing in the Engineering Workflow...7 ® ® Distributed Computing Toolbox in R2007a Single processor Multi-core Multiprocessor Clusters Grids MATLAB to Distributed](https://reader035.vdocuments.us/reader035/viewer/2022071405/60fa950cb8aaa11a032a27d2/html5/thumbnails/10.jpg)
10
® ®
Skills that would be preferred
Capability, Enterprise
(128+)
Divisional(64, 96, 128)
Departmental(16, 32)
Workgroup(<8, 8, 16)
“Active” user
“Passive”, Never everuser
User TypeUser Type
HPC user
“Active” user
HPC user IT
CS
Deg
ree
Engi
neer
ing
/ Sci
ence
Deg
ree
SkillsSkills
Individual (1, Multicore, SMP)
Cluster TypeCluster Type
![Page 11: Distributed Computing in the Engineering Workflow...7 ® ® Distributed Computing Toolbox in R2007a Single processor Multi-core Multiprocessor Clusters Grids MATLAB to Distributed](https://reader035.vdocuments.us/reader035/viewer/2022071405/60fa950cb8aaa11a032a27d2/html5/thumbnails/11.jpg)
11
® ®
Compute clusterCompute cluster
CPU
CPU
CPU
CPU
MATLAB Distributed Computing EngineMATLAB Distributed Computing Engine
Scheduler
Client MachineClient Machine
Worker
Worker
Worker
Worker
Distributed computing solution
DistributedComputing
ToolboxTOOLBOXES
BLOCKSETS
![Page 12: Distributed Computing in the Engineering Workflow...7 ® ® Distributed Computing Toolbox in R2007a Single processor Multi-core Multiprocessor Clusters Grids MATLAB to Distributed](https://reader035.vdocuments.us/reader035/viewer/2022071405/60fa950cb8aaa11a032a27d2/html5/thumbnails/12.jpg)
12
® ®
Agenda
An important trend impacting the Engineering workflow
Task parallel applications
Data parallel applications
![Page 13: Distributed Computing in the Engineering Workflow...7 ® ® Distributed Computing Toolbox in R2007a Single processor Multi-core Multiprocessor Clusters Grids MATLAB to Distributed](https://reader035.vdocuments.us/reader035/viewer/2022071405/60fa950cb8aaa11a032a27d2/html5/thumbnails/13.jpg)
13
® ®
Multiple independent problems
![Page 14: Distributed Computing in the Engineering Workflow...7 ® ® Distributed Computing Toolbox in R2007a Single processor Multi-core Multiprocessor Clusters Grids MATLAB to Distributed](https://reader035.vdocuments.us/reader035/viewer/2022071405/60fa950cb8aaa11a032a27d2/html5/thumbnails/14.jpg)
14
® ®
Compute clusterCompute cluster
CPU
CPU
CPU
CPU
MATLAB Distributed Computing EngineMATLAB Distributed Computing Engine
Scheduler
Result
Result
Result
Result
Client MachineClient Machine
Task
Task
Task
Task
Worker
Worker
Worker
Worker
Task parallel applications
DistributedComputing
ToolboxTOOLBOXES
BLOCKSETS
Result
Job
![Page 15: Distributed Computing in the Engineering Workflow...7 ® ® Distributed Computing Toolbox in R2007a Single processor Multi-core Multiprocessor Clusters Grids MATLAB to Distributed](https://reader035.vdocuments.us/reader035/viewer/2022071405/60fa950cb8aaa11a032a27d2/html5/thumbnails/15.jpg)
15
® ®
Example: Land ClassificationNational Land Cover Dataset (NLCD) from U.S. Geological Survey – 30GB“Where are wetlands, forests etc concentrated?”“How does the distribution compare with other datasets?”
![Page 16: Distributed Computing in the Engineering Workflow...7 ® ® Distributed Computing Toolbox in R2007a Single processor Multi-core Multiprocessor Clusters Grids MATLAB to Distributed](https://reader035.vdocuments.us/reader035/viewer/2022071405/60fa950cb8aaa11a032a27d2/html5/thumbnails/16.jpg)
16
® ®
From sequential to distributed: MATLAB
![Page 17: Distributed Computing in the Engineering Workflow...7 ® ® Distributed Computing Toolbox in R2007a Single processor Multi-core Multiprocessor Clusters Grids MATLAB to Distributed](https://reader035.vdocuments.us/reader035/viewer/2022071405/60fa950cb8aaa11a032a27d2/html5/thumbnails/17.jpg)
17
® ®
From sequential to distributed: MATLAB
![Page 18: Distributed Computing in the Engineering Workflow...7 ® ® Distributed Computing Toolbox in R2007a Single processor Multi-core Multiprocessor Clusters Grids MATLAB to Distributed](https://reader035.vdocuments.us/reader035/viewer/2022071405/60fa950cb8aaa11a032a27d2/html5/thumbnails/18.jpg)
18
® ®
From sequential to distributed: Simulink
1. Divide the Monte Carlo simulations such that each processor executes a full Simulink simulation or RSIMtarget.
Eg., one simulation per altitude2. Create a Task Function that uses MATLAB commands to
call the Simulink model you want to execute
![Page 19: Distributed Computing in the Engineering Workflow...7 ® ® Distributed Computing Toolbox in R2007a Single processor Multi-core Multiprocessor Clusters Grids MATLAB to Distributed](https://reader035.vdocuments.us/reader035/viewer/2022071405/60fa950cb8aaa11a032a27d2/html5/thumbnails/19.jpg)
19
® ®
Agenda
A little history and context setting
Task parallel solutions
Data parallel solutions
![Page 20: Distributed Computing in the Engineering Workflow...7 ® ® Distributed Computing Toolbox in R2007a Single processor Multi-core Multiprocessor Clusters Grids MATLAB to Distributed](https://reader035.vdocuments.us/reader035/viewer/2022071405/60fa950cb8aaa11a032a27d2/html5/thumbnails/20.jpg)
20
® ®
Compute clusterCompute cluster
CPU
CPU
CPU
CPU
MATLAB Distributed Computing EngineMATLAB Distributed Computing Engine
SchedulerResult
Client MachineClient Machine
Lab
Lab
Lab
Lab
Data parallel applications(interactive and batch)
Job
Task
Task
Task
Task
Result
DistributedComputing
ToolboxTOOLBOXES
BLOCKSETS
Result
Result
Result
![Page 21: Distributed Computing in the Engineering Workflow...7 ® ® Distributed Computing Toolbox in R2007a Single processor Multi-core Multiprocessor Clusters Grids MATLAB to Distributed](https://reader035.vdocuments.us/reader035/viewer/2022071405/60fa950cb8aaa11a032a27d2/html5/thumbnails/21.jpg)
21
® ®
Large Memory Requirements
1111 2626 4141
1212 2727 4242
1313 2828 4343
1414 2929 4444
1515 3030 4545
1616 3131 4646
1717 3232 4747
1717 3333 4848
1919 3434 4949
2020 3535 5050
2121 3636 5151
2222 3737 5252
1111 2626 4141
1212 2727 4242
1313 2828 4343
1414 2929 4444
1515 3030 4545
1616 3131 4646
1717 3232 4747
1717 3333 4848
1919 3434 4949
2020 3535 5050
2121 3636 5151
2222 3737 5252
![Page 22: Distributed Computing in the Engineering Workflow...7 ® ® Distributed Computing Toolbox in R2007a Single processor Multi-core Multiprocessor Clusters Grids MATLAB to Distributed](https://reader035.vdocuments.us/reader035/viewer/2022071405/60fa950cb8aaa11a032a27d2/html5/thumbnails/22.jpg)
22
® ®
Using FORTRAN and MPI Using MATLAB and MPI
Using Distributed Arrays
P>> E = D’
Transposing a Distributed Matrix
![Page 23: Distributed Computing in the Engineering Workflow...7 ® ® Distributed Computing Toolbox in R2007a Single processor Multi-core Multiprocessor Clusters Grids MATLAB to Distributed](https://reader035.vdocuments.us/reader035/viewer/2022071405/60fa950cb8aaa11a032a27d2/html5/thumbnails/23.jpg)
23
® ®
Example:Image Formation Algorithms: Synthetic Aperture Radar (SAR)
DescriptionSAR is a sophisticated method of post-processing radar dataSize and processing requirements demand lots of memory
ApproachProcessing SAR images involves interdependent 2-D operations
Distribute image across the cluster
![Page 24: Distributed Computing in the Engineering Workflow...7 ® ® Distributed Computing Toolbox in R2007a Single processor Multi-core Multiprocessor Clusters Grids MATLAB to Distributed](https://reader035.vdocuments.us/reader035/viewer/2022071405/60fa950cb8aaa11a032a27d2/html5/thumbnails/24.jpg)
24
® ®
From sequential to distributed: MATLAB
![Page 25: Distributed Computing in the Engineering Workflow...7 ® ® Distributed Computing Toolbox in R2007a Single processor Multi-core Multiprocessor Clusters Grids MATLAB to Distributed](https://reader035.vdocuments.us/reader035/viewer/2022071405/60fa950cb8aaa11a032a27d2/html5/thumbnails/25.jpg)
25
® ®
From sequential to distributed: MATLAB
![Page 26: Distributed Computing in the Engineering Workflow...7 ® ® Distributed Computing Toolbox in R2007a Single processor Multi-core Multiprocessor Clusters Grids MATLAB to Distributed](https://reader035.vdocuments.us/reader035/viewer/2022071405/60fa950cb8aaa11a032a27d2/html5/thumbnails/26.jpg)
26
® ®
Compute clusterCompute cluster
CPU
CPU
CPU
CPU
MATLAB Distributed Computing EngineMATLAB Distributed Computing Engine
Scheduler
Worker
Worker
Worker
Worker
Distributed Computing in the Engineering Workflow
Task
Task
Task
Task
Result
Result
Result
Result
Distributed Computing
Toolbox
Distributed Computing
Toolbox
Result
Job
![Page 27: Distributed Computing in the Engineering Workflow...7 ® ® Distributed Computing Toolbox in R2007a Single processor Multi-core Multiprocessor Clusters Grids MATLAB to Distributed](https://reader035.vdocuments.us/reader035/viewer/2022071405/60fa950cb8aaa11a032a27d2/html5/thumbnails/27.jpg)
27
® ®
Why is this important?
Technical computingModeling and analysis involves numerous runs
Monte carlo or similar applications very commonComplexity of algorithms causes longer execution times
Data sets are increasing in size
Model-based designSimulation is done prior to real-world implementation
Many scenarios testedOptimal solutions can be found earlier
Simulations are growing in complexity and sizeSimulation time increasesRsim and other targets are only part of the solution
![Page 28: Distributed Computing in the Engineering Workflow...7 ® ® Distributed Computing Toolbox in R2007a Single processor Multi-core Multiprocessor Clusters Grids MATLAB to Distributed](https://reader035.vdocuments.us/reader035/viewer/2022071405/60fa950cb8aaa11a032a27d2/html5/thumbnails/28.jpg)
28
® ®
Summary
Hardware trends are impacting everybody
Understanding and creating distributed applications will be an important skill for anybody in the fields of Computer Science or Technical Computing
MathWorks provides a market-leading solution for distributed applications
Demo available in exhibit hall