Presentation is loading. Please wait.

Presentation is loading. Please wait.

1 678 Topics Covered (1) Part A: Foundation Socket Programming Thread Programming Elements of Parallel Computing Part B: Cluster Computing Elements of.

Similar presentations


Presentation on theme: "1 678 Topics Covered (1) Part A: Foundation Socket Programming Thread Programming Elements of Parallel Computing Part B: Cluster Computing Elements of."— Presentation transcript:

1 1 678 Topics Covered (1) Part A: Foundation Socket Programming Thread Programming Elements of Parallel Computing Part B: Cluster Computing Elements of Cluster Computing Cluster Architecture and Components Single System Image: Concepts and Levels Parallel Programming Models and Paradigms MPI Programming

2 2 678 Topics Covered (2) Part C: Grid and Cloud Computing 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

3 3 Exposure to Industrial Developments Unique “ feature ” of this subject: CLOUDS Lab supported speakers Industry Speakers (one or more) Microsoft (HPC Specialist) Sun (Senior Director of Grid Computing) Amazon (Architect, Amazon Cloud Computing) Microsoft HPC Server Cluster Computing Commercial Applications Sun Grid Engine (SGE) Seamless scaling from Clusters to Grids Story on idea  successful commercialisation Amazon EC2/S3 Computing as utility (pay-as-you-go services for IT) AWS Marketplace

4 4 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: MPI Programming Coordination of multiple processes and load balancing Performance Evaluation on real Clusters

5 5 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: 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)

6 Quick Revision

7 7 678 Topics Covered (1) Part A: Foundation Socket Programming Thread Programming Elements of Parallel Computing

8 8 Java Sockets ServerSocket(1254) Socket(“128.250.25.158”, 1254) Output/write stream Input/read stream It can be host_name like “mandroo.cs.mu.oz.au” Client server

9 9 PPPPPP  Microkernel Multi-Processor Computing System Threads Interface Hardware Operating System Process Processor Thread P P Applications Parallel Computing Elements Programming paradigms

10 10 678 Topics Covered (1) Part B: Cluster Computing Elements of Cluster Computing Cluster Architecture and Components Single System Image: Concepts and Levels Parallel Programming Models and Paradigms MPI Programming

11 11 Cluster Architecture Sequential Applications Parallel Applications Parallel Programming Environment Cluster Middleware (Single System Image and Availability Infrastructure) Cluster Interconnection Network/Switch PC/Workstation Network Interface Hardware Communications Software PC/Workstation Network Interface Hardware Communications Software PC/Workstation Network Interface Hardware Communications Software PC/Workstation Network Interface Hardware Communications Software Sequential Applications Parallel Applications

12 12 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. 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.

13 13 SSI Levels SSI levels of abstractions: Application and Subsystem LevelOperating System Kernel LevelHardware Level

14 14 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 Task i-l Task i Task i+1 func1 ( ) {.... } func1 ( ) {.... } func2 ( ) {.... } func2 ( ) {.... } func3 ( ) {.... } func3 ( ) {.... } a ( 0 ) =.. b ( 0 ) =.. a ( 0 ) =.. b ( 0 ) =.. a ( 1 )=.. b ( 1 )=.. a ( 1 )=.. b ( 1 )=.. a ( 2 )=.. b ( 2 )=.. a ( 2 )=.. b ( 2 )=.. + + x x Load PVM/MPI Threads Compilers CPU Levels of Parallelism

15 15 Methodical Design or Stages of Parallel Programs Partitioning 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. Communication Flow of information and coordination among tasks that are created in the portioning stage. Agglomeration 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 completion time is minimized and resource utilization is maximized. Even the cost of computation can be minimized based on QoS requirements.

16 16 678 Topics Covered (2) Part C: Grid and Cloud Computing 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)

17 17 Grid Resources and Scheduling 2100 Single CPU (Time Shared Allocation) SMP (Time Shared Allocation) Clusters (Space Shared Allocation) Grid Resource Broker User Application Grid Information Service Local Resource Manager

18 18 Core Middleware Gridbus User Console/Portal/Application Interface Grid Info Server Schedule Advisor Trading Manager Gridbus Farming Engine Record Keeper Grid Explorer GE GIS, NWS TM TS RM & TS Grid Dispatcher G G C U Globus enabled node. A L Data Catalog Data Node Unicore enabled node. $ $ $ App, T, $, Optimization Preference workload Gridbus Broker

19 19 Deadline (D) and Budget (B) Constrained Scheduling Algorithms AlgorithmExecution Time (D) Execution Cost (B) Compute Grid Data Grid Cost OptLimited by DMinimize Yes Cost-Time Opt Minimize if possible Minimize Yes Time OptMinimizeLimited by B Yes Conservative -Time Opt MinimizeLimited by B, jobs have guaranteed minimum budget Yes

20 20 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 … -Ubiquitous access -Reliability -Scalability -Autonomic -Dynamic discovery & composiability -QoS -SLA - … } + Paradigms Attributes/Capabilities ? -Trillion $ business - Who will own it?

21 21 SES (Subject Experience Survey) 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 :


Download ppt "1 678 Topics Covered (1) Part A: Foundation Socket Programming Thread Programming Elements of Parallel Computing Part B: Cluster Computing Elements of."

Similar presentations


Ads by Google