Survey
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
678 Topics Covered (1) Part A: Foundation Part B: Cluster Computing 1 Socket Programming Thread Programming Elements of Parallel Computing Elements of Cluster Computing Cluster Architecture and Components Single System Image: Concepts and Levels Parallel Programming Models and Paradigms MPI Programming 678 Topics Covered (2) Part C: Grid and Cloud Computing 2 Elements of Grid Computing Grid Resource Management and Grid Economy Enterprise Grids and the Aneka Middleware Nimrod-G Grid Resource Broker Economic Scheduling Algorithms Gridbus Broker for Data-Intensive Computing Globus Toolkit Cloud Computing and Aneka Exposure to Industrial Developments Unique “feature” of this subject: Industry Speakers (one or more) Seamless scaling from Clusters to Grids Story on idea successful commercialisation Amazon EC2/S3 3 Cluster Computing Commercial Applications Sun Grid Engine (SGE) Microsoft (HPC Specialist) Sun (Senior Director of Grid Computing) Amazon (Architect, Amazon Cloud Computing) Microsoft HPC Server CLOUDS Lab supported speakers Computing as utility (pay-as-you-go services for IT) AWS Marketplace 678 Practical Skills Acquired (1) Part A: Foundation Socket Programming Thread Programming How to write multi-threaded servers and clients Part B: Cluster Computing Parallel Programming: 4 MPI Programming Coordination of multiple processes and load balancing Performance Evaluation on real Clusters 678 Practical Skills Acquired (2) Part C: Grid/Cloud Computing Report Writing Team-based projects Medium scale software development Developing skills in “Grid” computing technology: 5 Writing a simple Grid resource management system Client with coordination ability QoS-based scheduling User-Interface design for network applications Cloud Computing (Concepts and Industry Trends) Quick Revision 678 Topics Covered (1) Part A: Foundation 7 Socket Programming Thread Programming Elements of Parallel Computing Java Sockets ServerSocket(1254) server Output/write stream Client Input/read stream 8 Socket(“128.250.25.158”, 1254) It can be host_name like “mandroo.cs.mu.oz.au” Parallel Computing Elements Applications Programming paradigms Threads Interface Operating System Microkernel Multi-Processor Computing System P P P P Processor 9 P Thread P .. P Process Hardware 678 Topics Covered (1) Part B: Cluster Computing 10 Elements of Cluster Computing Cluster Architecture and Components Single System Image: Concepts and Levels Parallel Programming Models and Paradigms MPI Programming Cluster Architecture Parallel Applications Parallel Applications Parallel Applications Sequential Applications Sequential Applications Sequential Applications Parallel Programming Environment Cluster Middleware (Single System Image and Availability Infrastructure) PC/Workstation PC/Workstation PC/Workstation PC/Workstation Communications Communications Communications Communications Software Software Software Software Network Interface Hardware Network Interface Hardware Network Interface Hardware Network Interface Hardware Cluster Interconnection Network/Switch 11 What is Single System Image (SSI)? SSI is the illusion, created by software or hardware, that presents a collection of computing resources as one, more whole resource. 12 In other words, it the property of a system that hides the heterogeneous and distributed nature of the available resources and presents them to users and applications as a single unified computing resource. SSI makes the cluster appear like a single machine to the user, to applications, and to the network. SSI Levels SSI levels of abstractions: Application and Subsystem Level Operating System Kernel Level Hardware Level 13 Levels of Parallelism PVM/MPI Threads Compilers CPU 14 Task i-l func1 ( ) { .... .... } a ( 0 ) =.. b ( 0 ) =.. + Task i func2 ( ) { .... .... } a ( 1 )=.. b ( 1 )=.. x Task i+1 func3 ( ) { .... .... } a ( 2 )=.. b ( 2 )=.. Load Code-Granularity Code Item Large grain (task level) Program Medium grain (control level) Function (thread) Fine grain (data level) Loop (Compiler) Very fine grain (multiple issue) With hardware Methodical Design or Stages of Parallel Programs Partitioning Communication 15 Flow of information and coordination among tasks that are created in the portioning stage. Agglomeration Decomposition of computational activities and the data into small tasks – there exist number of paradigms – e.g. master worker, pipeline, divide and conquer, SPMD, and speculation. Tasks and communication structure created in the above stages are evaluated for performance and implementation cost. Tasks may be grouped into larger tasks to improve communication. Individual communications can be bundled. Mapping / Scheduling Assigning tasks to processors such that job 678 Topics Covered (2) Part C: Grid and Cloud Computing 16 Elements of Grid Computing Grid Resource Management and Grid Economy Enterprise Grids and the Aneka Middleware Nimrod-G Grid Resource Broker Economic Scheduling Algorithms Gridbus Broker for Data-Intensive Computing Globus Toolkit Cloud Computing (Concepts and Industry Trends) Grid Resources and Scheduling User Application Grid Resource Broker Local Resource Manager Single CPU (Time Shared Allocation) 17 Local Resource Manager SMP (Time Shared Allocation) Grid Information Service Local Resource Manager 2100 2100 2100 2100 2100 2100 2100 2100 Clusters (Space Shared Allocation) workload Gridbus User Console/Portal/Application Interface App, T, $, Optimization Preference Gridbus Broker Gridbus Farming Engine Schedule Advisor Trading Manager Record Keeper Grid Dispatcher Core Middleware Grid Explorer TM $ TS GE GIS, NWS Grid Info Server RM & TS $ $ U Data Node Data Catalog C G Globus enabled node. 18 G L Unicore enabled node. A Deadline (D) and Budget (B) Constrained Scheduling Algorithms Algorithm Execution Execution Compute Time (D) Cost (B) Grid Cost Opt Limited by D Minimize Yes Cost-Time Opt Minimize if possible Minimize Yes Time Opt Minimize Limited by B Yes Conservative -Time Opt Minimize Limited by B, jobs have guaranteed minimum budget Yes 19 Data Grid Yes Yes Convergence of Paradigms/Communities Realisation of Leonard’s “computer utilities” Vision Web Data Centres Utility Computing Service Computing Grid Computing P2P Computing Cloud Computing Market-Oriented Computing … Paradigms 20 + -Ubiquitous access -Reliability -Scalability -Autonomic -Dynamic discovery & composiability -QoS -SLA -… -Trillion $ business - Who will own it? Attributes/Capabilities SES (Subject Experience Survey) 21 Q4, subject is well taught - can be interpreted as: I feel good about what I learnt, genuine effort by teachers 5. Strongly agree : 4. Agree : 3. Neutral : 2. Disagree : 1. Strongly disagree :