Presented by The Lapack for Clusters (LFC) Project Piotr Luszczek The MathWorks, Inc.

Slides:



Advertisements
Similar presentations
Chapter 17: WEB COMPONENTS
Advertisements

Yafeng Yin, Lei Zhou, Hong Man 07/21/2010
Computational Physics Linear Algebra Dr. Guy Tel-Zur Sunset in Caruaru by Jaime JaimeJunior. publicdomainpictures.netVersion , 14:00.
Chapter 28 – Part II Matrix Operations. Gaussian elimination Gaussian elimination LU factorization LU factorization Gaussian elimination with partial.
Linear System Remark: Remark: Remark: Example: Solve:
R Lecture 4 Naomi Altman Department of Statistics Department of Statistics (Based on notes by J. Lee)
Combining NCL and Fortran in C-shell
Kaldi’s matrix library
+ Review of Linear Algebra Introduction to Matlab / Machine Learning Fall 2010 Recitation by Leman Akoglu 9/16/10.
Sparse Matrices in Matlab John R. Gilbert Xerox Palo Alto Research Center with Cleve Moler (MathWorks) and Rob Schreiber (HP Labs)
1cs542g-term Notes  Assignment 1 will be out later today (look on the web)
1cs542g-term Notes  Assignment 1 is out (questions?)
Engineering Problem Solving With C++ An Object Based Approach Fundamental Concepts Chapter 1 Engineering Problem Solving.
INTERNET DATABASE Chapter 9. u Basics of Internet, Web, HTTP, HTML, URLs. u Advantages and disadvantages of Web as a database platform. u Approaches for.
Mx? A programming language for scientific computation. Related Languages: Matlab IDL Maple, Mathcad, Mathematica.
1 Capstone projects supervised by Yinong Chen (1) Implementation of a Shell on Palm Hand Held Device (2) Building a Programmer’s Interface to the Palm.
Interpret Application Specifications
LAPACK HTML version LAPACK = Linear Algebra PACKage ~ LINPACK + EISPACK
Scientific Computing on MSR Summer School 2009 – Jurgen Van Gael.
Parallel & Cluster Computing Linear Algebra Henry Neeman, Director OU Supercomputing Center for Education & Research University of Oklahoma SC08 Education.
Dynamics AX Technical Overview Application Architecture Dynamics AX Technical Overview.
University of Toronto at Scarborough © Kersti Wain-Bantin CSCC40 system design 1 what is systems design? preparation of the system’s specifications with.
Exercise problems for students taking the Programming Parallel Computers course. Janusz Kowalik Piotr Arlukowicz Tadeusz Puzniakowski Informatics Institute.
Engineering Analysis ENG 3420 Fall 2009
Antonio M. Vidal Jesús Peinado
1 © 2012 The MathWorks, Inc. Speeding up MATLAB Applications.
MATLAB Lecture One Monday 4 July Matlab Melvyn Sim Department of Decision Sciences NUS Business School
® Backward Error Analysis and Numerical Software Sven Hammarling NAG Ltd, Oxford
CS 591x – Cluster Computing and Programming Parallel Computers Parallel Libraries.
By: David McQuilling; Jesus Caban Deng Li Numerical Linear Algebra.
Introduction to PETSc VIGRE Seminar, Wednesday, November 8, 2006.
1 Intel Mathematics Kernel Library (MKL) Quickstart COLA Lab, Department of Mathematics, Nat’l Taiwan University 2010/05/11.
Progress in Multi-platform Software Deployment (Linux and Windows) Tim Kwiatkowski Welcome Consortium Members November 29,
ICOM 5995: Performance Instrumentation and Visualization for High Performance Computer Systems Lecture 7 October 16, 2002 Nayda G. Santiago.
1 “How Can We Address the Needs and Solve the Problems in HPC Benchmarking?” Jack Dongarra Innovative Computing Laboratory University of Tennesseehttp://
N ATIONAL E NERGY R ESEARCH S CIENTIFIC C OMPUTING C ENTER 1 Porting from the Cray T3E to the IBM SP Jonathan Carter NERSC User Services.
Chapter 34 Java Technology for Active Web Documents methods used to provide continuous Web updates to browser – Server push – Active documents.
By: David McQuilling and Jesus Caban Numerical Linear Algebra.
Ch 1. A Python Q&A Session Spring Why do people use Python? Software quality Developer productivity Program portability Support libraries Component.
ATCA based LLRF system design review DESY Control servers for ATCA based LLRF system Piotr Pucyk - DESY, Warsaw University of Technology Jaroslaw.
Problem Solving with NetSolve Michelle Miller, Keith Moore,
Accelerating the Singular Value Decomposition of Rectangular Matrices with the CSX600 and the Integrable SVD September 7, 2007 PaCT-2007, Pereslavl-Zalessky.
MATLAB 程式設計 Learning Linear Algebra 方煒 台大生機系. MATLAB 程式設計 Vector Products, Dot and Cross a=[1,2,3];b=[3,2,1]; C=a*b D=a.*b E=dot(a,b) F=cross(a,b)
Matlab 14.html Cost: $100 Available in labs on Windows and Unix machines.
ITC Research Computing Support Using Matlab Effectively By: Ed Hall Research Computing Support Center Phone: Φ Fax:
Linear Algebra Libraries: BLAS, LAPACK, ScaLAPACK, PLASMA, MAGMA
Automatic Parameterisation of Parallel Linear Algebra Routines Domingo Giménez Javier Cuenca José González University of Murcia SPAIN Algèbre Linéaire.
Getting Started with SIDL using the ANL SIDL Environment (ASE) ANL SIDL Team MCS Division, ANL April 2003 The ANL SIDL compilers are based on the Scientific.
Dispatching Java agents to user for data extraction from third party web sites Alex Roque F.I.U. HPDRC.
Fall 1999 Copyright © R. H. Taylor Given a linear systemAx -b = e, Linear Least Squares (sometimes written Ax  b) We want to minimize the sum.
Report from LBNL TOPS Meeting TOPS/ – 2Investigators  Staff Members:  Parry Husbands  Sherry Li  Osni Marques  Esmond G. Ng 
Parallel Programming & Cluster Computing Linear Algebra Henry Neeman, University of Oklahoma Paul Gray, University of Northern Iowa SC08 Education Program’s.
Linear Algebra Libraries: BLAS, LAPACK, ScaLAPACK, PLASMA, MAGMA Shirley Moore CPS5401 Fall 2013 svmoore.pbworks.com November 12, 2012.
STDP and Network Architectures Parallel ODE Solver and Event Detector Eugene Lubenov.
ORNL is managed by UT-Battelle for the US Department of Energy Spark On Demand Deploying on Rhea Dale Stansberry John Harney Advanced Data and Workflows.
ATCA based LLRF system design review DESY Control servers for ATCA based LLRF system Piotr Pucyk - DESY, Warsaw University of Technology Jaroslaw.
University of Tennessee Automatically Tuned Linear Algebra Software (ATLAS) R. Clint Whaley University of Tennessee
The Distributed Application Debugger (DAD)
A survey of Exascale Linear Algebra Libraries for Data Assimilation
Chapter 2, Linear Systems, Mainly LU Decomposition
Matrices and vector spaces
CASE STUDY 1: Linux and Android
Nathan Grabaskas: Batched LA and Parallel Communication Optimization
Matrix Methods Summary
Review of Linear Algebra Introduction to Matlab
Shuxia Zhang, Amidu Oloso, Birali Runesha
MPJ: A Java-based Parallel Computing System
Matrix Eigensystem Tutorial For Parallel Computation
All we need in Game Programming Course Reference
CS5321 Numerical Optimization
Presentation transcript:

Presented by The Lapack for Clusters (LFC) Project Piotr Luszczek The MathWorks, Inc.

2 Luszczek_LFC_SC07 LFC: Overview  Interactive clients  Mathematica  MATLAB  Python 0,0 Tunnel (IP, TCP,....) Firewall Server Clients Server Software

3 Luszczek_LFC_SC07 LFC: Behind the scenes Internet Intranet Shared memory... x = lfc.gesv(A, b) x = b.copy() command('pdgesv', A.id, x.id) x = b.copy() command('pdgesv', A.id, x.id) send(c_sckt, buf) recv(s_sckt, buf) call pdgesv(A, x) Batch mode bypass

4 Luszczek_LFC_SC07 LFC: Current functionality  Linear systems (via factorizations)  Cholesky: A = UTUA = LLT  Gaussian: PA = LU  Least Squares: A = QR  Singular- and eigen-value problems  A = UΣVT (thin SVD)  AV=VΛ=AHV (symmetric AEP)  AV = VΛ(non-symmetric AEP)  Norms, condition-number estimates  Precision, data types  Single, double  Real, complex  Mixed precision (by upcasting)  User data routines  Loading/Saving  MPI I/O ...  Generating  Plug-ins  Moving  More to come…  Now working on sparse matrices support

5 Luszczek_LFC_SC07 LFC: Design and implementation Client logic (Python) Server logic (Python) Jython PLW Prototyping Deployment Java ● C ● MathLink ● MEX beowulf $ python setup.py install beowulf $ mpirun python server.py Pyrex beowulf $./configure beowulf $ make beowulf $ make install beowulf $ mpiexec server Network

6 Luszczek_LFC_SC07 LFC: Implemented MATLAB functionality NameSingleDoubleS-ComplexD-ComplexDescription chol  Cholesky factorization: LL T, U T U lu  LU factorization: PA=LU qr  QR factorization: A = QR qrp QR factorization+pivoting: PA=QR Svd  Singular-value decomposition: A=U  V T Eig Eigenvalue problem: AX=X  Syev  n/a Symmetric eigenvalue problem Heevn/a  Hermitian eigenvalue problem Diag  Diagonal matrix/vector Trans  Matrix/vector transpose Hermn/a  Matrix/vector hermitian transpose Norm  Matrix/vector norm Cond  Condition number estimate Inv0000Explicit matrix inverse

7 Luszczek_LFC_SC07 Sample LFC code: Linear system solve  MATLAB with LFC (parallel): n = lfc(1000); nrhs = 1; A = rand(n); b = rand(n, 1); x = A \ b; r = A*x – b; norm(r, ‘fro’)  MATLAB – no LFC (sequential): n = 1000; nrhs = 1; A = rand(n); b = rand(n, 1); x = A \ b; r = A*x – b; norm(r, ‘fro’)  Python with LFC (parallel): n = 1000 nrhs = 1 A = lfc.rand(n) b = lfc.rand(n, 1) x = lfc.solve(A, b) r = A*x – b print r.norm(‘F’)

8 Luszczek_LFC_SC07 LFC’s C interface: Sequential calls, parallel execution  In-memory routines  LFC_  gels()  LFC_  gesv()  LFC_  posv()  Limitations  Data must fit on caller  Cluster state functions  LFC_hosts_create()  LFC_hosts_free()  LFC_get_available_CPU()  LFC_get_free_memory()  Disk-based routines  LFC_  gels_file_all()  LFC_  gesv_file_all()  LFC_  posv_file_all()  Limitations  Must pay I/O cost each time

9 Luszczek_LFC_SC07 LFC’s ease of deployment  Only one file to download  Just type:./configure && make && make install ScaLAPACK LAPACK BLAS (vendor) PBLAS BLACS MPI LFC clients: C, Mathematica, MATLAB, Python BLAS (LFC) serial interface parallel interface global addressing portable local addressing platform specific External to LFC External to LFC

10 Luszczek_LFC_SC07 Software technology used by LFC  Client  Python  Sockets  MATLAB  Embedded Java  Jython  Reuse of Python code  C/C++  Code:  fork()  execvp()  Shell (implicit)  mpirun  mpiexec  Server  Libraries  MPI  BLAS  BLACS  LAPACK  ScaLAPACK  Languages  Python  Pyrex (C wrappers)  PLW  Python compiler  Translation to C

11 Luszczek_LFC_SC07 Contact Piotr Luszczek The MathWorks, Inc. (508)