FPGA's, Clusters, and Grids

From CSI 702

Jump to: navigation, search

Contents

  1. FPGA's
    1. Pipelining Gravity
    2. Hardware Evolution
    3. FPGA's
  2. Grids
    1. Grid Examples
    2. Grid Advantages
    3. Grid Issues
    4. Grid Portals
    5. Gateways
    6. Grid Standards
    7. Definitions
    8. Servlets vs Portlets
  3. Clusters
    1. Links & References

1 FPGA's

1.1 Pipelining Gravity

An example of FPGA's used for HPC includes the University of Tokyo's GRAPE project [1]. GRAPE or GRAvity PipE is an FPGA that can be used for highspeed computation of N-body problems. Since stacking FPGA's gives a fairly linear increase in performance the Last Revision of the GRAPE,GRAPE-DR, can hit 2Tflops[1]

TABLE-1 Low-Precision machines:

Machine Year Peak Notes
GRAPE-1 1989 240Mflops Concept System
GRAPE-3 1991 15 Gflops Custom LSI
GRAPE-5 1998/9 ~ 1Tflops

TABLE-2 High-Precision machines:

Machine Year Peak Notes
GRAPE-2 1990 40Mflops IEEE single/double
HARP-1 1993 180 Mflops Force and its time derivative
GRAPE-4 1995 1Tflops Single-chip pipeline
GRAPE-6 2002 64Tflops 6 pipelines in one chip
GRAPE-DR 2008 2 Pflops New architecture

[1]

However, due to the expense due to limited demand of these products, future product seems to be heading towards GPU programming [1]

1.2 Hardware Evolution

  1. Discrete Components
  2. Integrated Circuits
  3. Large-scale Integration
  4. Fully-Programmable Gate Arrays

1.3 FPGA's

PRO's:

  • Integrates a customizable element for specific tasks
  • Compiler optimizes design from desired logic to hardware
  • Very good for a large number of small, simple operations (e.g. symmetric key cryptography)
  • Can be emulated on a CPU for design and testing
  • Easy to scale

CON's:

  • Not very robust with regard to floating point operations
  • Difficult to program
  • Expensive overall
  • Very much a bleeding-edge technology
  • Limited user community

Although many communities such as the NSA rely considerably on the use of FPGA's there is a driving force behind the use of cheeper commodity GPU's to replace FPGA's in several niche markets such as was seen with the GRAPE project. GPU's have the advantage of low price by being subsidized by PC gamers, and a large user community.

2 Grids

  • Natural extension of Beowulf clusters
  • Heterogeneous localities of resources
    • Rooms
    • Buildings
    • Sites
    • Over the internet
  • This variation implies complex management software

2.1 Grid Examples

  • BOINC (Berkley Open Infrastructure for Network Computing): Framework originally for SETI@home, currently hosts several other projects as well.
  • folding@home distributed network through the Stanford University to study disease.
  • TeraGrid NSF funded grid with members including: NCSA, University of Illinois at Urbana-Champaign, San Diego Supercomputer Center, University of Chicago Argonne National Laboratory, California Institute of Technology, Pitsburgh Supercomputing Center, ORNL, Purdue, Indiana University, and TACC[1]

List of Grids:

Grid Performance
BOINC 5,574.75 TeraFLOPS [1]
folding@home 5,000 native TeraFLOPS (8.1 x86 PFLOPS) [1]
TeraGrid (NSF) 2,000 TeraFLOPS [1]

Fast Computers for Comparison

Computer Performance
Cray Jaguar 1,750 TeraFLOPS
Intel Core i7 980XE 0.0799 TeraFlops
nVidia Tesla C1060 0.0780 TeraFlops (Double)

[1]

2.2 Grid Advantages

  • Good for large, geographically distributed community
  • Good for community with specific goals
  • Good for managing data and computation with a lot of variety

2.3 Grid Issues

  • Security
  • Monitoring
  • Computation
  • Data
  • Collaboration

2.4 Grid Portals

  • Portal technologies:
    • HTML
    • CGI
    • etc.
  • TeraGrid at University of Chicago
    • Resource providers
      • Indiana University
      • Oak Ridge
      • NCSA
      • NCAR
      • Purdue
      • San Diego
      • Texas Advanced Computing Center
      • University of Chicago
      • Joint Institute for Computational Sciences
      • Pittsburg Supercomputing Center
    • Very large scientific computation grid
    • Portals
      • SPRUCE
      • CSE-Online

2.5 Gateways

Current science gateways include:

  • National Virtual Observatory (NVO)
  • Special Priority and Urgent Computing Environment(SPRUCE)
  • Linked Environments for Atmospheric Discovery (LEAD)
  • Computing Chemistry Grid (GridChem)
  • Computational Science And Enginering On-line (quantum chem)
  • Network for Earthquake Engineering Simulation
  • Biology and Biomedicine Science Gateway
  • Neutron Science Teragrid Gateway


2.6 Grid Standards

  • Document standards - HTML into XML
  • Grid Standards - Globus into OGSA
  • Modular web standards - Servlets into Portlets
  • Portlet standards - JSR 286

2.7 Definitions

  • Portal - a web-based application that can be customized by the end-user both in terms of look/feel and content and applications
  • Gateway - a portal dedicated to providing specific services to a specific user community
  • Web container - something that runs servlets (Apache Tomcat)
  • Portlet container - something that runs portlets (Apache Pluto)
  • SOAP - simple object access protocol for exchanging XML messages over the Internet
  • SAML - security assertion markup language - a framework for authentication and authorization
  • Web Services (WS) - open standards-based (SOAP, HTTP, XML) web apps that are module, distributed and dynamic
    • allows easy connectivity between very software applications on different systems
    • easy reuse of applications
    • use of open standards
    • but... open standards are still immature
    • textual formats (XML) are more inefficient that other alternatives (CORBA, etc)
  • WSDL - Web Services Definition Language- XML grammar to let a web service describe itself to clients
  • UDDI - Universal Description, Discovery, Integration - XML format and API for searching through existing data using SOAP
  • WSRP - Web Services for Remote Portlets - a presentation-orient spec aimed at portals/portlets
    • allows portal creation to be simply joining together elements with very little actual programming
    • encourages standard portlet and portlet reuse
  • SOA - Service Oriented Architecture - a type of enterprise architecture that allows the creation of applications by combining loosely coupled and interoperable services

2.8 Servlets vs Portlets

  • Portlets return fragments of web pages, servlets return complete web pages
  • A single URL points to a set of Portlets
  • Communication between the web client and portlets goes through the portal
  • Portlets have scope of application and portlet, and are have persistent configurations
  • Otherwise, very similar software— both run in Java and generate static or dynamic content

3 Clusters

  • Initially:
    • Main node must be installed and configured
    • Compute nodes must be configured
  • Oscar
    • One-stop cluster management
  • Queuing system
    • Controlling job execution
  • YUME
    • Facilitates distributed software installation
  • Switcher
    • Manages cluster environment
Clusters Grids
Homogeneous Heterogeneous
Small, focused user group Large, disparate user group
Provides low-level software tools Provides high-level software tools
Limited access allowed

3.1 Links & References

Personal tools