Where Are They Now? Current Status of C++ Parallel Language Extensions and Libraries From 1995 Supercomputing Workshop 1.

Slides:



Advertisements
Similar presentations
COM vs. CORBA.
Advertisements

Lecture 38: Chapter 7: Multiprocessors Today’s topic –Vector processors –GPUs –An example 1.
Taxanomy of parallel machines. Taxonomy of parallel machines Memory – Shared mem. – Distributed mem. Control – SIMD – MIMD.
Multilingual Debugging Support for Data-driven Parallel Languages Parthasarathy Ramachandran Laxmikant Kale Parallel Programming Laboratory Dept. of Computer.
IBM RS6000/SP Overview Advanced IBM Unix computers series Multiple different configurations Available from entry level to high-end machines. POWER (1,2,3,4)
Distributed Object Computing Weilie Yi Dec 4, 2001.
Parallel Computing Overview CS 524 – High-Performance Computing.
Yousuf Surmust Instructor: Marius Soneru Course: CS550 Fall 2001
Arquitectura de Sistemas Paralelos e Distribuídos Paulo Marques Dep. Eng. Informática – Universidade de Coimbra Ago/ Machine.
Instrumentation and Profiling David Kaeli Department of Electrical and Computer Engineering Northeastern University Boston, MA
Introduction What is GPU? It is a processor optimized for 2D/3D graphics, video, visual computing, and display. It is highly parallel, highly multithreaded.
What is Unix Prepared by Dr. Bahjat Qazzaz. What is Unix UNIX is a computer operating system. An operating system is the program that – controls all the.
Design and Implementation of a Single System Image Operating System for High Performance Computing on Clusters Christine MORIN PARIS project-team, IRISA/INRIA.
Parallel Architectures
KUAS.EE Parallel Computing at a Glance. KUAS.EE History Parallel Computing.
 2008 Pearson Education, Inc. All rights reserved Introduction to Computers, the Internet and World Wide Web.
Independent Study of Parallel Programming Languages An Independent Study By: Haris Ribic, Computer Science - Theoretical Independent Study Advisor: Professor.
Java Beserkers Group 4. Start of Java Development began on June of 1991 by a group of computer scientist at the Sun Mircrosystems Company Development.
Adaptive MPI Milind A. Bhandarkar
Seaborg Cerise Wuthrich CMPS Seaborg  Manufactured by IBM  Distributed Memory Parallel Supercomputer  Based on IBM’s SP RS/6000 Architecture.
SUMA: A Scientific Metacomputer Cardinale, Yudith Figueira, Carlos Hernández, Emilio Baquero, Eduardo Berbín, Luis Bouza, Roberto Gamess, Eric García,
1 Cactus in a nutshell... n Cactus facilitates parallel code design, it enables platform independent computations and encourages collaborative code development.
Department of Computer Science University of the West Indies.
Ch 1. A Python Q&A Session Spring Why do people use Python? Software quality Developer productivity Program portability Support libraries Component.
Processes and Threads Processes have two characteristics: – Resource ownership - process includes a virtual address space to hold the process image – Scheduling/execution.
Multiprocessing. Going Multi-core Helps Energy Efficiency William Holt, HOT Chips 2005 Adapted from UC Berkeley "The Beauty and Joy of Computing"
NIH Resource for Biomolecular Modeling and Bioinformatics Beckman Institute, UIUC NAMD Development Goals L.V. (Sanjay) Kale Professor.
NIH Resource for Biomolecular Modeling and Bioinformatics Beckman Institute, UIUC NAMD Development Goals L.V. (Sanjay) Kale Professor.
Flynn’s Architecture. SISD (single instruction and single data stream) SIMD (single instruction and multiple data streams) MISD (Multiple instructions.
Overcoming Scaling Challenges in Bio-molecular Simulations Abhinav Bhatelé Sameer Kumar Chao Mei James C. Phillips Gengbin Zheng Laxmikant V. Kalé.
1CPSD Software Infrastructure for Application Development Laxmikant Kale David Padua Computer Science Department.
Spring 2003CSE P5481 Issues in Multiprocessors Which programming model for interprocessor communication shared memory regular loads & stores message passing.
Computer Programming 2 Why do we study Java….. Java is Simple It has none of the following: operator overloading, header files, pre- processor, pointer.
1 Choices “Our object-oriented system architecture embodies the notion of customizing operating systems to tailor them to support particular hardware configuration.
University of Illinois at Urbana-Champaign Memory Architectures for Protein Folding: MD on million PIM processors Fort Lauderdale, May 03,
© Copyright by Deitel & Associates, Inc. and Pearson Education Inc. All Rights Reserved. 1 Outline 1.1 What Is a Computer? 1.2 Computer Organization.
1 Qualifying ExamWei Chen Unified Parallel C (UPC) and the Berkeley UPC Compiler Wei Chen the Berkeley UPC Group 3/11/07.
Parallel Computing.
Harnessing Grid-Based Parallel Computing Resources for Molecular Dynamics Simulations Josh Hursey.
Parallelizing Spacetime Discontinuous Galerkin Methods Jonathan Booth University of Illinois at Urbana/Champaign In conjunction with: L. Kale, R. Haber,
August 2003 At A Glance The IRC is a platform independent, extensible, and adaptive framework that provides robust, interactive, and distributed control.
Introduction Why are virtual machines interesting?
A uGNI-Based Asynchronous Message- driven Runtime System for Cray Supercomputers with Gemini Interconnect Yanhua Sun, Gengbin Zheng, Laximant(Sanjay) Kale.
3/12/2013Computer Engg, IIT(BHU)1 PARALLEL COMPUTERS- 2.
SDM Center High-Performance Parallel I/O Libraries (PI) Alok Choudhary, (Co-I) Wei-Keng Liao Northwestern University In Collaboration with the SEA Group.
OPERATING SYSTEM BY KINSHUK RASTOGI. WHAT IS AN OPERATING SYSTEM? What is an operating system in the first place? An operating system is a software that.
CDA-5155 Computer Architecture Principles Fall 2000 Multiprocessor Architectures.
20-753: Fundamentals of Web Programming Copyright © 1999, Carnegie Mellon. All Rights Reserved. 1 Lecture 15: Java Basics Fundamentals of Web Programming.
Multicore Applications in Physics and Biochemical Research Hristo Iliev Faculty of Physics Sofia University “St. Kliment Ohridski” 3 rd Balkan Conference.
Intra-Socket and Inter-Socket Communication in Multi-core Systems Roshan N.P S7 CSB Roll no:29.
Heterogeneous Processing KYLE ADAMSKI. Overview What is heterogeneous processing? Why it is necessary Issues with heterogeneity CPU’s vs. GPU’s Heterogeneous.
PERFORMANCE OF THE OPENMP AND MPI IMPLEMENTATIONS ON ULTRASPARC SYSTEM Abstract Programmers and developers interested in utilizing parallel programming.
Flexibility and Interoperability in a Parallel MD code Robert Brunner, Laxmikant Kale, Jim Phillips University of Illinois at Urbana-Champaign.
Computer System Structures
Chapter 4: Threads Modified by Dr. Neerja Mhaskar for CS 3SH3.
These slides are based on the book:
Hot Processors Of Today
Parallel Objects: Virtualization & In-Process Components
Chapter 3: Windows7 Part 1.
Parallel and Multiprocessor Architectures – Shared Memory
Some Real Machines Intel® M80C186 CHMOS High Integration 16-bit Microprocessor Intel® Itanium™ 64-bit Microprocessor (IA-64)
Chapter 4: Threads.
Milind A. Bhandarkar Adaptive MPI Milind A. Bhandarkar
Parallel Processing Architectures
Virtual Machines (Introduction to Virtual Machines)
Operating System 4 THREADS, SMP AND MICROKERNELS
Introduction to Heterogeneous Parallel Computing
Outline Operating System Organization Operating System Examples
Graphics Processing Unit
Emulating Massively Parallel (PetaFLOPS) Machines
Presentation transcript:

Where Are They Now? Current Status of C++ Parallel Language Extensions and Libraries From 1995 Supercomputing Workshop 1

Parallel Programming Topics C++ parallel language extensions pC++, CC++, Mentat, MPC++, uC++, COOL, Charm++, C**, ICC++ C++ parallel libraries CHAOS++, A++/P++, LPARX, Scalapack++, POOMA, AIPS++

Three Status Categories No visible research being done on or with today Research being done on, not being used outside of research group Research being done on, and being used extensively for other projects

Focus of Today’s Presentation The language extensions and libraries Charm++ AIPS++ POOMA (if time) The topics What it was in 1995 What it is today What it is used for today

Charm Parallel extension of C++ created by CS dept Univ. of Illinois 2 Machine independent parallel programming system for MIMD machines, with or without shared memory Encore Multimax, Intel i860, IBM SP-1, CM-5, Network of Sun Sparc, HP 700, IBM RS6000 Portability, latency tolerance, reuse and modularity

Charm++ - Today 5/7/01 - Version released Has dynamic load balancing Works on all Win platforms, including Win2K on 64-bit itanium, Linux and Power Mac 5/13/01 – Report released on how to make Charm++ work in heterogeneous operating environments

Charm++ - Where It’s Used NAMD – an OO molecular dynamics code for simulation of large biomolecular systems Interactive Molecular Dynamics system Blue Gene Emulator IBM Blue Gene Computer 3 Simulating protein folding via molecular dynamics

AIPS Astronomical Information Processing System 4 Telescope data post-processor for calibration, editing, image formation, image enhancement, and analysis of images and data streams Written primarily in C++ Primary focus – radio astronomy

AIPS++ - Today Version 1.5 released May 2001 Primary focus is still radio astronomy More advanced GUI interfaces, calculation abilities Most of the research effort is going towards user-friendliness

AIPS++ - Where It’s Used DISH – an environment used for single dish radio astronomy analysis BIMA Image Pipeline 5 Green Bank Telescope (GBT) data processing 6 Used by hundreds of astronomers 7

POOMA – 1995 (Version r1) Parallel Object Oriented Methods and Applications, by Los Alamos Nat. Lab 8 High performance C++ toolkit for parallel scientific computation Code portability across serial, distibuted, parallel architectures Reusability, efficiency, reduced development time

POOMA – Today (version 2x) Open-source, maintained by Codesourcery 9 Message and thread-based parallelism for clusters and shared memory multiprocessors Asynchronous scheduler for out-of-order execution for cache coherency Runs on platforms ranging from laptops to ASCI BlueMountain supercomputer Working on version 2.4

POOMA – Where It’s Used One of programming platforms for Accelerated Strategic Computing Initiative (ASCI) 10 MC++ - Monte Carlo neutron transport simulations Earth system model framework Internal LANL projects

References 1. Gannon, Dennis. “Object Oriented Parallel Programming – A Workshop for Supercomputing ’95”. Copyright 1995, Association for Computing Machinery, Inc ex.html ex.html

References – Cont eases/00Releases/ AIPS.html eases/00Releases/ AIPS.html ma ma