Grid Computing : a Practical Guide to Technology and Applications

Total Page:16

File Type:pdf, Size:1020Kb

Grid Computing : a Practical Guide to Technology and Applications GRID COMPUTING : A PRACTICAL GUIDE TO TECHNOLOGY AND APPLICATIONS AHMAR ABBAS CHARLES R I V E R M E D I A a-." CHARLES RIVER MEDIA, INC. Hingham, Massachusetts Contents Preface xix Acknowledgments xxiii 1 IT Infrastructure Evolution 1 1.1 Introduction 2 1.2 Microprocessor Technology 2 1.3 Optical Networking Technology 3 1.4 Storage Technology 6 1.5 Wireless Technology 7 1.6 Sensor Technology 9 1.6.1 Fiber Optic Sensors 9 1 .6.2 Wireless Sensors 10 1.7 Global Internet Infrastructure 11 1.8 World Wide Web and Web Services 14 1.9 Open-Source Movement 16 1.10 Conclusion 16 2 Productivity Paradox and Information Technology 19 2.1 Introduction 20 2.2 Productivity Paradox 20 2.3 Return on Technology Investment 20 2.4 Multi-Story Bureaucracy 21 2.5 Information Technology Straightjacket 22 2.6 Consolidation 25 2.6.1 Server Consolidation 25 2.6.2 Consolidating Applications 26 2.6.3 Consolidating Storage 27 rr vu Viii contents 2.7 Outsourcing 27 2.8 Toward a Real-Time Enterprise-Operational Excellence 28 2.9 Conclusion 29 3 Business Value of Grid Computing 31 3.1 Introduction 32 3.2 Grid Computing Business Value Analysis 33 3 .2.1 Grid Computing Value Element #1: Leveraging Existing Hardware Investments and Resources 33 3.2.2 Grid Computing Value Element #2: Reducing Operational Expenses 34 3.2.3 Grid Computing Value Element #3 : Creating a Scalable and Flexible Enterprise IT Infrastructure 35 3.2.4 Grid Computing Value Element #4: Accelerating Product Development, Improving Time to Market, and Raising Customer Satisfaction 35 3.2.5 Grid Computing Value Element #5: Increasing Productivity 36 3.3 Risk Analysis 37 3.3.1 Lock-in 38 3.3.2 Switching Costs 38 3.3.3 Project Implementation Failure 38 3.4 Grid Marketplace 38 3.4.1 Grid Taxonomy 39 3.4.2 Fabric 39 3.4.3 Middleware 40 3.4.4 Serviceware 40 3.4.5 Applications 40 3.4.6 Grid Service Providers 40 3.4.7 Grid Applications Service Providers 41 3.4.8 Grid Consultants 41 3.5 Conclusion 41 4 Grid Computing Technology-An overview 43 4.1 Introduction 44 4.2 History 44 Contents ix 4.3 High-Performance Computing 46 4.4 Cluster Computing 47 4.5 Peer-to-Peer Computing 48 4.6 Internet Computing 49 4.7 Grid Computing 51 4.7.1 Peer-to-Peer Networks and Grid Computing 52 4.7.2 Cluster Computing and Grid Computing 53 4.7.3 Internet Computing and Grid Computing 53 4.8 Grid Computing Model 53 4.9 Grid Protocols 57 4.9.1 Security: Grid Security Infrastructure 57 4.9.2 Resource Management: Grid Resource Allocation Management Protocol 59 4.9.3 Data Transfer: Grid File Transfer Protocol 60 4.9.4 Information Services: Grid Information Services 60 4.10 Globus Toolkit 60 4.11 Open Grid Services Architecture 61 4.12 Global Grid Forum 62 4.13 Types of Grids 64 4.13.1 Departmental Grids 64 4.13.2 Enterprise Grids 65 4.13.3 Extraprise Grids 65 4.13.4 Global Grids 66 4.13.5 Compute Grids 66 4.13.6 Data Grids 67 4.13.7 Utility Grids 67 4.14 Grid Networks-Will There Be Such a Thing as "The Gridnet"? 67 4.14.1 Grid Network Peering Points 68 4.15 Grid Applications Characteristics 69 4.16 Application Integration 70 4.17 Grid Computing and Public Policy 72 4.17.1 Sleeper Programs 72 4.17.2 National Security 72 X Contents 4.17.3 Philanthropic Computing 72 4.18 Conclusion 73 5 Desktop Grids 75 5.1 Introduction 76 5.2 Background 76 5 .2.1 Cause Computing and the Internet 76 5.2.2 Distributed Computing in the Enterprise 77 5.3 Desktop Grids Defined 79 5.4 The Desktop Grid Value Proposition 80 5.5 Desktop Grid Challenges 81 5.6 Desktop Grid Technology-Key Elements to Evaluate 82 5.6.1 Security 82 5.6.2 Unobtrusiveness 82 5.6.3 Openness/Ease ofApplication Integration 83 5.6.4 Robustness 83 5.6.5 Scalability 83 5 .6.6 Central Manageability 83 5.6.7 Key Technology Elements-Checklists 84 5.6.8 Key Technology Elements-Summary 85 5.7 Desktop Grid Suitability-Key Areas for Exploration 86 5.7.1 Applications 86 5.7.2 Computing Environment 89 5 .7.3 Culture 90 5.8 The Grid Server-Additional Functionality to Consider 91 5.9 Role ofDesktop Grids in an Enterprise Computing Infrastructure 92 5.9.1 Departmental Grids 92 5.9.2 Campus Grids 92 5.9.3 Web Services and Beyond 93 5.10 Practical Uses ofDesktop Grids-Real-World Examples 94 5.10.1 Example: Risk Management for Financial Derivatives 95 5.10.2 Example: Molecular Docking for Drug Discovery 95 5.10.3 Example: Architectural Rendering 96 5 .11 Conclusion 97 Contents xi 6 Cluster Grids 99 6.1 Introduction 100 6.2 Clusters 101 6.2.1 Single System Image 102 6.2.2 Single System Environment 105 6.3 Industry Examples 107 6.3.1 Electronic Design Automation (EDA) 108 6.3.2 Bioinformatics 111 6.3.3 Industrial Manufacturing 112 6.4 Cluster Grids 114 6.5 Conclusion 116 7 HPC Grids 119 7.1 Introduction 120 7.2 Five Steps to Scientific Insight 121 7.3 Applications and Architectures 122 7.4 HPCApplication Development Environment 126 7.5 Production HPC Reinvented 128 7.6 HPC Grids 131 7.7 Conclusion 133 Acknowledgements 133 8 Data Grids 135 8 .1 Introduction 136 8.2 Data Grids 138 8.3 Alternatives to Data Grids 139 8.3.1 Network File System (NFS) 139 8.3.2 File Transfer Protocol (FTP) 140 8.3.3 NFS over IPSec 141 8.3.4 Secure Copy-scp/sftp 142 8.3.5 De-Militarized Zone (DMZ) 143 8.3.6 GridFTP 143 8.3.7 Andrew File System (AFS) 144 Xli contents 8.4 Avaki Data Grid 145 8.4.1 Accessing the Data Grid 148 8.4.2 Managing the Data Grid 150 8.5 Data Grid Architecture 153 8.5.1 Grid Servers 153 8.5 .2 Share Servers 154 8.5.3 Data Grid Access Servers (DGAS) 155 8.5.4 Proxy Servers 156 8.5 .5 Failover Servers (Secondary Grid Domain Controllers) 156 8.6 Conclusion 157 Acknowledgements 157 9 The Open Grid Services Architecture 159 9.1 Introduction 160 9.2 An Analogy for OGSA 161 9.3 The Evolution to OGSA 163 9.3.1 Grid Computing 163 9.3.2 Web Services 164 9.3.3 Convergence 165 9.4 OGSA Overview 166 9.4.1 The OGSA Platform 167 9.4.2 OGSI 168 9.4.3 OGSA Platform Interfaces 175 9.4.4 OGSA Platform Models 178 9.5 Building on the OGSA Platform 179 9.5.1 WS-Agreement 180 9.5.2 Data Access and Integration Services (DAIS) 181 9.6 Implementing OGSA-Based Grids 183 9.6.1 The Globus Toolkit 3 183 9.6.2 GCSF 185 9.7 Conclusion 186 Contents X111 10 Creating and Managing Grid Services 189 10.1. Introduction 190 10.2. Services and the Grid 190 10.3 Converting Existing Software 196 10.4 Service Discovery 198 10.5 Operational Requirements 199 10.6 Tools and Toolkits 201 10.6.1 Globus Toollcit Grid Information Service 201 10.6.2 Accessing Grid Information 203 10.6.3 Performance Issues with MDS 206 10.6.4 Other Information Services and Providers 206 10.6.5 Future 207 10.7 Support in UDDI 207 10.8 UDDI and OGSA 209 10.9 UDDIe: UDDI Extensions and Implementation 210 10.10 Uses 218 10.11 Quality ofService Management 221 10.12 Conclusion 222 Download 223 Acknowledgements 223 11 Desktop Supercomputing : Native Programming for Grids 225 11 .1 Introduction 226 11 .2 Historical Background-Parallel Computing 226 11.2.1 MIMD Computers 227 11 .3 Parallel Programming Paradigms 230 11 .4 Problems of Current Parallel Programming Paradigms 233 11 .5 Desktop Supercomputing : Solving the Parallel Programming Problem 234 11 .6 Desktop Supercomputing Programming Paradigm 234 11 .7 Parallel Programming in CxC 235 11.8 Parallelizing Existing Applications 237 11 .9 Conclusion 237 XIV contents 12 Grid-Enabling Software Applications 239 12.1 Introduction 240 12.2 Grid Computing: Discontinuous Innovation or Massive Yawn? 240 12.3 The Needs of Grid Users 241 12.4 Grid Deployment Criteria 242 12.5 Methods ofGrid Deployment 244 12.6 When to Grid-Enable Software 245 12.7 Requirements for Grid-Enabling Software 247 12.8 Grid Programming Tools and Expertise 247 12.9 The Process of Grid-Enabling Software Applications 249 12.9.1 Analysis 249 12.9.2 Application Modifications 250 12.10 Grid-Enabling a Mainstream Software Application: An Example 252 12.10.1 Video Encoding 253 12.10.2 The Need for Speed 253 12.10.3 Current Solutions 254 12.10.4 Grid Deployment of Video Encoding 255 12.10.5 Requirements for Broad Marketplace Adoption 255 12.10.6 Overview ofMPEG 4 Encoder 256 12.10.7 Overview of GridIron XLR8 256 12.10.8 Distributed Computing Strategy 257 12.10.9 Implementation 258 12.10.10 Results 260 12.10.11 Next Steps 262 12.10.12 Grid-Enabling Video Encoding Summary 262 12.11 Conclusion 264 13 Application integration 267 13 .1 Introduction 268 13.2 Application Classification 269 13 .2.1 Parallelism 269 13.2.2 Communications 271 Contents XV 13.2.3 Granularity 271 13.2.4 Dependency 271 13.3 Grid Requirements 271 13.3.1 Interfaces 271 13.3.2 Job Scheduling 272 13.3.3 Data Management 273 13.3.4 Remote Execution Environment 273 13.3.5 Security 273 13.3.6 Gang Scheduling 274 13.3.7 Checkpointing and Job Migration 275 13.3.8 Management 275 13.4 Integrating Applications with Middleware Platforms 276 13.4.1 Application Preparation Example 277 13.4.2 Issues in Application Integration 278 13.5 Conclusion 280 14 Grid-Enabling Network Services 281 14.1 Introduction 282 14.2 On Demand Optical Connection Services 283 14.3 Creating Grid-Enabled Network Services 284 14.4 Montague River Grid 285 14.5 Montague River Domain 286 14.6 Sample API 288 14.7 Deployment Example: End-to-End LightPath Management 292 14.8 Conclusion 293 15 Managing Grid Environments 295 15.1 Introduction 296 15.2 Managing Grids 296 15.2.1 Trust 297 15.2.2 Identity 297 15.2.3 Privacy 298 15.2.4 Authorization 299 xvii Contents 15.3 Management Reporting 301 15.3.1 Users 301 15.3.2 Resources 301 15.3 .3 Jobs 302 15 .3.4 Audit Support 302 15 .4 Monitoring 303 15.4.1 Types of Events 303 15.4.2 Notification
Recommended publications
  • Cluster, Grid and Cloud Computing: a Detailed Comparison
    The 6th International Conference on Computer Science & Education (ICCSE 2011) August 3-5, 2011. SuperStar Virgo, Singapore ThC 3.33 Cluster, Grid and Cloud Computing: A Detailed Comparison Naidila Sadashiv S. M Dilip Kumar Dept. of Computer Science and Engineering Dept. of Computer Science and Engineering Acharya Institute of Technology University Visvesvaraya College of Engineering (UVCE) Bangalore, India Bangalore, India [email protected] [email protected] Abstract—Cloud computing is rapidly growing as an alterna- with out any prior reservation and hence eliminates over- tive to conventional computing. However, it is based on models provisioning and improves resource utilization. like cluster computing, distributed computing, utility computing To the best of our knowledge, in the literature, only a few and grid computing in general. This paper presents an end-to- end comparison between Cluster Computing, Grid Computing comparisons have been appeared in the field of computing. and Cloud Computing, along with the challenges they face. This In this paper we bring out a complete comparison of the could help in better understanding these models and to know three computing models. Rest of the paper is organized as how they differ from its related concepts, all in one go. It also follows. The cluster computing, grid computing and cloud discusses the ongoing projects and different applications that use computing models are briefly explained in Section II. Issues these computing models as a platform for execution. An insight into some of the tools which can be used in the three computing and challenges related to these computing models are listed models to design and develop applications is given.
    [Show full text]
  • Grid Computing: What Is It, and Why Do I Care?*
    Grid Computing: What Is It, and Why Do I Care?* Ken MacInnis <[email protected]> * Or, “Mi caja es su caja!” (c) Ken MacInnis 2004 1 Outline Introduction and Motivation Examples Architecture, Components, Tools Lessons Learned and The Future Questions? (c) Ken MacInnis 2004 2 What is “grid computing”? Many different definitions: Utility computing Cycles for sale Distributed computing distributed.net RC5, SETI@Home High-performance resource sharing Clusters, storage, visualization, networking “We will probably see the spread of ‘computer utilities’, which, like present electric and telephone utilities, will service individual homes and offices across the country.” Len Kleinrock (1969) The word “grid” doesn’t equal Grid Computing: Sun Grid Engine is a mere scheduler! (c) Ken MacInnis 2004 3 Better definitions: Common protocols allowing large problems to be solved in a distributed multi-resource multi-user environment. “A computational grid is a hardware and software infrastructure that provides dependable, consistent, pervasive, and inexpensive access to high-end computational capabilities.” Kesselman & Foster (1998) “…coordinated resource sharing and problem solving in dynamic, multi- institutional virtual organizations.” Kesselman, Foster, Tuecke (2000) (c) Ken MacInnis 2004 4 New Challenges for Computing Grid computing evolved out of a need to share resources Flexible, ever-changing “virtual organizations” High-energy physics, astronomy, more Differing site policies with common needs Disparate computing needs
    [Show full text]
  • Cloud Computing Over Cluster, Grid Computing: a Comparative Analysis
    Journal of Grid and Distributed Computing Volume 1, Issue 1, 2011, pp-01-04 Available online at: http://www.bioinfo.in/contents.php?id=92 Cloud Computing Over Cluster, Grid Computing: a Comparative Analysis 1Indu Gandotra, 2Pawanesh Abrol, 3 Pooja Gupta, 3Rohit Uppal and 3Sandeep Singh 1Department of MCA, MIET, Jammu 2Department of Computer Science & IT, Jammu Univ, Jammu 3Department of MCA, MIET, Jammu e-mail: [email protected], [email protected], [email protected], [email protected], [email protected] Abstract—There are dozens of definitions for cloud Virtualization is a technology that enables sharing of computing and through each definition we can get the cloud resources. Cloud computing platform can become different idea about what a cloud computing exacting is? more flexible, extensible and reusable by adopting the Cloud computing is not a very new concept because it is concept of service oriented architecture [5].We will not connected to grid computing paradigm whose concept came need to unwrap the shrink wrapped software and install. into existence thirteen years ago. Cloud computing is not only related to Grid Computing but also to Utility computing The cloud is really very easier, just to install single as well as Cluster computing. Cloud computing is a software in the centralized facility and cover all the computing platform for sharing resources that include requirements of the company’s users [1]. software’s, business process, infrastructures and applications. Cloud computing also relies on the technology II. CLUSTER COMPUTING of virtualization. In this paper, we will discuss about Grid computing, Cluster computing and Cloud computing i.e.
    [Show full text]
  • “Grid Computing”
    VISHVESHWARAIAH TECHNOLOGICAL UNIVERSITY S.D.M COLLEGE OF ENGINEERING AND TECHNOLOGY A seminar report on “Grid Computing” Submitted by Nagaraj Baddi (2SD07CS402) 8th semester DEPARTMENT OF COMPUTER SCIENCE ENGINEERING 2009-10 1 VISHVESHWARAIAH TECHNOLOGICAL UNIVERSITY S.D.M COLLEGE OF ENGINEERING AND TECHNOLOGY DEPARTMENT OF COMPUTER SCIENCE ENGINEERING CERTIFICATE Certified that the seminar work entitled “Grid Computing” is a bonafide work presented by Mr. Nagaraj.M.Baddi, bearing USN 2SD07CS402 in a partial fulfillment for the award of degree of Bachelor of Engineering in Computer Science Engineering of the Vishveshwaraiah Technological University Belgaum, during the year 2009-10. The seminar report has been approved as it satisfies the academic requirements with respect to seminar work presented for the Bachelor of Engineering Degree. Staff in charge H.O.D CSE (S. L. DESHPANDE) (S. M. JOSHI) Name: Nagaraj M. Baddi USN: 2SD07CS402 2 INDEX 1. Introduction 4 2. History 5 3. How Grid Computing Works 6 4. Related technologies 8 4.1 Cluster computing 8 4.2 Peer-to-peer computing 9 4.3 Internet computing 9 5. Grid Computing Logical Levels 10 5.1 Cluster Grid 10 5.2 Campus Grid 10 5.3 Global Grid 10 6. Grid Architecture 11 6.1 Grid fabric 11 6.2 Core Grid middleware 12 6.3 User-level Grid middleware 12 6.4 Grid applications and portals. 13 7. Grid Applications 13 7.1 Distributed supercomputing 13 7.2 High-throughput computing 14 7.3 On-demand computing 14 7.4 Data-intensive computing 14 7.5 Collaborative computing 15 8. Difference: Grid Computing vs Cloud Computing 15 9.
    [Show full text]
  • Computer Systems Architecture
    CS 352H: Computer Systems Architecture Topic 14: Multicores, Multiprocessors, and Clusters University of Texas at Austin CS352H - Computer Systems Architecture Fall 2009 Don Fussell Introduction Goal: connecting multiple computers to get higher performance Multiprocessors Scalability, availability, power efficiency Job-level (process-level) parallelism High throughput for independent jobs Parallel processing program Single program run on multiple processors Multicore microprocessors Chips with multiple processors (cores) University of Texas at Austin CS352H - Computer Systems Architecture Fall 2009 Don Fussell 2 Hardware and Software Hardware Serial: e.g., Pentium 4 Parallel: e.g., quad-core Xeon e5345 Software Sequential: e.g., matrix multiplication Concurrent: e.g., operating system Sequential/concurrent software can run on serial/parallel hardware Challenge: making effective use of parallel hardware University of Texas at Austin CS352H - Computer Systems Architecture Fall 2009 Don Fussell 3 What We’ve Already Covered §2.11: Parallelism and Instructions Synchronization §3.6: Parallelism and Computer Arithmetic Associativity §4.10: Parallelism and Advanced Instruction-Level Parallelism §5.8: Parallelism and Memory Hierarchies Cache Coherence §6.9: Parallelism and I/O: Redundant Arrays of Inexpensive Disks University of Texas at Austin CS352H - Computer Systems Architecture Fall 2009 Don Fussell 4 Parallel Programming Parallel software is the problem Need to get significant performance improvement Otherwise, just use a faster uniprocessor,
    [Show full text]
  • Strategies for Managing Business Disruption Due to Grid Computing
    Strategies for managing business disruption due to Grid Computing by Vidyadhar Phalke Ph.D. Computer Science, Rutgers University, New Jersey, 1995 M.S. Computer Science, Rutgers University, New Jersey, 1992 B.Tech. Computer Science, Indian Institute of Technology, Delhi, 1989 Submitted to the MIT Sloan School of Management in Partial Fulfillment of the Requirements for the Degree of Master of Science in the Management of Technology at the Massachusetts Institute of Technology June 2003 © 2003 Vidyadhar Phalke All Rights Reserved The author hereby grants to MIT permission to reproduce and to distribute publicly paper and electronic copies of this thesis document in whole or in part Signature of Author: MIT Sloan School of Management 9 May 2003 Certified By: Starling D. Hunter III Theodore T. Miller Career Development Assistant Professor Thesis Supervisor Accepted By: David A. Weber Director, Management of Technology Program 2 Strategies for managing business disruption due to Grid Computing by Vidyadhar Phalke Submitted to the MIT Sloan School of Management on May 9 2003 in partial fulfillment of the requirements for the degree of Master of Science in the Management of Technology ABSTRACT In the technology centric businesses disruptive technologies displace incumbents time and again, sometimes to the extent that incumbents go bankrupt. In this thesis we would address the issue of what strategies are essential to prepare for and to manage disruptions for the affected businesses and industries. Specifically we will look at grid computing that is poised to disrupt (1) certain Enterprise IT departments, and (2) the software industry in the high-performance and web services space.
    [Show full text]
  • Taxonomy of Flynn (1966)
    Taxonomy of Flynn (1966). To describe these non-von Neumann or parallel architectures, a generally accepted taxonomy is that of Flynn (1966). The classification is based on the notion of two streams of information flow to a processor: instructions and data. These two streams can be either single or multiple, giving four classes of machines: 1. Single instruction single data (SISD) 2. Single instruction multiple data (SIMD) 3. Multiple instruction single data (MISD) 4. Multiple instruction multiple data (MIMD) Table 5.4 shows the four primary classes and some of the architectures that fit in those classes. Most of these architectures will be briefly discussed. 5.4.2.1 Single Instruction Single Data The SISD architectures encompass standard serial von Neumann architecture computers. In a sense, the SISD category is the base metric for Flynn’s taxonomy. 5.4.2.2 Single Instruction Multiple Data The SIMD computers are essentially array processors. This type of parallel computer architecture has n-processors, each executing the same instruction, but on different data streams. Often each element in the array can only communicate with its nearest neighbour. Computer architectures that are usually classified as SIMD are the systolic and wave-front array computers. In both types of processor, each processing element executes the same (and only) instruction, but on different data. Hence these architectures are SIMD. SIMD machines are widely used for such imaging computation as matrix arithmetic and convolution . 5.4.2.3 Multiple Instruction Single Data The MISD computer architecture lends itself naturally to those computations requiring an input to be subjected to several operations, each receiving the input in its original form.
    [Show full text]
  • Computer Architectures
    Parallel (High-Performance) Computer Architectures Tarek El-Ghazawi Department of Electrical and Computer Engineering The George Washington University Tarek El-Ghazawi, Introduction to High-Performance Computing slide 1 Introduction to Parallel Computing Systems Outline Definitions and Conceptual Classifications » Parallel Processing, MPP’s, and Related Terms » Flynn’s Classification of Computer Architectures Operational Models for Parallel Computers Interconnection Networks MPP’s Performance Tarek El-Ghazawi, Introduction to High-Performance Computing slide 2 Definitions and Conceptual Classification What is Parallel Processing? - A form of data processing which emphasizes the exploration and exploitation of inherent parallelism in the underlying problem. Other related terms » Massively Parallel Processors » Heterogeneous Processing – In the1990s, heterogeneous workstations from different processor vendors – Now, accelerators such as GPUs, FPGAs, Intel’s Xeon Phi, … » Grid computing » Cloud Computing Tarek El-Ghazawi, Introduction to High-Performance Computing slide 3 Definitions and Conceptual Classification Why Massively Parallel Processors (MPPs)? » Increase processing speed and memory allowing studies of problems with higher resolutions or bigger sizes » Provide a low cost alternative to using expensive processor and memory technologies (as in traditional vector machines) Tarek El-Ghazawi, Introduction to High-Performance Computing slide 4 Stored Program Computer The IAS machine was the first electronic computer developed, under
    [Show full text]
  • Difference Between Grid Computing Vs. Distributed Computing
    Difference between Grid Computing Vs. Distributed Computing Definition of Distributed Computing Distributed Computing is an environment in which a group of independent and geographically dispersed computer systems take part to solve a complex problem, each by solving a part of solution and then combining the result from all computers. These systems are loosely coupled systems coordinately working for a common goal. It can be defined as 1. A computing system in which services are provided by a pool of computers collaborating over a network. 2. A computing environment that may involve computers of differing architectures and data representation formats that share data and system resources. Distributed Computing, or the use of a computational cluster, is defined as the application of resources from multiple computers, networked in a single environment, to a single problem at the same time - usually to a scientific or technical problem that requires a great number of computer processing cycles or access to large amounts of data. Picture: The concept of distributed computing is simple -- pull together and employ all available resources to speed up computing. The key distinction between distributed computing and grid computing is mainly the way resources are managed. Distributed computing uses a centralized resource manager and all nodes cooperatively work together as a single unified resource or a system. Grid computingutilizes a structure where each node has its own resource manager and the system does not act as a single unit. Definition of Grid Computing The Basic idea between Grid Computing is to utilize the ideal CPU cycles and storage of millions of computer systems across a worldwide network function as a flexible, pervasive, and inexpensive accessible pool that could be harnessed by anyone who needs it, similar to the way power companies and their users share the electrical grid.
    [Show full text]
  • Introduction to GRID Computing and Overview of the European Data Grid
    Introduction to GRID com p uting a nd ov e rv ie w of th e E urop e a n Da ta Grid P roj e ct The European DataGrid Project http: / / w w w . edg . org Overview What is GRID computing ? What is a GRID ? Why GRIDs ? GRID pr oj e cts w or l d w id e T he E ur ope an Data Gr id Overview of EDG goals and organization Overview of th e EDG m iddleware c om p onents Introduction to GRID Computing and the EDG 2 The Grid Vision The GRID: networked data p roc es s i ng c entres and Res earc hers p erf orm thei r ” m i ddl eware” s of tware as the ac ti v i ti es reg ardl es s “ g l u e” of res ou rc es . g eog rap hi c al l oc ati on, i nterac t wi th c ol l eag u es , s hare and ac c es s data c i enti f i c i ns tru m ents and e! p eri m ents p rov i de hu g e am ou nt of data Federico.C a rm in a t i@cern .ch Introduction to GRID Computing and the EDG 3 What is GRID computing : coordinated resource sharing and problem solving in dy namic, multi-institutional virtual organiz ations. [ I.Foster] A V O i s a c ol l ec ti on of sers sh a ri n g si m i l a r n eed s a n d re! i rem en ts i n th ei r a c c ess to p roc essi n g " d a ta a n d d i stri # ted reso rc es a n d p rs i n g si m i l a r g oa l s.
    [Show full text]
  • Multi-Core Cpus, Clusters, and Grid Computing: a Tutorial∗
    Multi-core CPUs, Clusters, and Grid Computing: a Tutorial∗ Michael Creel Department of Economics and Economic History Edifici B, Universitat Autònoma de Barcelona 08193 Bellaterra (Barcelona) Spain [email protected] and William L. Goffe Department of Economics SUNY—Oswego 416 Mahar Hall Oswego, NY 13126 [email protected] June, 2005 Abstract The nature of computing is changing and it poses both challenges and opportunities for economists. Instead of increasing clock speed, future microprocessors will have “multi-cores” with separate execution units. “Threads” or other multi-processing techniques that are rarely used today are required to take full advantage of them. Beyond one machine, it has become easy to harness multiple computers to work in clusters. Besides dedicated clusters, they can be made up of unused lab comput- ers or even your colleagues’ machines. Finally, grids of computers spanning the Internet are now becoming a reality and one is ready for use by economists. ∗We would like to thank, without implicating, Ken Judd, Aaron Reece, and Robert J. Tetlow. 1 Introduction For nearly two decades, economists have used desktop computers with a single pro- cessor for most of their computing needs. Each year their power has increased and economists have been able to tackle more difficult problems. This era is coming to an end. Future improvements in microprocessors will come from adding additional pro- cessors to each chip; the power of a single processor is unlikely to substantially change. This transition will not be transparent to programmers or sophisticated users. Soon economists with a computational bent will be programming “multi-core” microproces- sors with tools they likely have not used before.
    [Show full text]
  • Chapter 1 Introduction
    Chapter 1 Introduction 1.1 Parallel Processing There is a continual demand for greater computational speed from a computer system than is currently possible (i.e. sequential systems). Areas need great computational speed include numerical modeling and simulation of scientific and engineering problems. For example; weather forecasting, predicting the motion of the astronomical bodies in the space, virtual reality, etc. Such problems are known as grand challenge problems. On the other hand, the grand challenge problem is the problem that cannot be solved in a reasonable amount of time [1]. One way of increasing the computational speed is by using multiple processors in single case box or network of computers like cluster operate together on a single problem. Therefore, the overall problem is needed to split into partitions, with each partition is performed by a separate processor in parallel. Writing programs for this form of computation is known as parallel programming [1]. How to execute the programs of applications in very fast way and on a concurrent manner? This is known as parallel processing. In the parallel processing, we must have underline parallel architectures, as well as, parallel programming languages and algorithms. 1.2 Parallel Architectures The main feature of a parallel architecture is that there is more than one processor. These processors may communicate and cooperate with one another to execute the program instructions. There are diverse classifications for the parallel architectures and the most popular one is the Flynn taxonomy (see Figure 1.1) [2]. 1 1.2.1 The Flynn Taxonomy Michael Flynn [2] has introduced taxonomy for various computer architectures based on notions of Instruction Streams (IS) and Data Streams (DS).
    [Show full text]