MATLAB and the GPU Who is AccelerEyes? What’s a GPU?

Slides:



Advertisements
Similar presentations
The Complete Technical Analysis and Development Environment An attractive alternative to MATLAB and GAUSS - Physics World.
Advertisements

Semantics Consistent Parallelism Li-Yi Wei Microsoft Research.
Introduction to the CUDA Platform
GPU Programming using BU Shared Computing Cluster
GPU acceleration in Matlab Jan Kamenický UTIA Friday seminar
HPCC Mid-Morning Break High Performance Computing on a GPU cluster Dirk Colbry, Ph.D. Research Specialist Institute for Cyber Enabled Discovery.
GRAPHICS AND COMPUTING GPUS Jehan-François Pâris
MATLAB Presented By: Nathalie Tacconi Presented By: Nathalie Tacconi Originally Prepared By: Sheridan Saint-Michel Originally Prepared By: Sheridan Saint-Michel.
2009/04/07 Yun-Yang Ma.  Overview  What is CUDA ◦ Architecture ◦ Programming Model ◦ Memory Model  H.264 Motion Estimation on CUDA ◦ Method ◦ Experimental.
Multi Agent Simulation and its optimization over parallel architecture using CUDA™ Abdur Rahman and Bilal Khan NEDUET(Department Of Computer and Information.
CUDA Programming Lei Zhou, Yafeng Yin, Yanzhi Ren, Hong Man, Yingying Chen.
Parallelization and CUDA libraries Lei Zhou, Yafeng Yin, Hong Man.
Introduction What is GPU? It is a processor optimized for 2D/3D graphics, video, visual computing, and display. It is highly parallel, highly multithreaded.
NVIDIA Confidential. Product Description World’s most popular 3D content creation tool Used across Design, Games and VFX markets Over +300k 3ds Max licenses,
HPCC Mid-Morning Break Dirk Colbry, Ph.D. Research Specialist Institute for Cyber Enabled Discovery Introduction to the new GPU (GFX) cluster.
Jared Barnes Chris Jackson.  Originally created to calculate pixel values  Each core executes the same set of instructions Mario projected onto several.
© 2004 The MathWorks, Inc. 1 MATLAB for C/C++ Programmers Support your C/C++ development using MATLAB’s prebuilt graphics functions and trusted numerics.
1 Integrating GPUs into Condor Timothy Blattner Marquette University Milwaukee, WI April 22, 2009.
Data Partitioning on Heterogeneous Multicore and Multi-GPU Systems Using Functional Performance Models of Data-Parallel Applications Published in: Cluster.
MACHINE VISION GROUP Graphics hardware accelerated panorama builder for mobile phones Miguel Bordallo López*, Jari Hannuksela*, Olli Silvén* and Markku.
GPU Computing with CBI Laboratory. Overview GPU History & Hardware – GPU History – CPU vs. GPU Hardware – Parallelism Design Points GPU Software.
Modern Consumer Video Card Cheng-Han Du. What Is Video Card? A separated card to generate and output image to display. Not the integrated graphic processor.
Computationally Efficient Histopathological Image Analysis: Use of GPUs for Classification of Stromal Development Olcay Sertel 1,2, Antonio Ruiz 3, Umit.
Tim Madden ODG/XSD.  Graphics Processing Unit  Graphics card on your PC.  “Hardware accelerated graphics”  Video game industry is main driver.  More.
UIUC CSL Global Technology Forum © NVIDIA Corporation 2007 Computing in Crisis: Challenges and Opportunities David B. Kirk.
1 © 2014 The MathWorks, Inc. HPC with MATLAB Making parallel programming simple Jos Martin, Principal Architect, Parallel Computing Tools
Implementation of Parallel Processing Techniques on Graphical Processing Units Brad Baker, Wayne Haney, Dr. Charles Choi.
By Arun Bhandari Course: HPC Date: 01/28/12. GPU (Graphics Processing Unit) High performance many core processors Only used to accelerate certain parts.
CS 6068 Parallel Computing Fall 2013 Lecture 10 – Nov 18 The Parallel FFT Prof. Fred Office Hours: MWF.
MATLAB
1 © 2012 The MathWorks, Inc. Parallel computing with MATLAB.
+ CUDA Antonyus Pyetro do Amaral Ferreira. + The problem The advent of multicore CPUs and manycore GPUs means that mainstream processor chips are now.
YOU LI SUPERVISOR: DR. CHU XIAOWEN CO-SUPERVISOR: PROF. LIU JIMING THURSDAY, MARCH 11, 2010 Speeding up k-Means by GPUs 1.
Programming Concepts in GPU Computing Dušan Gajić, University of Niš Programming Concepts in GPU Computing Dušan B. Gajić CIITLab, Dept. of Computer Science.
Diane Marinkas CDA 6938 April 30, Outline Motivation Algorithm CPU Implementation GPU Implementation Performance Lessons Learned Future Work.
Conclusions and Future Considerations: Parallel processing of raster functions were 3-22 times faster than ArcGIS depending on file size. Also, processing.
Robert Liao Tracy Wang CS252 Spring Overview Traditional GPU Architecture The NVIDIA G80 Processor CUDA (Compute Unified Device Architecture) LAPACK.
GPU Architecture and Programming
© David Kirk/NVIDIA and Wen-mei W. Hwu, ECE 498AL, University of Illinois, Urbana-Champaign 1 CMPS 5433 Dr. Ranette Halverson Programming Massively.
GPU-Accelerated Beat Detection for Dancing Monkeys Philip Peng, Yanjie Feng UPenn CIS 565 Spring 2012 Final Project – Final Presentation img src:
CUDA-based Volume Rendering in IGT Nobuhiko Hata Benjamin Grauer.
GPU-Accelerated Computing and Case-Based Reasoning Yanzhi Ren, Jiadi Yu, Yingying Chen Department of Electrical and Computer Engineering, Stevens Institute.
Introduction What is GPU? It is a processor optimized for 2D/3D graphics, video, visual computing, and display. It is highly parallel, highly multithreaded.
CDVS on mobile GPUs MPEG 112 Warsaw, July Our Challenge CDVS on mobile GPUs  Compute CDVS descriptor from a stream video continuously  Make.
GPU Programming Shirley Moore CPS 5401 Fall 2013
© David Kirk/NVIDIA and Wen-mei W. Hwu, University of Illinois, Urbana-Champaign 1 CS/EE 217 GPU Architecture and Parallel Programming Project.
Havok FX Physics on NVIDIA GPUs. Copyright © NVIDIA Corporation 2004 What is Effects Physics? Physics-based effects on a massive scale 10,000s of objects.
Debunking the 100X GPU vs. CPU Myth An Evaluation of Throughput Computing on CPU and GPU Present by Chunyi Victor W Lee, Changkyu Kim, Jatin Chhugani,
Implementation and Optimization of SIFT on a OpenCL GPU Final Project 5/5/2010 Guy-Richard Kayombya.
CPU-GPU Collaboration for Output Quality Monitoring Mehrzad Samadi and Scott Mahlke University of Michigan March 2014 Compilers creating custom processors.
GPU VSIPL: Core and Beyond Andrew Kerr 1, Dan Campbell 2, and Mark Richards 1 1 Georgia Institute of Technology 2 Georgia Tech Research Institute.
Performed by:Liran Sperling Gal Braun Instructor: Evgeny Fiksman המעבדה למערכות ספרתיות מהירות High speed digital systems laboratory.
GPU Computing for GIS James Mower Department of Geography and Planning University at Albany.
The Library Approach to GPU Computations of Initial Value Problems Dave Yuen University of Minnesota, U.S.A. with Larry Hanyk and Radek Matyska Charles.
Martin Kruliš by Martin Kruliš (v1.0)1.
Computer Engg, IIT(BHU)
Big Data A Quick Review on Analytical Tools
Our Graphics Environment
MATLAB Distributed, and Other Toolboxes
Computer Application in Engineering Design
Artificial Intelligence with .NET
Software for scientific calculations
GPU VSIPL: High Performance VSIPL Implementation for GPUs
Welcome to MATLAB.
Introduction to Matlab ( Google Search )
Part I – Matlab Basics.
CS 179 Project Intro.
Communication and Coding Theory Lab(CS491)
PANN Testing.
Graphics Processing Unit
Presentation transcript:

MATLAB and the GPU Who is AccelerEyes? What’s a GPU? AccelerEyes is a MathWorks partner Jacket: GPU Engine for MATLAB What’s a GPU? Graphics processing unit Traditionally used for video games Now redesigned for use for science as well Massively parallel with 240 processor cores

MATLAB and the GPU Who is AccelerEyes? What’s a GPU? AccelerEyes is a MathWorks partner Jacket: GPU Engine for MATLAB What’s a GPU? Graphics processing unit Traditionally used for video games Now redesigned for use for science as well Massively parallel with 240 processor cores What’s in it for you? Low-priced speed

MATLAB Options CPU Solutions (blue arrows) GPU Solutions (green arrow) MATLAB and the Parallel Computing toolbox enable PC and clustered MATLAB computing GPU Solutions (green arrow) Jacket enables CUDA MATLAB Computing 4

Why GPUs? Speed

Why Jacket? Jacket combines the speed of CUDA and the graphics of the GPU with the user friendliness of MATLAB.

Supported platforms?

This Neural Net only required 3 changes (in red). Jacket at Work This Neural Net only required 3 changes (in red). CPU GPU

Jacket Functionality standard CUDA functionality: libraries MEX files + CUDA Customized low-level GPU codes Generators: geye, gones, gzeros Element-wise: +, *, -, / Reductions: sum, min, max … Indexing: subscripted referencing / subscripted assignment Linear Algebra: matrix multiply, … FFT: fft, ifft, fftn, ifftn Filtering: filter, filter2, convn Interpolation: interp2 Parallel for-loops: gfor

Jacket includes the Graphics Toolbox True visual computing OpenGL API in MATLAB Interactive OpenGL Key functions: gsurf, gimage, gscatter3, gplot, … Visualization scripts are open and modifiable.

Kernel Benchmarks 54x Speedup 16x Speedup 11

Application Benchmarks 12

Some Jacket Customers

Jacket Roadmap: 09-10 more gfor gdouble multi-GPU support (for clusters of GPUs) LAPACK (eig, inv, etc.) signal processing image processing (and computer vision) statistical functions handle graphics Simulink® on the GPU lots of other MATLAB functions (finance, biology, etc.) Low-end Toolboxes High-end

Jacket Pricing

Questions? www.accelereyes.com sales@accelereyes.com Sprinx Systems http://hpc.sprinx.cz/sw/jacket.aspx hpc@sprinx.cz Forum support: www.accelereyes.com/forums