1 / 11

Berkeley UPC Compiler

Berkeley UPC Compiler. 100% open source, high-performance, portable UPC compiler Complete implementation of the latest UPC 1.1.1 language specification Open64-based source-to-source translator with inspectable C-code output

hankinsj
Download Presentation

Berkeley UPC Compiler

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Berkeley UPC Compiler • 100% open source, high-performance, portable UPC compiler • Complete implementation of the latest UPC 1.1.1 language specification • Open64-based source-to-source translator with inspectable C-code output • Fully documented runtime system interface, carefully designed for system portability Christian Bell Jason Duell Costin Iancu Dan Bonachea Paul Hargrove Mike Welcome Wei Chen Parry Husbands Kathy Yelick http://upc.lbl.gov upc@lbl.gov

  2. Berkeley UPC Compiler • Supports a wide variety of operating systems: • Linux, AIX, Tru64, IRIX, HPUX, Solaris, FreeBSD, Windows/Cygwin, Mac OSX • Supports a wide variety of CPUs: • x86, Itanium, PowerPC, SPARC, MIPS, PA-RISC • Supports a wide variety of backend C compilers: • gcc, Intel C, Visual Age C, Compaq C, Portland Group C, MIPSPro C, Sun Pro C • GASNet-based high-performance network support for: • Quadrics/elan, Myrinet/GM, IBM/LAPI, Infiniband/VAPI • On the way: Dolphin SCI, Cray X-1, SGI Altix 3000 • Portable MPI 1.1 backend for other hardware http://upc.lbl.gov upc@lbl.gov

  3. Compiler UPC Code Compiler-generated C code UPC Runtime system Compiler-independent Platform-independent GASNet Communication System Network Hardware Language-independent Network-independent Berkeley UPC Runtime System Organization http://upc.lbl.gov upc@lbl.gov

  4. GASNet Performance Summary http://upc.lbl.gov upc@lbl.gov

  5. GASNet Performance Summary http://upc.lbl.gov upc@lbl.gov

  6. Porting Chombo AMR to UPC • Porting Chombo* AMR to UPC • Numerics in FORTRAN • Data and control structures in UPC • Adaptive development in progress • Currently only single level • Example shows Mach 2 blast wave in a 2-D periodic chamber interacting with a dense fluid in the shape of the letters: U P C *Thanks to the ANAG group at LBL http://upc.lbl.gov upc@lbl.gov

  7. After 200 Timesteps http://upc.lbl.gov upc@lbl.gov

  8. After 500 Timesteps http://upc.lbl.gov upc@lbl.gov

  9. After 800 Timesteps http://upc.lbl.gov upc@lbl.gov

  10. Parallel Triangulation in UPC • Implementation of a parallel projection-based algorithm (Blelloch, Miller, Talmor) • Points and processors recursively divided • Uses parallel convex hull algorithm to decide on division of points into two sets • Each set is then processed by ½ of the processors • In demo, colors represent assignment of points to processors • Caching scheme implemented to conserve communication of points • Lowest level of recursion (when we have one processor) performed by Triangle (Shewchuk) http://upc.lbl.gov upc@lbl.gov

  11. Triangulation code in Action http://upc.lbl.gov upc@lbl.gov

More Related