Cloud Computing Contents
Total Page:16
File Type:pdf, Size:1020Kb
Cloud Computing Contents 1 Cloud computing 1 1.1 Overview ............................................... 1 1.2 History of cloud computing ...................................... 1 1.2.1 Origin of the term ....................................... 1 1.2.2 The 1950s ........................................... 2 1.2.3 The 1990s ........................................... 2 1.3 Similar concepts ............................................ 2 1.4 Characteristics ............................................. 3 1.5 Service models ............................................ 4 1.5.1 Infrastructure as a service (IaaS) ............................... 5 1.5.2 Platform as a service (PaaS) ................................. 5 1.5.3 Software as a service (SaaS) ................................. 5 1.6 Cloud clients .............................................. 5 1.7 Deployment models .......................................... 6 1.7.1 Private cloud ......................................... 6 1.7.2 Public cloud .......................................... 6 1.7.3 Hybrid cloud ......................................... 6 1.7.4 Others ............................................. 7 1.8 Architecture .............................................. 7 1.8.1 Cloud engineering ....................................... 7 1.9 Security and privacy .......................................... 7 1.10 The future ............................................... 8 1.11 See also ................................................ 8 1.12 References ............................................... 8 1.13 External links ............................................. 11 2 Grid computing 12 2.1 Overview ............................................... 12 2.2 Comparison of grids and conventional supercomputers ........................ 12 2.3 Design considerations and variations ................................. 13 2.4 Market segmentation of the grid computing market .......................... 13 2.4.1 The provider side ....................................... 13 2.4.2 The user side ......................................... 14 i ii CONTENTS 2.5 CPU scavenging ............................................ 14 2.6 History ................................................. 14 2.7 Fastest virtual supercomputers ..................................... 14 2.8 Projects and applications ....................................... 14 2.8.1 Definitions .......................................... 15 2.9 See also ................................................ 16 2.9.1 Related concepts ....................................... 16 2.9.2 Alliances and organizations .................................. 16 2.9.3 Production grids ........................................ 16 2.9.4 International projects ..................................... 16 2.9.5 National projects ....................................... 16 2.9.6 Standards and APIs ...................................... 16 2.9.7 Software implementations and middleware .......................... 16 2.9.8 Monitoring frameworks .................................... 17 2.10 See also ................................................ 17 2.11 References ............................................... 17 2.11.1 Bibliography ......................................... 17 2.12 External links ............................................. 18 3 Computer cluster 19 3.1 Basic concepts ............................................. 19 3.2 History ................................................ 20 3.3 Attributes of clusters ......................................... 21 3.4 Benefits ................................................ 21 3.5 Design and Configuration ....................................... 21 3.6 Data sharing and communication ................................... 22 3.6.1 Data sharing .......................................... 22 3.6.2 Message passing and communication ............................. 22 3.7 Cluster management .......................................... 22 3.7.1 Task scheduling ........................................ 22 3.7.2 Node failure management ................................... 23 3.8 Software development and administration ............................... 23 3.8.1 Parallel programming ..................................... 23 3.8.2 Debugging and monitoring .................................. 23 3.9 Some implementations ........................................ 23 3.10 Other approaches ........................................... 24 3.11 See also ................................................ 24 3.12 References .............................................. 24 3.13 Further reading ............................................ 25 3.14 External links ............................................. 25 4 Supercomputer 26 CONTENTS iii 4.1 History ................................................. 26 4.2 Hardware and architecture ....................................... 27 4.2.1 Energy usage and heat management .............................. 28 4.3 Software and system management ................................... 29 4.3.1 Operating systems ....................................... 29 4.3.2 Software tools and message passing .............................. 29 4.4 Distributed supercomputing ...................................... 30 4.4.1 Opportunistic approaches ................................... 30 4.4.2 Quasi-opportunistic approaches ................................ 30 4.5 Performance measurement ...................................... 30 4.5.1 Capability vs capacity ..................................... 30 4.5.2 Performance metrics ..................................... 30 4.5.3 The TOP500 list ....................................... 31 4.6 Largest Supercomputer Vendors according to the total Rmax (GFLOPS) operated .......... 31 4.7 Applications of supercomputers .................................... 31 4.8 Research and development trends ................................... 32 4.9 See also ................................................ 32 4.10 Notes and references ......................................... 32 4.11 External links ............................................. 35 5 Multi-core processor 36 5.1 Terminology .............................................. 37 5.2 Development .............................................. 37 5.2.1 Commercial incentives .................................... 37 5.2.2 Technical factors ....................................... 37 5.2.3 Advantages .......................................... 38 5.2.4 Disadvantages ......................................... 38 5.3 Hardware ............................................... 38 5.3.1 Trends ............................................. 38 5.3.2 Architecture .......................................... 39 5.4 Software effects ............................................ 39 5.4.1 Licensing ........................................... 40 5.5 Embedded applications ........................................ 40 5.6 Hardware examples .......................................... 40 5.6.1 Commercial .......................................... 40 5.6.2 Free .............................................. 42 5.6.3 Academic ........................................... 42 5.7 Benchmarks .............................................. 42 5.8 Notes ................................................. 42 5.9 See also ................................................ 43 5.10 References ............................................... 43 5.11 External links ............................................. 43 iv CONTENTS 6 Graphics processing unit 44 6.1 History ................................................. 44 6.1.1 1980s ............................................. 44 6.1.2 1990s ............................................. 45 6.1.3 2000 to 2006 ......................................... 46 6.1.4 2006 to present ........................................ 46 6.1.5 GPU companies ........................................ 46 6.2 Computational functions ........................................ 47 6.2.1 GPU accelerated video decoding ............................... 47 6.3 GPU forms .............................................. 47 6.3.1 Dedicated graphics cards ................................... 47 6.3.2 Integrated graphics solutions ................................. 48 6.3.3 Hybrid solutions ........................................ 48 6.3.4 Stream Processing and General Purpose GPUs (GPGPU) .................. 49 6.3.5 External GPU (eGPU) .................................... 49 6.4 Sales .................................................. 49 6.5 See also ................................................ 50 6.5.1 Hardware ........................................... 50 6.5.2 APIs .............................................. 50 6.5.3 Applications .......................................... 50 6.6 References ............................................... 50 6.7 External links ............................................. 51 7 OpenMP 52 7.1 Introduction .............................................. 52 7.2 History ................................................. 52 7.3 The core elements ........................................... 53 7.3.1 Thread creation ........................................ 53 7.3.2 Work-sharing constructs ................................... 53 7.3.3 OpenMP clauses ....................................... 53 7.3.4 User-level runtime routines .................................. 55 7.3.5 Environment variables .................................... 55 7.4 Sample programs ........................................... 55 7.4.1