580 likes | 682 Views
www.devoxx.com. Clouds. 3 Speakers/Demos. Florin Alexandru Bratu (Romania). Denis Caromel (France, Nice). Franca Perrina (Italy). www.devoxx.com. 3 Strong Faiths. Parallel Computing will make it mainstream with Java A need for a unified Parallel Abstraction:
E N D
Denis Caromel www.devoxx.com
Clouds Denis Caromel
3 Speakers/Demos Florin Alexandru Bratu (Romania) Denis Caromel (France, Nice) Franca Perrina (Italy) Denis Caromel www.devoxx.com
3 Strong Faiths • Parallel Computing will make it • mainstream with Java • A need for a unified Parallel Abstraction: • Multi-Core + Distributed • 3. Java will make it possible to connect • Enterprise Grids and Clouds Denis Caromel
Effective SOA + GRIDs with • Background: INRIA, OASIS, ActiveEon • Programming, Optimizing • 3. Scheduling • 4. SOA:WS, WSDL, BPEL (Franca Perrina) • 5. Enterprise Grids, Clouds: Amazon EC2 • 6. Java EE EJB (Florin Alexandru Bratu) Agenda Denis Caromel
1. Background Denis Caromel
Computer Science and Control 8 Centers all over France Workforce: 3 800 Strong in standardization committees: IETF, W3C, ETSI, … Strong Industrial Partnerships Foster company foundation: 90 startups so far - Ilog (Nasdaq, Euronext) - … - ActiveEon OASIS Team & INRIA • A joint team between: INRIA, Nice Univ. CNRS • Now about 40 persons • 2004: First ProActive User Group • 2008: 5th one, Acad./Indus. User Presentations • ProActive 4.0.1: Distributed and Parallel: • From Multi-cores to Enterprise GRIDs Denis Caromel
Startup Company Born of INRIA • Co-developing, Providing support for Open Source ProActive Parallel Suite • Worldwide Customers (EU, Boston USA, etc.) Denis Caromel
2. Programming Optimizing Parallel Acceleration Toolkit in Java:Parallelism: Multi-Core+Distributed Used in production by industry Denis Caromel
ProActive Parallel Suite Denis Caromel
ProActive Parallel Suite Denis Caromel
Distributed and ParallelActive Objects 15 Denis Caromel
ProActive : Active objects JVM A A WBN! A ag =newActive (“A”, […], VirtualNode) V v1 = ag.foo (param); V v2 = ag.bar (param); ... v1.bar(); //Wait-By-Necessity JVM ag v2 v1 V Wait-By-Necessity is a Dataflow Synchronization Java Object Active Object Req. Queue Future Object Proxy Thread Request 16 Denis Caromel
Standard system at Runtime:No Sharing NoC: Network On Chip Proofs of Determinism 17 Denis Caromel
TYPED ASYNCHRONOUS GROUPS 18 Denis Caromel
Creating AO and Groups A V A ag =newActiveGroup (“A”, […], VirtualNode) V v = ag.foo(param); ... v.bar(); //Wait-by-necessity JVM Group, Type, and Asynchrony are crucial for Composition Typed Group Java or Active Object 19 Denis Caromel
Broadcast and Scatter ag JVM c3 c3 c3 c3 c3 c3 c3 c1 c1 c1 c1 c1 c1 c1 c2 c2 c2 c2 c2 c2 c2 JVM JVM s s JVM • Broadcast is the default behavior • Use a group as parameter, Scattered depends on rankings cg ag.bar(cg); // broadcast cg ProActive.setScatterGroup(cg); ag.bar(cg); // scatter cg 20 Denis Caromel
Optimizing 21 Denis Caromel
IC2D Denis Caromel
ChartIt Denis Caromel
Pies for Analysis and Optimization Denis Caromel
Video 1: IC2D OptimizingMonitoring, Debugging, Optimizing Denis Caromel
3. Scheduling 28 Denis Caromel
Scheduler and Resource Manager:User Interface Denis Caromel
Scheduler: User Interface Denis Caromel
Video 2:Scheduler, Resource Manager Denis Caromel
4. SOA Integration:Web Services, BPEL Workflow Franca Perrina OASIS Team - INRIA Denis Caromel
Active Objects as Web Services JVM • Why ? • Access Active Objects from any language • How ? • HTTP Server • SOAP Engine (Axis) • Usage: Web Services ProActive.exposeAsWebService(); ProActive.unExposeAsWebService(); Web Service Client Denis Caromel
ProActive + Services + WorkflowsPrinciples:3 kinds of Parallel Services • 3. Domain Specific Parallel Services • (e.g. Monte Carlo Pricing) • 2. Typical Parallel Computing Services • (Parameter Sweeping, D&C, …) • Basic Job Scheduling Services • (parallel execution on the Grid) Denis Caromel
3. Domain Specific Parallel Service Other Basic Service 2. Parameter Sweeping Service Other Operational Service High level Business Process Domain Specific Parallel Service 1. Job Scheduling Service 2. Divide & Conquer Service 3 kinds of Parallel Services • 3. Domain Specific Parallel • Services: • providing business • functionalities executed in • parallel • 2. Parallelization services: • typical parallel computing • patterns (Parameter • Sweeping, D&C, …) • 1. Job Scheduling service: • Schedule and Run jobs in • parallel on the Grid. … … … Operational Services Parallel Services Grid Denis Caromel
PA Scheduler & PA Resource Manager A sample pattern: Parameter Sweeping Process using parameter sweeping service O1 O2 … On I1 I2 … In Param Sweeping Service parameter sweeping I1 I2 … In O1 O2 … On All the running instances of the Exec logic X are executed on the grid as a whole Parameter Sweeping Service, customized with an Exec logic X Exec Logic … Denis Caromel
Demo SOA Integration:Web Services, BPEL Workflow Denis Caromel
5. Enterprise Grids, Clouds: Standards &Amazon EC2 39 Denis Caromel
Large Equipment Internet Internet Internet Internet Servlets EJBs Databases Job management for embarrassingly parallel application (e.g. SETI) Parallel Machine Clusters Deploy on Various Kinds of Infrastructures Denis Caromel
GCM Fractal StandardizationFractal BasedGrid Component Model • Overall, the standardization is supported by industrials: • BT, FT-Orange, Nokia-Siemens, Telefonica, • NEC, Alcatel-Lucent, Huawei … Denis Caromel
Protocols and Scheduler inGCM Deployment Standard • Protocols: • Rsh, ssh • Oarsh, Gsissh • Scheduler, and Grids: • GroupSSH, GroupRSH, GroupOARSH • ARC (NorduGrid), CGSP China Grid, EEGE gLITE, • Fura/InnerGrid (GridSystem Inc.) • GLOBUS, GridBus • IBM Load Leveler, LSF, Microsoft CCS (Windows HPC Server 2008) • Sun Grid Engine, OAR, PBS / Torque, PRUN • Soon available in stable release: • Java EE • Amazon EC2 Denis Caromel
6. J2EE Integration Florin Alexandru Bratu OASIS Team - INRIA Denis Caromel
J2EE Integration with Parallelism + Grids/Clouds Performing Grid & Cloud Computing From & In an Application Servers Delegating heavy computations outsides J2EE Applications Using Deployed J2EE Nodes as Computational Resources Denis Caromel
ProActive – J2EE Integration (1) • Delegating heavy computations outsides J2EE Applications Denis Caromel
ProActive – J2EE Integration (2) 2. Using Deployed J2EE Nodes as Computational Resources • Objective • Being able to deploy active objects inside the JVMs of application servers • Implementation • Based on a Sun standard – Java Connector Architecture JSR112 • Deployment module: resource adapter (RAR) • Works with all J2EE-compliant Application Servers Denis Caromel
Grids & Clouds:Amazon EC2 Deployment Denis Caromel
Big Picture + Clouds Denis Caromel
Clouds: ProActive Amazon EC2 Deployment • Principles & Achievements: • ProActive Amazon Images (AMI) on EC2 • So far up to 128 EC2 Instances • (Indeed the maximum on the EC2 platform, … ready to try 4 000 AMI) • Seamless Deployment: • no application change, no scripting, no pain • Open the road to : In house Enterprise Cluster and Grid + Scale out on EC2 Denis Caromel