250 likes | 255 Views
This technology trend explores the use of peer-to-peer technologies to enable new ways of collaborating and blur the distinction between clients and servers. It also focuses on the development of a service model to capture common capabilities and the increasing importance of small devices in computing.
E N D
Computing as a Peer to Peer Grid Service PTLIU Laboratory for Community Grids Geoffrey Fox Computer Science, Informatics, Physics Indiana University Bloomington IN 47404 gcf@indiana.edu gecdistedaug01
Some Technology Trends • Increasing performance of Internet backbone and last mile (access) • Hand-held devices and wireless Pervasive Access • Peer to peer technologies enable new ways of collaborating and blurs distinction between clients and servers • Client-Server Multi-tier Architectures • XML Schema and tools All data defined as objects • Separation of client, system and persistent storage models for information • Development of (application) service model to capture common (maybe centralized) capabilities • Semantic Web, Grid or … “Next Generation Web” gecdistedaug01
Small Devices Increasing in Importance CM5 • There is growing interest in wireless portable displays in the confluence of cell phone and personal digital assistant markets • By 2005, 60 million internet ready cell phones sold each year • 65% of all Broadband Internet accesses via non desktop appliances gecdistedaug01
Technology Trends and Principles • All performance and capability measures of infrastructure continue to improve • Gilder’s law says that network bandwidth increases 3 times faster than CPU Performance (Moore’s Law) • The Telecosmeclipses the Microcosm…. George Gilder Telecosm :How Infinite Bandwidth Will Revolutionize Our World (September 2000, Free Press; ISBN: 0684809303, #146(3883) in Amazon Sales Jan 15 2001(July 29 2001)) gecdistedaug01
What is a Grid Service? Resource • The Grid is distributed system allowing communities to access seamlessly heterogeneous resources from heterogeneous clients • Resources are web-pages, instruments, Object repositories, Simulation codes running on supercomputers …. • A Service is a generic application or capability respecting standards (general web and application specific) allowing multiple providers to compete on a given service Middle TierBroker Portal is customizable User interface Back endCapabability The Grid is essentially is the future Web IBM just announced they were investing around$1 Billion in Grid gecdistedaug01
Some General Grid Services PaymentCredit Card Security Catalog Warehouse shipping • Business is developing “web service” concept to support areas like e-commerce where one composes atomic services like • Security • Payment • Catalog • Goods supply Each of these services could allow Multiple choices of provider In a given session WSDL is new standard for web services gecdistedaug01
Grid Services support Communities • Grid Communities (PTLIU, NSF, Earth Science, High School Classes) are groups of communicating individuals sharing resources implemented as Grid Services • Access Grid from Argonne/NCSA is best Audio/Video conferencing technology • Peer to Peer networking describes a set of technologies supporting community building with an emphasis on less structured groups than classic “users of a supercomputer” • Peer to peer Grids combine the technologies and support “small worlds” – optimized networks with short links between each community member • Collaborative Grid Service Framework allows one to build community not individually oriented Grid Services gecdistedaug01
Architecture of Grid: CommodityScience Next Generation Consumer Web Twenty-First Century University and laboratory P e r f o r m a n c e Conv e n i e n c e Science Portals & Workbenches Community Portals Commerce Grid Education Grid Research Grid Computational Grid Education Services Computational Services Research Services & Technology Business Services Grid Services (resource independent) Grid Fabric (resource dependent) Networking, Devices and Systems • Commerce, Entertainment, Healthcare, Science, Computing, Education …. will be Grid Services gecdistedaug01
Examples of Grid or Web Services • There are generic Grid system services: security, collaboration, persistent storage, universal access • An Application Service is a capability used either by another service or by a user • It has input and output ports – data is from sensors or other services • Consider NASA Space Operations (CSOC) as a Grid Service • Spacecraft management (with a web front end) • Each tracking station is a service • Image Processing is a pipeline of filters – which can be grouped into different services • Data storage is an important system service • Big services built hierarchically from “basic” services • Portals are the user (web browser) interfaces to Grid services gecdistedaug01
MultidisciplinaryControl Integration of Grid Services Image ProcessingServer Parallel DBProxy Database SensorControl Grid GatewaySupportingSeamlessInterface DataMiningServer Origin 2000Proxy MPP NetSolveLinear Alg.Server Matrix Solver Agent-basedChoice ofCompute Engine IBM SPProxy Object Grid Programming Environment MPP Classic HPCC Resources gecdistedaug01
The Application Service Model • As bandwidth of communication (between) services increases one can support smaller services • Some fields such as Education do not have stringent latency/bandwidth requirements on inter-service communication • Computing services must often have high performance communication • A service “is a component” and is a replacement for a library in case where performance allows • Services are a sustainable model of software development – each service has documented capability with standards compliant interfaces • XML defines interfaces at several levels • WSDL at Grid level and XSIL or equivalent for scientific data format • A service can be written in Perl, Python, Java Servlet, Enterprise Javabean, CORBA (C++ or Fortran) Object … • Communication protocol can be RMI (Java), IIOP (CORBA) or SOAP (HTTP, XML) …… gecdistedaug01
Classic Grid Architecture Database Database Resources Neos Composition Middle TierBrokers Service Providers Netsolve Security Portal Portal Typically separate Clients Servers Resources Clients Users and Devices gecdistedaug01
Peer to Peer Network User User User Service Service Service User User User Resource Resource Resource Service Service Service Routing Routing Routing Resource Resource Resource Routing Routing Routing Peers Peers are Jacks of all Trades linked to “all” peers in community Typically Integrated Clients Servers and Resources gecdistedaug01
Peer to Peer Grid User User User Service Service Service User User User Resource Resource Resource Service Service Service Routing Routing Routing Resource Resource Resource Routing Routing Routing GMS Routing Services DynamicMessage or EventRouting fromPeers orServers gecdistedaug01
P2P Grid withPeers and Servers Servers at thecenter of the world Peers on the Edge of the Internet gecdistedaug01
HPCC Background • The 1990 HPCC 10 year initiative was largely aimed at enabling large scale simulations for a broad range of computational science and engineering problems • It was in many ways a success and we have methods and machines that can (begin to) tackle most 3D simulations • ASCI simulations particularly impressive • DoE still putting substantial resources into basic software and algorithms from adaptive meshes to PDE solver libraries • Machines are still increasing in performance exponentially and should achieve petaflops in next 7-10 years • Each computing community needs to harness these capabilities in customized fashion • ASCI(DoE), Earth Simulator(Japan), Teragrid(NSF) ….. gecdistedaug01
Some HPCC Difficulties • An Intellectual failure: we never produced a better programming model than message passing • HPCC code is hard work • “High point” of ASCI software is “Grid FTP” • An institutional problem: we do not have a way to produce complex sustainable software for a niche (1%) market like HPCC. • POOMA support just disappeared one day – DoE is funding efforts for their critical missions – not to support general communities • One must adopt commodity standards and produce “small” sustainable modules. • Note distributed memory becoming dominant again with complex hybrid clustered SMP architecture – not clear that “wise” to exploit advantages of shared memory architectures gecdistedaug01
Personal HPCC Advice • KISS: Keep it Simple and Sustainable • Use MPI and openMP if needed for performance on shared memory nodes • Adaptive Meshes • Load Balancing • PDE Solvers including fast multipoles • Particle dynamics • Other areas such as datamining, visualization and data assimilation quite advanced but still significant research } Are well understoodto get high performanceparallel simulationsUse broad communityexpertise gecdistedaug01
Use of Object Technologies • The claimed commercial success in using Object and component technology has not been a clear success in HPCC • Object technologies do not naturally support either high performance or parallelism • C++ can be high performance but CORBA and Java are not • There is no agreed HPCC component architecture to produce more modern libraries (DoE has very large CCA – Common Component Architecture – effort which should be followed) • Fortran will continue to decline in importance and interest – the community should prefer not to use it • It’s use will not attract the best students gecdistedaug01
Application Structure • Modern applications are typically multi-scale and multi-disciplinary • i.e. a given simulation is made of multiple components with either different time/length scales and/or multiple authors from possibly multiple fields • I am not aware of a systematic “Computational renormalization group” – a methodology that links different scales together • However composition of modules is an area where technology of growing sophistication is becoming available • Needed commercially to integrate corporate functions • CCA tackles challenging “small grain size”; Gateway example of clearly successful large grain size integration gecdistedaug01
Object Size & Distributed/Parallel Simulations • All interesting systems consist of linked entities • Particles, grid points, people or groups thereof • Linkage translates into message passing • Cars on a freeway • Phone calls • Forces between particles • Amount of communication tends to be proportional to surface area of entity whereas simulation time proportional to volume • So communication/computation is surface/volume and decreases in importance as entity size increases • In parallel computing, communication synchronized; in distributed computing “self contained objects” (whole programs) which can be scheduled asynchronously gecdistedaug01
Community HPCC and Grid Strategy I • Decide what services are well enough understood and useful enough to be encapsulated as application services • Parallel FEM Solvers • Visualization • Parallel Particle Dynamics • Access to Sensor Data • Make as small as possible – smaller is simpler and more sustainable but with higher communication needs • Establish teams to design and build services • Use a framework offering needed Grid System services • Build electronic community for each field with collaboration tools, resources and world wide networking linking community members gecdistedaug01
Community HPCC and Grid Strategy II • Some capabilities – such as fast multipole or adaptive grids package – should be built as classic libraries or templates • Other services – such as datamining or support of multi-scale simulations – need research using a toolkit approach if one can design a general structure • Need “hosts” for major services – access and storage of sensor data • Need funds to build and sustain “infrastructure” and research services • Use electronic community tools to enhance Collaboration gecdistedaug01
Sensor Grid Service Distributed Sensor Service out portuniversal sensor accesspeople/computers in ports gecdistedaug01
Peer to Peer Grid Community APAN Network linkingAccess Grids gecdistedaug01