1 / 27

moais.imag.fr

M ulti-Pr o gramming and Scheduling Design for A pplications of I nteractive S imulation Jean-Louis Roch & al. http://moais.imag.fr. Louvre, Musée de l’Homme Sculpture (Tête) Artist : Anonyme Origin: Rapa Nui [Easter Island] Date : between the XIst and the XVth century

libby
Download Presentation

moais.imag.fr

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Multi-Programming and Scheduling Design for Applications of Interactive SimulationJean-Louis Roch & al. http://moais.imag.fr Louvre, Musée de l’Homme Sculpture (Tête) Artist : Anonyme Origin: Rapa Nui [Easter Island] Date : between the XIst and the XVth century Dimensions : 1,70 m high EVALUATION SEMINAR -RESEARCH THEME Num B"Grids and high-performance computing"March 27-28, 2008

  2. Staff and Skills • 1/1/2005 : Creation of MOAIS team • 1/1/2006 : Creation of INRIA team-project MOAIS • Vincent Danjean [MdC UJF, 9/2005] • Pierre-François Dutot [MdC UPMF, 9/2006] • Thierry Gautier [CR INRIA] • Guillaume Huard [MdC UJF] • Grégory Mounié [MdC INPG] • Bruno Raffin [CR INRIA] • Jean-Louis Roch [MdC INPG] • Denis Trystram [Prof INPG] • Frédéric Wagner [MdC INPG, 9/2006] • Alfredo Goldman [USP Sao Paulo] • 20 PhD students, 1 engineer • Parallel algorithms & programming • Scheduling • Interactive applications

  3. Former members • 13 PhDs defended in 2005-2007 • Now: 2 at INRIA : Alcove, Cepage 7 in university : Reims, IKI Iran, Luxembourg, Vannes, Damascus, Warsaw, Colima 1 in Postdoc : Iowa SU 1 Start-up co-founder : 4DViews 2 in industry : IFP, Amadeus • 2 postdocs • Now: Univ. Paris 6, Petrobraz • A long term visit: • Axel Krings, Idaho State Univ • 3 engineers • Now: INRIA/PARIS, industry

  4. Evolution of parallel programming • Parallelism everywhere • Distributed, Heterogeneous MPSoC Grids Cluster SMP multi-core GPU MPI OpenMP Cuda [NVidia] MapReduce [Google] TBB [Intel] …SPIRIT Cilk++ [CilkArts] Fortress[Sun]

  5. input output MOAIS objective • End-to-end parallel programming solutionsfor high-performance interactive computing with provable performances optimization computational steering, VR embedded • Performance is multi-objective QAP/Nugent on Grid’5000 [PRISM, GSCOP, DOLPHIN] Streaming on MPSoCs [ST] INRIA Grimage platform [MOAIS, PERCEPTION, EVASION]

  6. Approach • To mutually adapt application and scheduling. • Proactive/static to the platform : the devices evolve gradually • Online/dynamic to the execution context : data and resources • Tolerant to data variations, failures, other appli. perturbation,… • From algorithms to applications • Scheduling and parallel programming schemes • Programming interfaces and tools • Target applications : batch scheduling, combinatorial optimization, computational steering, stream encoding

  7. Research Directions 4. Interactivity  3. Adaptive         algorithms 2. Interfaces for     coordination Performance 1. Scheduling   Overview Interactive application Adaptive control of execution M O A I S model: abstract representation algorithm: scheduling, fault tolerance Architecture

  8. Research directions and achievements for 2005-2007 • Scheduling • Interfaces for coordination • Adaptive algorithms • Interactive applications

  9. Task == | | … | 1. Scheduling • Objective 1: modeling of scheduling problems for adaptive applications • Adaptable parallelism degree for efficient coarse grain scheduling • Parallel task models: moldable tasks, divisible load • Some results: • Comparisons and coupling models: [IJ FCS 06 ] • Off-line: improvement of performance ratio : • 3/2-approximation [SIAM J.Comp 07] instead of 2 [Turek&al] by strip-packing • (3+5) for moldable tasks on a grid of clusters [Europar’06] • On-line: decrease of control overhead : « work-first principle » [Cilk] • Extension to general distributed data-flow computations [ICTTA’06, ICCS’07]

  10. 1. Scheduling • Objective 2: Design of multi-objective scheduling with performance guarantees. • Simultaneous approximation for each objective • Relaxation: • Makespan/Minsum [WEA05]; • Work/Depth[Pasco07] • Approximated solutions of Pareto optimal solutions: • Makespan/Reliability[SPAA07] • Makespan/Memory [IPDPS08]

  11. For moldable tasks: yields a bi-approximation with arbitrary ratio between Cmax and Minsum [WEA05] 1. Scheduling • Objective 2: Design of multi-objective scheduling with performance guarantees. • Simultaneous approximation for each objective • Example : Makespan / Average completion time for job scheduling • Minimize the makespan : system/administrator point of view • Minimize the average completion time(wiCi): user point of view • Generic -relaxation scheme [Shmoys&al.]: To include a smart algorithm inside a recursive doubling • (eg. for Makespan) (eg. for Minsum) t 16 0 2 4 8

  12. Model: abstract representation Algorithm: scheduling, fault tolerance, ... Performance 2. Interfaces for coordination • Objective: provably efficient control at runtime of the coupling of components with various synchronizations constraints. • Kaapi: middleware for large scale distributed executions with performance guarantees Application middleware Distributed architecture

  13. 2. Interfaces for coordination • Kaapi model: distributed macro dataflow graph • Provable performances: • efficient local serialization “work-first principle”, zero-copy [J. CLSS’07, ICCS07]] • Scheduling: • coarse-grain graph partitioning + ``work-stealing’ • Fault-tolerance protocols, from scheduling properties • coordinated protocol[ICTTA’06] + original TIC protocol [EIT05, TDSC08] • Positioning : • Multi-processors/multi-core architectures: Intel TBB, CilkArts, Swarm • Grid / global platforms: Tolerate failure and falsification: Satin (FT) 1 struct sum { 2 void operator()(Shared_r < int > a, 3 Shared_r < int > b, 4 Shared_w < int > r ) 5 { r.write(a.read() + b.read()); } 6 } ; 7 8 struct fib { 9 void operator()(int n, Shared_w<int> r) 10 { if (n <2) r.write( n ); 11 else 12 { int r1, r2; 13 Fork< fib >() ( n-1, r1 ) ; 14 Fork< fib >() ( n-2, r2 ) ; 15 Fork< sum >() ( r1, r2, r ) ; 16 } 17 } 18 } ; Local stack runtime Distributed nestedmacrodataflow graph

  14. 2. Kaapi: Support and transfert • Quadratic assignment [ANR CHOC] • Finite element computations [ANR DISCOGRID] • Cryptographic S-Box selection [ANR SAFESCALE] • Probabilistic inference engine [ProBayes] • Distributed implementation of CAPE-Open standardfor process engineering computations [IFP] Cluster implementation of compliant runtime RSI/Indiss-RT

  15. communication Overheads redundancy synchronization 3. Adaptive algorithms Objective: To design&analyze algorithms that may obliviously adapt their execution under the control of the scheduling Parallel algo. P=100 Parallel algo. P=+∞ Sequential algorithm Parallel algo. P=2

  16. 3. Adaptive algorithms • heterogeneous resources, variable speeds: oblivious algorithms.=> work-stealing to self-tune granularity • But: work Wpincreases when depth Dpdecreases : • multi-objective problem • Adaptive coupling of algorithms [Europar’06, PASCO’07, PDP’08] • Relaxation sequential / work-stealing

  17. Bridge = AWS scheduling Film-grain application (streaming) Ex: HD-TV Noise reduction 3. Adaptive algorithms • Cache&processor oblivious stream computations [ PDP’07] • AWS: adaptive work-stealing for MPSoCs • Use case: HDTV on MPSoCs [ST Microelectronics film grain tech.] MPSoC Application description potential parallelism [AWS api] Architecture description [SPIRIT / IP-XACT Simulator] • Near optimal experimental results [PDP08]

  18. 3. Adaptive algorithms • Adaptive 3D-vision [VR’07] • Realtime constraint : 30 frames per sec • Adaptive heterogeneous coupling with Kaapi: CPU+GPU [EGPV’07] 1 .. 16 CPUs

  19. 4. Interactivity • Motivation: parallelism for interactive applications • Challenging application: multi-cameras, multi-cpus, multi-GPUs, multi-display • Grimage platform [2005…] • Positioning: other platforms: • [Blue-C, ETH Zurich, 2005 …],[Tele-Immersion@UCBerkeley 2005] • Specificity: collaboration with • EVASION(realtime physics simulation) • PERCEPTION (computer vision) • - 20 dual-core • - 15 cameras • - 16 projectors

  20. 4. Interactivity • Middleware dedicated to interactive applications • Distributed components, moldable • Parallel code coupling • Static coarse grain mapping High resolution HDTV player [CPUs + GPUs]

  21. MPSoC Grids Cluster SMP multi-core GPU Summary of 2005-2007 Multi-objective Adaptive Performance • Applications are time-consuming but essential to validate scientific approach AWS

  22. Some facts • Publications • Contracts (k€) • Softwares: • Kaapi, FlowVR, Taktuk, AWS • 127 in 3 year , 19 rank #1 - 17 Int. Journal (SIAM J.Comp, IEEE TC, TPDS, TDSC, EJOR, FOCS, …) • - 59 Int. Conf (SPAA, IPDPS, CCGrid VR, VIS, Europar, ICCS, Siggraph…) • Industry partners: STM, IFP, CEA, Bull, C-S, DCN, .. • 2 ARC, 5 ANRs • 1 pole MINALOGIC • 2 Europe, 1 Ass. team

  23. Highlights • 1st prize Plugtest 2007 Nqueens challenge • SIGGRAPH 2007 Emerging Technologies Demo(~4000 visitors) • Valorization: parallel 3D modeling in start-up 4DViews co-funded by former PhD C Menier [joined MOAIS/PERCEPTION] • Dec. 2006: special Jury prize • Nov. 2007: 1st prize • Nqueens(23) in 2107s with 3654 cores

  24. Research directions 2008-2012[1/3] To push the interactions to large scale • Heterogeneous computing • Complex memory hierarchy • Provable performances vs adversary • Game theory

  25. Research directions 2008-2012[2/3] • Scheduling : multi-objective • Large systems, many users, various objectives : equity / fairness • Extra global objective to non-cooperative strategies • Runtime for HPC on demand • Monitoring and control: testbed for processors with changing speed • Work-stealing based runtime extended to complex memory hierarchy • Dependable computing on global computing platforms [ADT ALLADIN]

  26. Research directions [3/3] • Adaptive algorithms • Large data sets, out-of-core issues • Framework / high level library • High performance interactive computing • Application monitoring and control • Interactive resolution of complex problem (scheduling) • Grimage: explore new 3D interactions [PERCEPTION] • Parallelism for adaptive interactive performance • Kaapi partitioning+work-stealing to balance load between heterogeneous resources (CPUs / GPUs )

  27. Summary “To provide parallel programming schemes, interfaces and tools for high performance interactive computing that enable to achieve provable performances on distributed parallel architectures, from multi-processors system-on-chip to lightweight grids and global computing platforms.” SIGGRAPH’07 [MOAIS - PERCEPTION - EVASION]

More Related