Parallel/Concurrent Programming on the SGI Altix - PowerPoint PPT Presentation

1 / 18
About This Presentation
Title:

Parallel/Concurrent Programming on the SGI Altix

Description:

Runs one copy of Fedora or OpenSUSE Linux. Ported to SGI ... Without the Hassle. No reprogramming in C MPI. How to Login. SGI Altix at UCR. sgi-2.cs.ucr.edu ... – PowerPoint PPT presentation

Number of Views:16
Avg rating:3.0/5.0
Slides: 19
Provided by: conl151
Learn more at: http://www.cs.ucr.edu
Category:

less

Transcript and Presenter's Notes

Title: Parallel/Concurrent Programming on the SGI Altix


1
Parallel/Concurrent Programming on the SGI Altix
  • Conley Read
  • January 25, 2007
  • UC Riverside, Department of Computer Science

2
Overview
  • The SGI Altix
  • Itanium 2 Features
  • Tools
  • Schedutils
  • MPI Programming
  • Star-P
  • References
  • Try It

3
About the SGIs
  • sgi-2.cs.ucr.edu
  • 32 processor
  • Intel Itanium
  • 1.5 GHz
  • 128 GB (70 GB) RAM
  • sgi-dev.cs.ucr.edu
  • 4 processor (2 sockets X 2 cores)
  • Intel Xeon
  • 3 GHz
  • 8 GB RAM
  • 2 Virtex 4 LX200 FPGAs
  • 200,000 Logic Cells
  • 80 MB SRAM

4
SGI Altix 3000
  • Runs one copy of Fedora or OpenSUSE Linux
  • Ported to SGI Hardware (Lessons from IRIX)
  • Linux natively supports management of 32
    processors
  • 1 copy of Linux vs. 1 copy of Linux per node
  • Node sizes 32,64,128?
  • Programming for the 32 processor SGI is similar
    to programming for a 4 way SMP

5
Global Shared Memory
  • Single Memory space
  • All system resources
  • Processors
  • I/O
  • SGI Altix 3000 uses NUMAflex (interconnect) to
    connect Itaniums with NUMAlink (ASIC)
  • Creates SMP-like system
  • Regardless of the node location of thread
    execution
  • Interprocess communication time is reduced

6
The Itanium 2
  • First Supercomputer using Itanium (1)
  • IBM Titan NOW Cluster at NCSA
  • Unique Features
  • 16 Byte Atomic Operations
  • IA-64
  • Fixed Length Instructions
  • Relies on Compile-time Optimizations
  • Branch Speculative Execution
  • Speculatively fetches data not in Cache
  • Virtualization (Intel Vanderpool Technology or
    VT)
  • Explicitly Parallel Instruction Computing (EPIC)

7
Tools
  • GNU C Compiler Installed
  • Intel C Compiler (icc) Waiting for License
  • Intel Debugger (idb)
  • GNU gdb Debugger Installed
  • Some problems with code generated by icc
  • Etnus TotalView Better Debugger
  • Intel Vtune Available for purchase
  • sTrace System Call Tracer
  • SGI Star-P Currently being installed

8
ICC
  • Intel C Compiler (icc)
  • OpenMP Simpler conversion from serial to
    parallel execution
  • Auto-parallelization Safe-loop parallelization
  • Fortran 95
  • Optimizations for IA-64 Architecture
  • Itanium 2 uses IA-64

9
Schedutils
  • Change Process Scheduling Attributes
  • chrt options pid command
  • -p Edit existing PID
  • --rr Round Robin
  • --fifo SCHED_FIFO
  • --other SCHED_OTHER

10
Schedutils
  • Change Process CPU Affinity
  • taskset options mask pid command
  • -p Edit existing PID
  • Mask
  • 0x00000001 Processor 0 0001
  • 0x00000002 Processor 2 0010
  • 0x00000003 Processor 0 and 1 0011
  • 0xFFFFFFFFF All Processors 1111

11
Parallel Programming Building Blocks
  • SGI Altix supports common MPI libraries
  • Pthreads not exactly threads
  • SGI Message Passing Interface
  • Intel MPI Library
  • Voltaire MPI Installed
  • Scali MPI

12
MPI Programming
  • Create a new thread
  • fork() vs. pthreads_create()
  • Hardware vs. POSIX
  • Bind a thread to a processor
  • pthread_processor_bind_np()
  • If you do not bind the pthread or modify the
    forked thread, the new thread will inherit the
    scheduling properties of the creating thread.

13
Star-P
  • The power of Supercomputers
  • MATLAB to SGI Altix over Network
  • Offloads computation tasks
  • Runtime call intercept
  • Perform day long computations in minutes
  • Without the Hassle
  • No reprogramming in C MPI

14
How to Login
  • SGI Altix at UCR
  • sgi-2.cs.ucr.edu
  • Use secure SSH protocol to connect
  • CS Username
  • CS Password
  • SGI RASC Altix at UCR
  • sgi-dev.cs.ucr.edu
  • Use secure SSH protocol to connect
  • CS Username
  • CS Password

15
Try it
  • ssh sgi-2.cs.ucr.edu
  • cat /proc/cpuinfo
  • cat /proc/meminfo
  • free
  • vmstat
  • uname -a

16
Questions?
17
References
  • http//www.intel.com/products/processor/itanium2/
  • http//en.wikipedia.org/wiki/Itanium2
  • http//www.sgi.com/developers/technology/gsm.html
  • http//rlove.org/schedutils/
  • http//www.llnl.gov/computing/tutorials/pthreads/

18
Thank you!
Write a Comment
User Comments (0)
About PowerShow.com