160 likes | 264 Views
Visualization of Parallel Programming . A Tool for Understanding M essage Passing in Parallel Systems. Andrew Schwartz ‘13 Computer Science Union College. Advisor: Professor Barr. Introduction. Intel® Quad Core Processor. “Supercomputer”. Sum (Single Processor). Sum first 100 integers.
E N D
Visualization of Parallel Programming A Tool for Understanding Message Passing in Parallel Systems Andrew Schwartz ‘13 Computer Science Union College Advisor: Professor Barr
Introduction Intel® Quad Core Processor “Supercomputer”
Sum (Single Processor) Sum first 100 integers Processor Input Output 1 x=5050 1-100 x=1 x=x+2 x=x+3 … x=x+100 100 additions
Sum (5 Processors) 1-20 x1= 210 1 xtotal=x1+x2 xtotal= xtotal+x3 xtotal= xtotal+x4 xtotal= xtotal+x5 21-40 x2= 610 2 Input x3= 1010 Output 41-60 3 1-100 xtotal=5050 x4= 1410 61-80 4 100+ 4 additions First step parallelized x5= 1810 5 81-100
Timeline Analysis Single processor P0 (100 additions = 100 time steps) 100 0 Time Five processors P5 P0 100 24 0 20 Time (104 additions, but ~24 time steps
Architecture Diagrams NUMA Architecture Courtesy: Florida State University goparallel.sourceforge.ne
Background Options limited Needs more information! NEXT!
Background MPICL/ParaGraph Overview • “Installation a nightmare” • Dozens of views and diagrams OVERKILL
Future Work Core design challenges met QoL functionality still left to be implemented before release Extensible project design -> new functions can be modeled with new algos Port to UNIX via Mono Initial results promising but need to test in the classroom