Getting Started with MATLAB Francesca Perino

Size: px
Start display at page:

Download "Getting Started with MATLAB Francesca Perino"

Transcription

1

2 Getting Started with MATLAB Francesca Perino 2014 The MathWorks, Inc. 1

3 Agenda MATLAB Intro Importazione ed esportazione Programmazione in MATLAB Tecniche per la velocizzazione dell esecuzione del codice e gestione di grosse basi dati Parallel Computing Generazione di codice C 2

4 Connecting to data from/to different sources Files Research and Quantify Data Analysis & Visualization Share Reporting Financial Modeling Data repositories Datafeeds Application Development Applications 3

5 Interaction with Excel How to import/export data from/to Excel - MATLAB -Can I perform that in an easy way? xlsread xlswrite -Can I have some control or customize the interaction? actxserver 4

6 Interface boundary Excel-MATLAB interaction over COM MATLAB supports COM integration on Windows, where COM stands for Microsoft Component Object Model 5

7 MATLAB Data Type Numeric Types Integer and floating-point data Characters and Strings Text in character arrays Structures Arrays with named fields that can contain data of varying types and sizes Cell Arrays Arrays that can contain data of varying types and sizes 6

8 MATLAB Data Type Tables Arrays in tabular form whose named columns can have different types Categorical Arrays Arrays of qualitative data with values from a finite set of discrete, nonnumeric data Datetime Arrays of date and time values that can be displayed in different formats 7

9 Ways to work with Image Files 8

10 Playing with Images 9

11 Steps Loading and showing of images Analysis in grayscale (histogram analysis) Binary Image Morphological operation in binary, and grayscale Distance, and watershed transform Property analysis 10

12 Acceleration Strategies 1. Best practices in programming Identify bottlenecks (e.g. Profiler, Code analyzer) Vectorization & pre-allocation Technology / Product 2. Better algorithms Different algorithmic approach to solve the same problem 3. More processors, cores, and GPUs Utilize high level parallel constructs (e.g. parfor) Scale to clusters, grids, and clouds 4. Re-implement to move to another language Generate & compiled code (MEX, C, HDL) Run on FPGAs or DSP 11

13 Speed up your MATLAB Image Processing Application We can speed up some tasks by taking advantage of high-performance computing resources, such as a multicore computers and GPU. Writing your task in parallel, you can: Run an application across a range of high-performance computing resources Program and execute parallel code interactively or in batch mode 12

14 Case study: a photo mosaic application A photographic mosaic is an image that is created from many smaller images. The effect is to recreate a picture by replacing its small portions with another image (tile) that has the same average color. At a distance, the mosaic will look like the original picture, while up close, the individual tiles can be seen. It is not difficult to make a photomosaic in MATLAB. 13

15 Case study: a photo mosaic application We need 1. to extract the average RGB value for each tile image 2. to split the image into sub-images that are the same size as your tile-set and then iterates through each one. 3. For each sub-image, the function computes the average and then the distance between that average and the pre-computed averages of all the tiles 4. The distances for each sub-sub-image are summed for that sub-image, and the tile in the tile-set with the minimum cumulative distance is inserted in the sub-image. 14

16 sub-image elaboration Case study: a photo mosaic application Block1 Block2 Block3 15

17 Ease of Use Programming Parallel Applications (CPU) Built-in support with toolboxes Simple programming constructs: parfor, batch, distributed Advanced programming constructs: createjob, labsend, spmd Greater Control 16

18 Image Block Processing The blockproc function in Image Processing Toolbox lets you work with really big images by processing them efficiently a block at a time. Computations run in parallel on multiple cores and GPUs when used with Parallel Computing Toolbox. 17

19 Graphics Processing Units (GPUs) Originally for graphics acceleration, now also used for scientific calculations Massively parallel array of integer and floating point processors Typically hundreds of processors per card GPU cores complement CPU cores Dedicated high-speed memory 18

20 General Purpose GPU Areas Signal processing Image and video processing Computational chemistry Bioinformatics and medical imaging Computational finance Energy production 19

21 Common Terms Used in GPU Computing CUDA : A parallel computing technology from NVIDIA Consists of a parallel computing architecture and developer tools, libraries, and programming directives for GPU computing Device: Card containing GPU and associated memory Host: CPU and system memory Kernel: Code written for execution on the GPU Functions that can run on a large number of threads Parallelism from each thread independently running the same program on different data 20

22 Criteria for Good Problems to Run on a GPU Massively parallel: Able to break down calculations into hundreds or thousands of independent units of work Motivation: Best performance when hundreds of GPU cores are kept busy Computationally intensive: Computation time should significantly exceed time spent on data transfer to and from GPU Motivation: Data transfer is costly since GPU is attached to CPU via the PCI Express bus 21

23 GPU Support with Parallel Computing Toolbox NVIDIA GPUs with compute capability 1.3 or greater Includes Tesla 10-series and 20-series products (e.g., NVIDIA Tesla C2075 GPU: 448 processors, 6 GB memory) Why we require compute capability 1.3 Support doubles (base data type in MATLAB) Guarantee IEEE compliance Provide cross-platform support 22

24 Ease of Use Options for Targeting GPUs Use GPU array interface with MATLAB built-in functions Execute custom functions on elements of the GPU array Create kernels from existing CUDA code and PTX files Greater Control 23

25 Overloaded MATLAB Functions A = magic(1000); G = gpuarray(a); %Push to GPU memory b = rand(1000,1,'gpuarray'); %Create on GPU F = fft(g); x = G\b; z = gather(x); %Bring back into MATLAB Full list of built-in functions that support GPUArray User s Guide GPU Computing Using GPUArray 24

26 Ease of Use Options for Targeting GPUs Use GPU array interface with MATLAB built-in functions Execute custom functions on elements of the GPU array Create kernels from existing CUDA code and PTX files Greater Control 25

27 Using arrayfun on GPU gain = 1.5; offset = -0.1; x = rand(1000,1, 'gpuarray'); %Create on GPU fh mygpufun(x, gain, offset); x = arrayfun(fh, x)%execute on GPU function c = mygpufun(x, gain, offset) c = (x.* gain) + offset; end Full list of functions for use with arrayfun on GPU User s Guide GPU Computing Execute MATLAB Code on a GPU 26

28 Ease of Use Options for Targeting GPUs Use GPU array interface with MATLAB built-in functions Execute custom functions on elements of the GPU array Create kernels from existing CUDA code and PTX files Greater Control 27

29 Invoking CUDA Kernels % Setup kernel = parallel.gpu.cudakernel( mykern.ptx, mykern.cu ); % Configure kernel.threadblocksize = 512; kernel.gridsize = [2 2]; % Run [c, d] = feval(kernel, a, b); 28

30 Best Practices for using GPU with MATLAB Profile your code to identify your bottlenecks Work on large enough matrices to see the benefits of GPU parallelization Minimize data transfer between CPU and GPU Sustained use of supported functionality Create variables directly on the GPU Use array indexing and branching in moderation Combine multiple element-wise calculations together into a single function call by using arrayfun 29

31 Automatic Translation of MATLAB to C Maintain one design in MATLAB Design faster and get to C/C++ quickly Test more systematically and frequently Spend more time improving algorithms in MATLAB iterate Algorithm Design and Code Generation in MATLAB verify / accelerate 30

32 Using MATLAB Coder: 3-Step Workflow Prepare your MATLAB algorithm Make implementation choices Prepare Use supported language features Test if your MATLAB code is compliant Validate that MATLAB program generates code (MEX) Test Accelerate execution of user-written algorithm Generate Generate source code or MEX for final use Iterate your MATLAB code to optimize Implement as source, executable or library C/C++ MEX 31

33 The role of MATLAB Coder MATLAB algorithm C/C++ project MATLAB Coder 32

34 Big Data Strategies Work with data too large to fit into system memory Access data from multiple sources including SQL databases, data historians, instrumentation, and files Visualize and interact with data 33

35 Large Data Analytics on the Desktop Prototype Access Explore Share/Deploy Scale Access big data from your desktop Collections of Text Files Databases Binary Files datastore Database Toolbox memmapfile 34

36 Large Data Analytics on the Desktop Expand workspace 64 bit processor support increased in-memory data set handling Access portions of data too big to fit into memory Memory mapped variables huge binary file Datastore huge text file or collections of text files Database query portion of a big database table Variety of programming constructs System Objects analyze streaming data MapReduce process text files that won t fit into memory 35

37 Scaled Large Data Analytics Prototype Access Explore Share/Deploy Scale Load, Analyze, Discard datastore, parfor MapReduce Distributed Memory SPMD out-ofmemory in-memory Embarrassingl y Parallel Complexity Non- Partitionable 36

38 Reading in Multiple Files Files with equivalent formats and well ordered file names can be read in using a for-loop. Speed advantages can be gained by using parfor. parfor l = 1:no_files fid = fopen([ data',num2str(l),'.txt']); ww = textscan(fid,'%f %f'); fclose(fid); end time(:,l) = ww{:,1}; data(:,l) = ww{:,2}; In-memory Big Data Analysis with PCT and MDCS 37

39 Streaming Algorithms 38

40 Streaming Algorithms For developing efficient, readable stream processing programs in MATLAB, System objects: process frames and then overwrite past frames with incoming data initialize parameters only once as they are created manage buffer updates, state updates, and indexing automatically, which speeds algorithm development support MATLAB code generation and parallel computing workflows 39

41 Support for Communications System Toolbox GPU implementations of LDPC Decoder, Viterbi Decoder, AWGN Channel, PSK Modulator, Block Interleaver, Block Deinterleaver DVB-S System Simulation Demo 40

42 MATLAB Data Storage 41

43 Distributed Arrays Using Parallel Computing Toolbox and MATLAB Distributed Computing Server, you can work with matrices and multidimensional arrays that are distributed across the memory of a cluster of computers. Using this approach, you can store and perform computations on big data sets that are too large to fit in a single computer s memory. 42

44 Strengths of MATLAB for Large Data Analytics Challenge Getting started Rapid data exploration MATLAB Solution Easy access to data from your desktop Tools for accessing typical big data sets consisting of text or binary files, contained in database tables or stored on Hadoop All the tools to explore and visualize data Easy to try different methods Ideal environment for developing your own methods Development of scalable algorithms Use within business systems Work on the desktop and scale to clusters Tools for use in analyzing big data on your desktop, which scale for use on clusters, including Hadoop, if needed Ease of deployment and leveraging enterprise Push-button deployment into production including support for Hadoop 43

Data Analytics with MATLAB. Tackling the Challenges of Big Data

Data Analytics with MATLAB. Tackling the Challenges of Big Data Data Analytics with MATLAB Tackling the Challenges of Big Data How big is big? What characterises big data? Any collection of data sets so large and complex that it becomes difficult to process using traditional

More information

Mit MATLAB auf der Überholspur Methoden zur Beschleunigung von MATLAB Anwendungen

Mit MATLAB auf der Überholspur Methoden zur Beschleunigung von MATLAB Anwendungen Mit MATLAB auf der Überholspur Methoden zur Beschleunigung von MATLAB Anwendungen Frank Graeber Application Engineering MathWorks Germany 2013 The MathWorks, Inc. 1 Speed up the serial code within core

More information

Speeding up MATLAB Applications Sean de Wolski Application Engineer

Speeding up MATLAB Applications Sean de Wolski Application Engineer Speeding up MATLAB Applications Sean de Wolski Application Engineer 2014 The MathWorks, Inc. 1 Non-rigid Displacement Vector Fields 2 Agenda Leveraging the power of vector and matrix operations Addressing

More information

Accelerating System Simulations

Accelerating System Simulations Accelerating System Simulations 김용정부장 Senior Applications Engineer 2013 The MathWorks, Inc. 1 Why simulation acceleration? From algorithm exploration to system design Size and complexity of models increases

More information

Parallel and Distributed Computing with MATLAB The MathWorks, Inc. 1

Parallel and Distributed Computing with MATLAB The MathWorks, Inc. 1 Parallel and Distributed Computing with MATLAB 2018 The MathWorks, Inc. 1 Practical Application of Parallel Computing Why parallel computing? Need faster insight on more complex problems with larger datasets

More information

Modeling a 4G LTE System in MATLAB

Modeling a 4G LTE System in MATLAB Modeling a 4G LTE System in MATLAB Part 2: Simulation acceleration Houman Zarrinkoub PhD. Signal Processing Product Manager MathWorks houmanz@mathworks.com 2011 The MathWorks, Inc. 1 Why simulation acceleration?

More information

Parallel and Distributed Computing with MATLAB Gerardo Hernández Manager, Application Engineer

Parallel and Distributed Computing with MATLAB Gerardo Hernández Manager, Application Engineer Parallel and Distributed Computing with MATLAB Gerardo Hernández Manager, Application Engineer 2018 The MathWorks, Inc. 1 Practical Application of Parallel Computing Why parallel computing? Need faster

More information

Multicore Computer, GPU 및 Cluster 환경에서의 MATLAB Parallel Computing 기능

Multicore Computer, GPU 및 Cluster 환경에서의 MATLAB Parallel Computing 기능 Multicore Computer, GPU 및 Cluster 환경에서의 MATLAB Parallel Computing 기능 성호현 MathWorks Korea 2012 The MathWorks, Inc. 1 A Question to Consider Do you want to speed up your algorithms? If so Do you have a multi-core

More information

Parallel Computing with MATLAB

Parallel Computing with MATLAB Parallel Computing with MATLAB CSCI 4850/5850 High-Performance Computing Spring 2018 Tae-Hyuk (Ted) Ahn Department of Computer Science Program of Bioinformatics and Computational Biology Saint Louis University

More information

2015 The MathWorks, Inc. 1

2015 The MathWorks, Inc. 1 2015 The MathWorks, Inc. 1 What s New in Release 2015a and 2014b Young Joon Lee Principal Application Engineer 2015 The MathWorks, Inc. 2 Agenda New Features Graphics and Data Design Performance Design

More information

Optimizing and Accelerating Your MATLAB Code

Optimizing and Accelerating Your MATLAB Code Optimizing and Accelerating Your MATLAB Code Sofia Mosesson Senior Application Engineer 2016 The MathWorks, Inc. 1 Agenda Optimizing for loops and using vector and matrix operations Indexing in different

More information

Data Analytics with MATLAB

Data Analytics with MATLAB Data Analytics with MATLAB Tackling the Challenges of Big Data Adrienne James, PhD MathWorks 7 th October 2014 2014 The MathWorks, Inc. 1 Big Data in Industry ENERGY Asset Optimization FINANCE Market Risk,

More information

Working with Large Sets of Images in MATLAB Just Got Easier Avi Nehemiah

Working with Large Sets of Images in MATLAB Just Got Easier Avi Nehemiah Working with Large Sets of Images in MATLAB Just Got Easier Avi Nehemiah 2015 The MathWorks, Inc. 1 Challenges Posed by Large Sets of Images 1. How do I import several thousand images into MATLAB? 2. Can

More information

Technical Computing with MATLAB

Technical Computing with MATLAB Technical Computing with MATLAB University Of Bath Seminar th 19 th November 2010 Adrienne James (Application Engineering) 1 Agenda Introduction to MATLAB Importing, visualising and analysing data from

More information

Mit MATLAB auf der Überholspur Methoden zur Beschleunigung von MATLAB Anwendungen

Mit MATLAB auf der Überholspur Methoden zur Beschleunigung von MATLAB Anwendungen Mit MATLAB auf der Überholspur Methoden zur Beschleunigung von MATLAB Anwendungen Michael Glaßer Application Engineering MathWorks Germany 2014 The MathWorks, Inc. 1 Key Takeaways 1. Speed up your serial

More information

Integrate MATLAB Analytics into Enterprise Applications

Integrate MATLAB Analytics into Enterprise Applications Integrate Analytics into Enterprise Applications Lyamine Hedjazi 2015 The MathWorks, Inc. 1 Data Analytics Workflow Preprocessing Data Business Systems Build Algorithms Smart Connected Systems Take Decisions

More information

Large Data in MATLAB: A Seismic Data Processing Case Study U. M. Sundar Senior Application Engineer

Large Data in MATLAB: A Seismic Data Processing Case Study U. M. Sundar Senior Application Engineer Large Data in MATLAB: A Seismic Data Processing Case Study U. M. Sundar Senior Application Engineer 2013 MathWorks, Inc. 1 Problem Statement: Scaling Up Seismic Analysis Challenge: Developing a seismic

More information

Integrate MATLAB Analytics into Enterprise Applications

Integrate MATLAB Analytics into Enterprise Applications Integrate Analytics into Enterprise Applications Aurélie Urbain MathWorks Consulting Services 2015 The MathWorks, Inc. 1 Data Analytics Workflow Data Acquisition Data Analytics Analytics Integration Business

More information

MATLAB. Senior Application Engineer The MathWorks Korea The MathWorks, Inc. 2

MATLAB. Senior Application Engineer The MathWorks Korea The MathWorks, Inc. 2 1 Senior Application Engineer The MathWorks Korea 2017 The MathWorks, Inc. 2 Data Analytics Workflow Business Systems Smart Connected Systems Data Acquisition Engineering, Scientific, and Field Business

More information

High Performance and GPU Computing in MATLAB

High Performance and GPU Computing in MATLAB High Performance and GPU Computing in MATLAB Jan Houška houska@humusoft.cz http://www.humusoft.cz 1 About HUMUSOFT Company: Humusoft s.r.o. Founded: 1990 Number of employees: 18 Location: Praha 8, Pobřežní

More information

개발과정에서의 MATLAB 과 C 의연동 ( 영상처리분야 )

개발과정에서의 MATLAB 과 C 의연동 ( 영상처리분야 ) 개발과정에서의 MATLAB 과 C 의연동 ( 영상처리분야 ) Application Engineer Caleb Kim 2016 The MathWorks, Inc. 1 Algorithm Development with MATLAB for C/C++ Programmers Objectives Use MATLAB throughout algorithm development

More information

Parallel Computing with MATLAB on Discovery Cluster

Parallel Computing with MATLAB on Discovery Cluster Parallel Computing with MATLAB on Discovery Cluster Northeastern University Research Computing: Nilay K Roy, MS Computer Science, Ph.D Computational Physics Lets look at the Discovery Cluster Matlab environment

More information

BIG DATA: Data Analytics with MATLAB Christophe POUILLOT Senior Consultant MathWorks

BIG DATA: Data Analytics with MATLAB Christophe POUILLOT Senior Consultant MathWorks BIG DATA: Data Analytics with MATLAB Christophe POUILLOT Senior Consultant MathWorks christophe.pouillot@mathworks.fr 2014 The MathWorks, Inc. 1 Definition of Big Data Data so large and complex that it

More information

Moving MATLAB Algorithms into Complete Designs with Fixed-Point Simulation and Code Generation

Moving MATLAB Algorithms into Complete Designs with Fixed-Point Simulation and Code Generation Moving MATLAB Algorithms into Complete Designs with Fixed-Point Simulation and Code Generation Houman Zarrinkoub, PhD. Product Manager Signal Processing Toolboxes The MathWorks Inc. 2007 The MathWorks,

More information

GPU ACCELERATED DATABASE MANAGEMENT SYSTEMS

GPU ACCELERATED DATABASE MANAGEMENT SYSTEMS CIS 601 - Graduate Seminar Presentation 1 GPU ACCELERATED DATABASE MANAGEMENT SYSTEMS PRESENTED BY HARINATH AMASA CSU ID: 2697292 What we will talk about.. Current problems GPU What are GPU Databases GPU

More information

Scaling MATLAB. for Your Organisation and Beyond. Rory Adams The MathWorks, Inc. 1

Scaling MATLAB. for Your Organisation and Beyond. Rory Adams The MathWorks, Inc. 1 Scaling MATLAB for Your Organisation and Beyond Rory Adams 2015 The MathWorks, Inc. 1 MATLAB at Scale Front-end scaling Scale with increasing access requests Back-end scaling Scale with increasing computational

More information

2^48 - keine Angst vor großen Datensätzen in MATLAB

2^48 - keine Angst vor großen Datensätzen in MATLAB 2^48 - keine Angst vor großen Datensätzen in MATLAB 9. July 2014 Rainer Mümmler Application Engineering Group 2014 The MathWorks, Inc. 1 Challenges with Large Data Sets Out of memory Running out of address

More information

What s New MATLAB and Simulink

What s New MATLAB and Simulink What s New MATLAB and Simulink Ascension Vizinho-Coutry Application Engineer Manager MathWorks Ascension.Vizinho-Coutry@mathworks.fr Daniel Martins Application Engineer MathWorks Daniel.Martins@mathworks.fr

More information

Introduction to C and HDL Code Generation from MATLAB

Introduction to C and HDL Code Generation from MATLAB Introduction to C and HDL Code Generation from MATLAB 이웅재차장 Senior Application Engineer 2012 The MathWorks, Inc. 1 Algorithm Development Process Requirements Research & Design Explore and discover Design

More information

Modeling a 4G LTE System in MATLAB

Modeling a 4G LTE System in MATLAB Modeling a 4G LTE System in MATLAB Part 3: Path to implementation (C and HDL) Houman Zarrinkoub PhD. Signal Processing Product Manager MathWorks houmanz@mathworks.com 2011 The MathWorks, Inc. 1 LTE Downlink

More information

Speeding up MATLAB Applications The MathWorks, Inc.

Speeding up MATLAB Applications The MathWorks, Inc. Speeding up MATLAB Applications 2009 The MathWorks, Inc. Agenda Leveraging the power of vector & matrix operations Addressing bottlenecks Utilizing additional processing power Summary 2 Example: Block

More information

Parallel Computing with MATLAB

Parallel Computing with MATLAB Parallel Computing with MATLAB Jos Martin Principal Architect, Parallel Computing Tools jos.martin@mathworks.co.uk 1 2013 The MathWorks, Inc. www.matlabexpo.com Code used in this presentation can be found

More information

Advanced Software Development with MATLAB

Advanced Software Development with MATLAB Advanced Software Development with MATLAB From research and prototype to production 2017 The MathWorks, Inc. 1 What Are Your Software Development Concerns? Accuracy Compatibility Cost Developer Expertise

More information

Parallel Computing with MATLAB

Parallel Computing with MATLAB Parallel Computing with MATLAB Jos Martin Principal Architect, Parallel Computing Tools jos.martin@mathworks.co.uk 2015 The MathWorks, Inc. 1 Overview Scene setting Task Parallel (par*) Why doesn t it

More information

Big Data con MATLAB. Lucas García The MathWorks, Inc. 1

Big Data con MATLAB. Lucas García The MathWorks, Inc. 1 Big Data con MATLAB Lucas García 2015 The MathWorks, Inc. 1 Agenda Introduction Remote Arrays in MATLAB Tall Arrays for Big Data Scaling up Summary 2 Architecture of an analytics system Data from instruments

More information

What's New in MATLAB for Engineering Data Analytics?

What's New in MATLAB for Engineering Data Analytics? What's New in MATLAB for Engineering Data Analytics? Will Wilson Application Engineer MathWorks, Inc. 2017 The MathWorks, Inc. 1 Agenda Data Types Tall Arrays for Big Data Machine Learning (for Everyone)

More information

Embarquez votre Intelligence Artificielle (IA) sur CPU, GPU et FPGA

Embarquez votre Intelligence Artificielle (IA) sur CPU, GPU et FPGA Embarquez votre Intelligence Artificielle (IA) sur CPU, GPU et FPGA Pierre Nowodzienski Engineer pierre.nowodzienski@mathworks.fr 2018 The MathWorks, Inc. 1 From Data to Business value Make decisions Get

More information

What s New for MATLAB David Willingham

What s New for MATLAB David Willingham What s New for MATLAB David Willingham 2015 The MathWorks, Inc. 1 MATLAB Execution Engine Redesigned execution engine runs MATLAB code faster All MATLAB code is now JIT compiled A platform for future improvements

More information

Deep learning in MATLAB From Concept to CUDA Code

Deep learning in MATLAB From Concept to CUDA Code Deep learning in MATLAB From Concept to CUDA Code Roy Fahn Applications Engineer Systematics royf@systematics.co.il 03-7660111 Ram Kokku Principal Engineer MathWorks ram.kokku@mathworks.com 2017 The MathWorks,

More information

Di Zhao Ohio State University MVAPICH User Group (MUG) Meeting, August , Columbus Ohio

Di Zhao Ohio State University MVAPICH User Group (MUG) Meeting, August , Columbus Ohio Di Zhao zhao.1029@osu.edu Ohio State University MVAPICH User Group (MUG) Meeting, August 26-27 2013, Columbus Ohio Nvidia Kepler K20X Intel Xeon Phi 7120 Launch Date November 2012 Q2 2013 Processor Per-processor

More information

Scaling up MATLAB Analytics Marta Wilczkowiak, PhD Senior Applications Engineer MathWorks

Scaling up MATLAB Analytics Marta Wilczkowiak, PhD Senior Applications Engineer MathWorks Scaling up MATLAB Analytics Marta Wilczkowiak, PhD Senior Applications Engineer MathWorks 2013 The MathWorks, Inc. 1 Agenda Giving access to your analytics to more users Handling larger problems 2 When

More information

designing a GPU Computing Solution

designing a GPU Computing Solution designing a GPU Computing Solution Patrick Van Reeth EMEA HPC Competency Center - GPU Computing Solutions Saturday, May the 29th, 2010 1 2010 Hewlett-Packard Development Company, L.P. The information contained

More information

Integrating Advanced Analytics with Big Data

Integrating Advanced Analytics with Big Data Integrating Advanced Analytics with Big Data Ian McKenna, Ph.D. Senior Financial Engineer 2017 The MathWorks, Inc. 1 The Goal SCALE! 2 The Solution tall 3 Agenda Introduction to tall data Case Study: Predicting

More information

System Requirements & Platform Availability by Product for R2016b

System Requirements & Platform Availability by Product for R2016b & Platform Availability by Product for R2016b View general system requirements. Product Aerospace Blockset Requires Aerospace Control recommended Aerospace Antenna RF recommended Phased Array recommended

More information

General Purpose GPU Computing in Partial Wave Analysis

General Purpose GPU Computing in Partial Wave Analysis JLAB at 12 GeV - INT General Purpose GPU Computing in Partial Wave Analysis Hrayr Matevosyan - NTC, Indiana University November 18/2009 COmputationAL Challenges IN PWA Rapid Increase in Available Data

More information

컴퓨터비전의최신기술 : Deep Learning, 3D Vision and Embedded Vision

컴퓨터비전의최신기술 : Deep Learning, 3D Vision and Embedded Vision 1 컴퓨터비전의최신기술 : Deep Learning, 3D Vision and Embedded Vision 김종남 Application Engineer 2017 The MathWorks, Inc. 2 Three Main Topics New capabilities for computer vision system design: Deep Learning 3-D Vision

More information

Integrating MATLAB Analytics into Business-Critical Applications Marta Wilczkowiak Senior Applications Engineer MathWorks

Integrating MATLAB Analytics into Business-Critical Applications Marta Wilczkowiak Senior Applications Engineer MathWorks Integrating MATLAB Analytics into Business-Critical Applications Marta Wilczkowiak Senior Applications Engineer MathWorks 2015 The MathWorks, Inc. 1 Problem statement Democratization: Is it possible to

More information

Renderscript Accelerated Advanced Image and Video Processing on ARM Mali T-600 GPUs. Lihua Zhang, Ph.D. MulticoreWare Inc.

Renderscript Accelerated Advanced Image and Video Processing on ARM Mali T-600 GPUs. Lihua Zhang, Ph.D. MulticoreWare Inc. Renderscript Accelerated Advanced Image and Video Processing on ARM Mali T-600 GPUs Lihua Zhang, Ph.D. MulticoreWare Inc. lihua@multicorewareinc.com Overview More & more mobile apps are beginning to require

More information

Stream Processing with CUDA TM A Case Study Using Gamebryo's Floodgate Technology

Stream Processing with CUDA TM A Case Study Using Gamebryo's Floodgate Technology Stream Processing with CUDA TM A Case Study Using Gamebryo's Floodgate Technology Dan Amerson, Technical Director, Emergent Game Technologies Purpose Why am I giving this talk? To answer this question:

More information

Integrate MATLAB Analytics into Enterprise Applications

Integrate MATLAB Analytics into Enterprise Applications Integrate Analytics into Enterprise Applications Dr. Roland Michaely 2015 The MathWorks, Inc. 1 Data Analytics Workflow Access and Explore Data Preprocess Data Develop Predictive Models Integrate Analytics

More information

Introduction to MATLAB application deployment

Introduction to MATLAB application deployment Introduction to application deployment Antti Löytynoja, Application Engineer 2015 The MathWorks, Inc. 1 Technical Computing with Products Access Explore & Create Share Options: Files Data Software Data

More information

MATLAB: The challenges involved in providing a high-level language on a GPU

MATLAB: The challenges involved in providing a high-level language on a GPU MATLAB: The challenges involved in providing a high-level language on a GPU Jos Martin jos.martin@mathworks.co.uk 2013 The MathWorks, Inc. 1 Agenda Why did we introduce GPU support? What did we do? What

More information

N-Body Simulation using CUDA. CSE 633 Fall 2010 Project by Suraj Alungal Balchand Advisor: Dr. Russ Miller State University of New York at Buffalo

N-Body Simulation using CUDA. CSE 633 Fall 2010 Project by Suraj Alungal Balchand Advisor: Dr. Russ Miller State University of New York at Buffalo N-Body Simulation using CUDA CSE 633 Fall 2010 Project by Suraj Alungal Balchand Advisor: Dr. Russ Miller State University of New York at Buffalo Project plan Develop a program to simulate gravitational

More information

Automated Trading with MATLAB Stuart Kozola Computational Finance

Automated Trading with MATLAB Stuart Kozola Computational Finance Automated Trading with MATLAB Stuart Kozola Computational Finance 2012 The MathWorks, Inc. 1 Challenges when developing and implementing trading strategies and systems Increasing complexity More data More

More information

G P G P U : H I G H - P E R F O R M A N C E C O M P U T I N G

G P G P U : H I G H - P E R F O R M A N C E C O M P U T I N G Joined Advanced Student School (JASS) 2009 March 29 - April 7, 2009 St. Petersburg, Russia G P G P U : H I G H - P E R F O R M A N C E C O M P U T I N G Dmitry Puzyrev St. Petersburg State University Faculty

More information

CUDA PROGRAMMING MODEL Chaithanya Gadiyam Swapnil S Jadhav

CUDA PROGRAMMING MODEL Chaithanya Gadiyam Swapnil S Jadhav CUDA PROGRAMMING MODEL Chaithanya Gadiyam Swapnil S Jadhav CMPE655 - Multiple Processor Systems Fall 2015 Rochester Institute of Technology Contents What is GPGPU? What s the need? CUDA-Capable GPU Architecture

More information

MATLAB AND PARALLEL COMPUTING

MATLAB AND PARALLEL COMPUTING Image Processing & Communication, vol. 17, no. 4, pp. 207-216 DOI: 10.2478/v10248-012-0048-5 207 MATLAB AND PARALLEL COMPUTING MAGDALENA SZYMCZYK, PIOTR SZYMCZYK AGH University of Science and Technology,

More information

INTRODUCTION TO MATLAB PARALLEL COMPUTING TOOLBOX

INTRODUCTION TO MATLAB PARALLEL COMPUTING TOOLBOX INTRODUCTION TO MATLAB PARALLEL COMPUTING TOOLBOX Keith Ma ---------------------------------------- keithma@bu.edu Research Computing Services ----------- help@rcs.bu.edu Boston University ----------------------------------------------------

More information

Tesla GPU Computing A Revolution in High Performance Computing

Tesla GPU Computing A Revolution in High Performance Computing Tesla GPU Computing A Revolution in High Performance Computing Mark Harris, NVIDIA Agenda Tesla GPU Computing CUDA Fermi What is GPU Computing? Introduction to Tesla CUDA Architecture Programming & Memory

More information

Introduction to MATLAB for Finance

Introduction to MATLAB for Finance Introduction to MATLAB for Finance Bratislava June 4, 2009 2009 The MathWorks, Inc. Jörg-M. Sautter Application Engineer The MathWorks MATLAB Benefits Solutions to access, explore, and share A seamless

More information

SEASHORE / SARUMAN. Short Read Matching using GPU Programming. Tobias Jakobi

SEASHORE / SARUMAN. Short Read Matching using GPU Programming. Tobias Jakobi SEASHORE SARUMAN Summary 1 / 24 SEASHORE / SARUMAN Short Read Matching using GPU Programming Tobias Jakobi Center for Biotechnology (CeBiTec) Bioinformatics Resource Facility (BRF) Bielefeld University

More information

What s New in MATLAB May 16, 2017

What s New in MATLAB May 16, 2017 What s New in MATLAB May 16, 2017 2017 The MathWorks, Inc. 1 Agenda MATLAB Foundation Working with Data Building & Sharing MATLAB Applications Application Specific Enhancements Summary and Wrap-up 2 Agenda

More information

Pervasive DataRush TM

Pervasive DataRush TM Pervasive DataRush TM Parallel Data Analysis with KNIME www.pervasivedatarush.com Company Overview Global Software Company Tens of thousands of users across the globe Americas, EMEA, Asia ~230 employees

More information

NVIDIA DGX SYSTEMS PURPOSE-BUILT FOR AI

NVIDIA DGX SYSTEMS PURPOSE-BUILT FOR AI NVIDIA DGX SYSTEMS PURPOSE-BUILT FOR AI Overview Unparalleled Value Product Portfolio Software Platform From Desk to Data Center to Cloud Summary AI researchers depend on computing performance to gain

More information

How Real-Time Testing Improves the Design of a PMSM Controller

How Real-Time Testing Improves the Design of a PMSM Controller How Real-Time Testing Improves the Design of a PMSM Controller Prasanna Deshpande Control Design & Automation Application Engineer MathWorks 2015 The MathWorks, Inc. 1 Problem Statement: Design speed control

More information

Particle-in-Cell Simulations on Modern Computing Platforms. Viktor K. Decyk and Tajendra V. Singh UCLA

Particle-in-Cell Simulations on Modern Computing Platforms. Viktor K. Decyk and Tajendra V. Singh UCLA Particle-in-Cell Simulations on Modern Computing Platforms Viktor K. Decyk and Tajendra V. Singh UCLA Outline of Presentation Abstraction of future computer hardware PIC on GPUs OpenCL and Cuda Fortran

More information

MatCL - OpenCL MATLAB Interface

MatCL - OpenCL MATLAB Interface MatCL - OpenCL MATLAB Interface MatCL - OpenCL MATLAB Interface Slide 1 MatCL - OpenCL MATLAB Interface OpenCL toolkit for Mathworks MATLAB/SIMULINK Compile & Run OpenCL Kernels Handles OpenCL memory management

More information

MATLAB is a multi-paradigm numerical computing environment fourth-generation programming language. A proprietary programming language developed by

MATLAB is a multi-paradigm numerical computing environment fourth-generation programming language. A proprietary programming language developed by 1 MATLAB is a multi-paradigm numerical computing environment fourth-generation programming language. A proprietary programming language developed by MathWorks In 2004, MATLAB had around one million users

More information

CUDA Optimizations WS Intelligent Robotics Seminar. Universität Hamburg WS Intelligent Robotics Seminar Praveen Kulkarni

CUDA Optimizations WS Intelligent Robotics Seminar. Universität Hamburg WS Intelligent Robotics Seminar Praveen Kulkarni CUDA Optimizations WS 2014-15 Intelligent Robotics Seminar 1 Table of content 1 Background information 2 Optimizations 3 Summary 2 Table of content 1 Background information 2 Optimizations 3 Summary 3

More information

Model-Based Design for effective HW/SW Co-Design Alexander Schreiber Senior Application Engineer MathWorks, Germany

Model-Based Design for effective HW/SW Co-Design Alexander Schreiber Senior Application Engineer MathWorks, Germany Model-Based Design for effective HW/SW Co-Design Alexander Schreiber Senior Application Engineer MathWorks, Germany 2013 The MathWorks, Inc. 1 Agenda Model-Based Design of embedded Systems Software Implementation

More information

Designing and Targeting Video Processing Subsystems for Hardware

Designing and Targeting Video Processing Subsystems for Hardware 1 Designing and Targeting Video Processing Subsystems for Hardware 정승혁과장 Senior Application Engineer MathWorks Korea 2017 The MathWorks, Inc. 2 Pixel-stream Frame-based Process : From Algorithm to Hardware

More information

Behind Today s Trends The Technologies Driving Change. Paul Smith Director Consulting Services

Behind Today s Trends The Technologies Driving Change. Paul Smith Director Consulting Services Behind Today s Trends The Technologies Driving Change Paul Smith Director Consulting Services Industry 4.0 Big Data Wearable Tech Cloud Computing Internet of Things MOOC Trends from 2009 Social Computing

More information

Introduction to Matlab GPU Acceleration for. Computational Finance. Chuan- Hsiang Han 1. Section 1: Introduction

Introduction to Matlab GPU Acceleration for. Computational Finance. Chuan- Hsiang Han 1. Section 1: Introduction Introduction to Matlab GPU Acceleration for Computational Finance Chuan- Hsiang Han 1 Abstract: This note aims to introduce the concept of GPU computing in Matlab and demonstrates several numerical examples

More information

Introduction to GPU hardware and to CUDA

Introduction to GPU hardware and to CUDA Introduction to GPU hardware and to CUDA Philip Blakely Laboratory for Scientific Computing, University of Cambridge Philip Blakely (LSC) GPU introduction 1 / 35 Course outline Introduction to GPU hardware

More information

What s New with the MATLAB and Simulink Product Families. Marta Wilczkowiak & Coorous Mohtadi Application Engineering Group

What s New with the MATLAB and Simulink Product Families. Marta Wilczkowiak & Coorous Mohtadi Application Engineering Group What s New with the MATLAB and Simulink Product Families Marta Wilczkowiak & Coorous Mohtadi Application Engineering Group 1 Area MATLAB Math, Statistics, and Optimization Application Deployment Parallel

More information

SDACCEL DEVELOPMENT ENVIRONMENT. The Xilinx SDAccel Development Environment. Bringing The Best Performance/Watt to the Data Center

SDACCEL DEVELOPMENT ENVIRONMENT. The Xilinx SDAccel Development Environment. Bringing The Best Performance/Watt to the Data Center SDAccel Environment The Xilinx SDAccel Development Environment Bringing The Best Performance/Watt to the Data Center Introduction Data center operators constantly seek more server performance. Currently

More information

Navigating Big Data with MATLAB

Navigating Big Data with MATLAB Navigating Big Data with MATLAB Isaac Noh Application Engineer 2015 The MathWorks, Inc. 1 How big is big? What does Big Data even mean? Big data is a term for data sets that are so large or complex that

More information

Massively Parallel Architectures

Massively Parallel Architectures Massively Parallel Architectures A Take on Cell Processor and GPU programming Joel Falcou - LRI joel.falcou@lri.fr Bat. 490 - Bureau 104 20 janvier 2009 Motivation The CELL processor Harder,Better,Faster,Stronger

More information

What s New in MATLAB and Simulink The MathWorks, Inc. 1

What s New in MATLAB and Simulink The MathWorks, Inc. 1 What s New in MATLAB Simulink 2015 The MathWorks, Inc. 1 Engineers scientists 2 Engineers scientists Develop algorithms Analyze data write MATLAB code. 3 Engineers scientists deploy algorithms applications

More information

Real-Time Testing in a Modern, Agile Development Workflow

Real-Time Testing in a Modern, Agile Development Workflow Real-Time Testing in a Modern, Agile Development Workflow Simon Eriksson Application Engineer 2015 The MathWorks, Inc. 1 Demo Going from Desktop Testing to Real-Time Testing 2 Key Take-Aways From This

More information

What s New in MATLAB and Simulink Young Joon Lee Principal Application Engineer

What s New in MATLAB and Simulink Young Joon Lee Principal Application Engineer What s New in MATLAB Simulink Young Joon Lee Principal Application Engineer 2016 The MathWorks, Inc. 1 Engineers scientists 2 Engineers scientists Develop algorithms Analyze data write MATLAB code. 3 Engineers

More information

Application Development and Deployment With MATLAB

Application Development and Deployment With MATLAB Application Development and Deployment With Jean-Philippe Villaréal Application Engineer Applications Engineering Group MathWorks Benelux June 11, 2015 2015 The MathWorks, Inc. 1 Typical Industry Challenges

More information

Daniel D. Warner. May 31, Introduction to Parallel Matlab. Daniel D. Warner. Introduction. Matlab s 5-fold way. Basic Matlab Example

Daniel D. Warner. May 31, Introduction to Parallel Matlab. Daniel D. Warner. Introduction. Matlab s 5-fold way. Basic Matlab Example to May 31, 2010 What is Matlab? Matlab is... an Integrated Development Environment for solving numerical problems in computational science. a collection of state-of-the-art algorithms for scientific computing

More information

Block Lanczos-Montgomery method over large prime fields with GPU accelerated dense operations

Block Lanczos-Montgomery method over large prime fields with GPU accelerated dense operations Block Lanczos-Montgomery method over large prime fields with GPU accelerated dense operations Nikolai Zamarashkin and Dmitry Zheltkov INM RAS, Gubkina 8, Moscow, Russia {nikolai.zamarashkin,dmitry.zheltkov}@gmail.com

More information

Speed Up Your Codes Using GPU

Speed Up Your Codes Using GPU Speed Up Your Codes Using GPU Wu Di and Yeo Khoon Seng (Department of Mechanical Engineering) The use of Graphics Processing Units (GPU) for rendering is well known, but their power for general parallel

More information

High-Performance Data Loading and Augmentation for Deep Neural Network Training

High-Performance Data Loading and Augmentation for Deep Neural Network Training High-Performance Data Loading and Augmentation for Deep Neural Network Training Trevor Gale tgale@ece.neu.edu Steven Eliuk steven.eliuk@gmail.com Cameron Upright c.upright@samsung.com Roadmap 1. The General-Purpose

More information

Optimization solutions for the segmented sum algorithmic function

Optimization solutions for the segmented sum algorithmic function Optimization solutions for the segmented sum algorithmic function ALEXANDRU PÎRJAN Department of Informatics, Statistics and Mathematics Romanian-American University 1B, Expozitiei Blvd., district 1, code

More information

Optimize DSP Designs and Code using Fixed-Point Designer

Optimize DSP Designs and Code using Fixed-Point Designer Optimize DSP Designs and Code using Fixed-Point Designer MathWorks Korea 이웅재부장 Senior Application Engineer 2013 The MathWorks, Inc. 1 Agenda Fixed-point concepts Introducing Fixed-Point Designer Overview

More information

REAL PERFORMANCE RESULTS WITH VMWARE HORIZON AND VIEWPLANNER

REAL PERFORMANCE RESULTS WITH VMWARE HORIZON AND VIEWPLANNER April 4-7, 2016 Silicon Valley REAL PERFORMANCE RESULTS WITH VMWARE HORIZON AND VIEWPLANNER Manvender Rawat, NVIDIA Jason K. Lee, NVIDIA Uday Kurkure, VMware Inc. Overview of VMware Horizon 7 and NVIDIA

More information

An Introduction to Big Data Formats

An Introduction to Big Data Formats Introduction to Big Data Formats 1 An Introduction to Big Data Formats Understanding Avro, Parquet, and ORC WHITE PAPER Introduction to Big Data Formats 2 TABLE OF TABLE OF CONTENTS CONTENTS INTRODUCTION

More information

Designing a Domain-specific Language to Simulate Particles. dan bailey

Designing a Domain-specific Language to Simulate Particles. dan bailey Designing a Domain-specific Language to Simulate Particles dan bailey Double Negative Largest Visual Effects studio in Europe Offices in London and Singapore Large and growing R & D team Squirt Fluid Solver

More information

LDPC Simulation With CUDA GPU

LDPC Simulation With CUDA GPU LDPC Simulation With CUDA GPU EE179 Final Project Kangping Hu June 3 rd 2014 1 1. Introduction This project is about simulating the performance of binary Low-Density-Parity-Check-Matrix (LDPC) Code with

More information

Accelerate your SAS analytics to take the gold

Accelerate your SAS analytics to take the gold Accelerate your SAS analytics to take the gold A White Paper by Fuzzy Logix Whatever the nature of your business s analytics environment we are sure you are under increasing pressure to deliver more: more

More information

The Evolution of Big Data Platforms and Data Science

The Evolution of Big Data Platforms and Data Science IBM Analytics The Evolution of Big Data Platforms and Data Science ECC Conference 2016 Brandon MacKenzie June 13, 2016 2016 IBM Corporation Hello, I m Brandon MacKenzie. I work at IBM. Data Science - Offering

More information

Analyzing Fleet Data with MATLAB and Spark

Analyzing Fleet Data with MATLAB and Spark Analyzing Fleet Data with MATLAB and Spark Christoph Stockhammer 2018 The MathWorks, Inc. 1 What does Fleet mean? A Fleet is any group of things that can generate data and that you would like to look at

More information

GPU Programming. Lecture 1: Introduction. Miaoqing Huang University of Arkansas 1 / 27

GPU Programming. Lecture 1: Introduction. Miaoqing Huang University of Arkansas 1 / 27 1 / 27 GPU Programming Lecture 1: Introduction Miaoqing Huang University of Arkansas 2 / 27 Outline Course Introduction GPUs as Parallel Computers Trend and Design Philosophies Programming and Execution

More information

Framework of rcuda: An Overview

Framework of rcuda: An Overview Framework of rcuda: An Overview Mohamed Hussain 1, M.B.Potdar 2, Third Viraj Choksi 3 11 Research scholar, VLSI & Embedded Systems, Gujarat Technological University, Ahmedabad, India 2 Project Director,

More information

CSE 599 I Accelerated Computing - Programming GPUS. Memory performance

CSE 599 I Accelerated Computing - Programming GPUS. Memory performance CSE 599 I Accelerated Computing - Programming GPUS Memory performance GPU Teaching Kit Accelerated Computing Module 6.1 Memory Access Performance DRAM Bandwidth Objective To learn that memory bandwidth

More information

high performance medical reconstruction using stream programming paradigms

high performance medical reconstruction using stream programming paradigms high performance medical reconstruction using stream programming paradigms This Paper describes the implementation and results of CT reconstruction using Filtered Back Projection on various stream programming

More information

2015 The MathWorks, Inc. 1

2015 The MathWorks, Inc. 1 2015 The MathWorks, Inc. 1 웨어러블디바이스의신호분석 Senior Application Engineer 김종남 2015 The MathWorks, Inc. 2 Agenda Internet Of Things Signal Analytics and Classification : On data from wareable and mobile device

More information