Graphical Processing Units to Accelerate Orthorectification, Atmospheric Correction and Transformations for Big Data

Similar documents
Graphical Processing Units to Accelerate Orthorectification, Atmospheric Correction and Transformations for Big Data

GeoImaging Accelerator Pansharp Test Results

ENVI THE PREMIER SOFTWARE FOR EXTRACTING INFORMATION FROM GEOSPATIAL IMAGERY.

The premier software for extracting information from geospatial imagery.

A New Cloud-based Deployment of Image Analysis Functionality

Stream Processing on GPUs Using Distributed Multimedia Middleware

GPU File System Encryption Kartik Kulkarni and Eugene Linkov

Computer Graphics Hardware An Overview

Guided Performance Analysis with the NVIDIA Visual Profiler

ENVI Services Engine: Scientific Data Analysis and Image Processing for the Cloud

High Performance GPGPU Computer for Embedded Systems

Virtualization of ArcGIS Pro. An Esri White Paper December 2015

On Demand Satellite Image Processing

Medical Image Processing on the GPU. Past, Present and Future. Anders Eklund, PhD Virginia Tech Carilion Research Institute

Graphics Cards and Graphics Processing Units. Ben Johnstone Russ Martin November 15, 2011

Enabling GPU-accelerated High Performance Geospatial Line-of-Sight Calculations

The Evolution of Computer Graphics. SVP, Content & Technology, NVIDIA

Next Generation GPU Architecture Code-named Fermi

E6895 Advanced Big Data Analytics Lecture 14:! NVIDIA GPU Examples and GPU on ios devices

Introduction to GPU Computing

Parallel Computing with MATLAB

Achieving Nanosecond Latency Between Applications with IPC Shared Memory Messaging

GPU System Architecture. Alan Gray EPCC The University of Edinburgh

ArcGIS Pro: Virtualizing in Citrix XenApp and XenDesktop. Emily Apsey Performance Engineer

Parallel Computing: Strategies and Implications. Dori Exterman CTO IncrediBuild.

NVIDIA CUDA Software and GPU Parallel Computing Architecture. David B. Kirk, Chief Scientist

Home Exam 3: Distributed Video Encoding using Dolphin PCI Express Networks. October 20 th 2015

NVIDIA GPUs in the Cloud

Findings in High-Speed OrthoMosaic

Benchmark Hadoop and Mars: MapReduce on cluster versus on GPU

~ Greetings from WSU CAPPLab ~

L20: GPU Architecture and Models

Clustering Billions of Data Points Using GPUs

Next Generation Operating Systems

Application. EDIUS and Intel s Sandy Bridge Technology

GPU Hardware and Programming Models. Jeremy Appleyard, September 2015

Choosing a Computer for Running SLX, P3D, and P5

Integer Computation of Image Orthorectification for High Speed Throughput

Using GPUs in the Cloud for Scalable HPC in Engineering and Manufacturing March 26, 2014

Programming models for heterogeneous computing. Manuel Ujaldón Nvidia CUDA Fellow and A/Prof. Computer Architecture Department University of Malaga

Files Used in this Tutorial

Intel DPDK Boosts Server Appliance Performance White Paper

Applications to Computational Financial and GPU Computing. May 16th. Dr. Daniel Egloff

1. INTRODUCTION Graphics 2

Keystone Image Management System

Introduction to GPGPU. Tiziano Diamanti

Providing On-Demand Situational Awareness

Accelerating Enterprise Applications and Reducing TCO with SanDisk ZetaScale Software

GPU for Scientific Computing. -Ali Saleh

Radar Image Processing with Clusters of Computers

ACCELERATING SELECT WHERE AND SELECT JOIN QUERIES ON A GPU

IP Video Rendering Basics

Infrastructure Matters: POWER8 vs. Xeon x86

Benchmarking Hadoop & HBase on Violin

Bringing Big Data Modelling into the Hands of Domain Experts

Introduction to Cloud Computing

Introduction to GP-GPUs. Advanced Computer Architectures, Cristina Silvano, Politecnico di Milano 1

Small Business Upgrades to Reliable, High-Performance Intel Xeon Processor-based Workstations to Satisfy Complex 3D Animation Needs

HPC with Multicore and GPUs

Speeding Up RSA Encryption Using GPU Parallelization

NVIDIA GeForce GTX 580 GPU Datasheet

Unified Computing Systems

Parallel Firewalls on General-Purpose Graphics Processing Units

Accelerating CFD using OpenFOAM with GPUs

Accelerating Hadoop MapReduce Using an In-Memory Data Grid

Towards Fast SQL Query Processing in DB2 BLU Using GPUs A Technology Demonstration. Sina Meraji sinamera@ca.ibm.com

AMD WHITE PAPER GETTING STARTED WITH SEQUENCEL. AMD Embedded Solutions 1

High Performance. CAEA elearning Series. Jonathan G. Dudley, Ph.D. 06/09/ CAE Associates

OpenPOWER Outlook AXEL KOEHLER SR. SOLUTION ARCHITECT HPC

IBM Platform Computing Cloud Service Ready to use Platform LSF & Symphony clusters in the SoftLayer cloud

Stingray Traffic Manager Sizing Guide

DIABLO TECHNOLOGIES MEMORY CHANNEL STORAGE AND VMWARE VIRTUAL SAN : VDI ACCELERATION

Introduction to GPU Programming Languages

The Future Of Animation Is Games

Low power GPUs a view from the industry. Edvard Sørgård

Desktop PC Buying Guide

System Requirements Table of contents

evm Virtualization Platform for Windows

RevoScaleR Speed and Scalability

How To Use Trackeye

Parallel Algorithm Engineering

NVIDIA Jetson TK1 Development Kit

Lecture 11: Multi-Core and GPU. Multithreading. Integration of multiple processor cores on a single chip.

VIRTU Universal MVP Installation Guide

Intelligent Heuristic Construction with Active Learning

How to choose a suitable computer

Removing Performance Bottlenecks in Databases with Red Hat Enterprise Linux and Violin Memory Flash Storage Arrays. Red Hat Performance Engineering

REAL-TIME STREAMING ANALYTICS DATA IN, ACTION OUT

Experiences on using GPU accelerators for data analysis in ROOT/RooFit

ultra fast SOM using CUDA

High-Density Network Flow Monitoring

Lecture 3: Modern GPUs A Hardware Perspective Mohamed Zahran (aka Z) mzahran@cs.nyu.edu

Infor Web UI Sizing and Deployment for a Thin Client Solution

Scalable Data Analysis in R. Lee E. Edlefsen Chief Scientist UserR! 2011

Scaling Objectivity Database Performance with Panasas Scale-Out NAS Storage

Accelerating Wavelet-Based Video Coding on Graphics Hardware

Speed Performance Improvement of Vehicle Blob Tracking System

Introduction GPU Hardware GPU Computing Today GPU Computing Example Outlook Summary. GPU Computing. Numerical Simulation - from Models to Software

The Big Data methodology in computer vision systems

Simulation Platform Overview

Transcription:

Graphical Processing Units to Accelerate Orthorectification, Atmospheric Correction and Transformations for Big Data Amanda O Connor, Bryan Justice, and A. Thomas Harris IN52A. Big Data in the Geosciences: New Analytics Methods and Parallel Algorithms I December 13, 2013 AGU 2013 Fall Meeting The information contained in this document pertains to software products and services that are subject to the controls of the Export Administration Regulations (EAR). The recipient is responsible for ensuring compliance to all applicable U.S. Export Control laws and regulations.

Agenda Why Earth Science/Remote Sensing Where Exelis VIS fits in GPU Background Earth Science where GPU can be effectively used Success Story

GPU, Why Earth Science/Remote Sensing? Long time Big Data Challenge Hundreds to Thousands of 100+mb images in a collect or large 10gb<< images Computationally intense numeric processing Need quick turn around in Intelligence, Disaster Management, or just increased throughput for large processing volumes

Where Exelis VIS Fits in. 35+ years of COTS software development to solve remote sensing problems that include Planetary Remote Sensing Earth Remote Sensing (Optical, Radar, Thermal, LiDAR, Sonar) Medical Imaging (PET, CT, MRI, etc) Two COTS products lines: IDL and ENVI IDL is an interpreted programming language designed to work with imagery ENVI is a full remote sensing application built in and extensible with IDL ENVI and IDL can be used in a distributed or cloud computing environment with a Services Engine component

What is GPU Acceleration? A graphics processing unit or GPU is a specialized processor that offloads 3D or 2D graphics rendering from the main CPU(s) In a personal computer, a GPU can be present on a video card, or it can be on the motherboard Their highly parallel structure makes them more effective than general-purpose CPUs for a range of complex algorithms Certain algorithms can be run on the GPU to greatly speed up numerical processing Most computers, including laptops, today have GPU(s)

High-level GPU Architecture (Why it can do what it can do) CPU (4 cores) GPU (>128 cores) Control Cache DRAM CPU Flow control (If, then) DRAM GPU Compute-intensive Highly parallel computation

Why aren t all your COTS products GPU enabled? Competing Architectures / Companies > Exelis VIS went with NVIDIA/CUDA because it s widely used > Very similar to C, which our existing staff has expertise in > Some projects re-purposable, but many are custom

Exelis VIS GPU Solution Developed a CUDA based GPU processing framework that can be redeployed Services group develops, this ensures meeting needs of specific architectures Worked with groups with BIG data analysis issues with time critical needs GPU enabled Existing ENVI and IDL routines, no reinventing the wheel, just make it go faster.

EXELIS VIS GPU Approach CUDA Compute Unified Device Architecture > Royalty-Free C Language extension to ANSI standard C99 > Complete SDK - Freely distributed > API for thread handling, memory management > Standard math libraries, BLAS, FFT Integrated with ENVI/IDL > Use of IDL s Internal API to create a DLM > Integrates fully into IDL as a system routine > Most flexible solution > Recommended for most applications > Maximum performance increases are achieved through custom kernel development > Can be deployed from ArcGIS

Earth Science Applications Spatial Processing Problem: Image projection and registration very slow with standard CPU processing This can delay using imagery to make time critical decisions where location is important e.g. Defense and Security, Disaster response/mitigation, Image production Image projection Orthorectification Orthorectification: a process that removes the geometric distortions introduced during image capture and produces an image product that has planimetric geometry, like a map. Image Courtesy Sylla Consult

Earth Science Applications Spatial Processing Problem: Image projection and registration very slow with standard CPU processing This can delay using imagery to make time critical decisions where location is important e.g. Defense and Security, Disaster response/mitigation, Image production Examples > Rigorous Frame Camera Model > Used in airborne platforms, small / medium format cameras > Use GPU to project camera frames to align with GIS layers > Resample data to a desired grid > Large format commercial satellite data > Orthorectification using Rational Polynomial Coefficients (RPC) > Resample and reproject to desired format

Spatial Processing: Orthorectification Example RPC Orthorectification Results Input / Output CPU Time GPU Time WV1 Point Collect 2.4gb 2+ Hours 3 Minutes (32k x 32k In, 35k x 35k Out) QuickBird 4-band Image 600mb (6878k x 7184k In, 8652k x 9204k Out) 15 Minutes 17 Seconds Hardware: Intel Core 2 Duo @ 2.6GHz, 4GB RAM, GTX280 GPU Elevation Model: SRTM Derived DTED Disk I/O is dominant (60% of total) GPU is only ~25% utilized!

GPU Ortho ArcGIS Integration With EXELIS VIS Integration with ArcGIS, call GPU enabled ENVI in an ArcGIS environment Available for any ENVI/IDL routine Harness GPU in a GIS Deploy best image processing practices to GIS users

Earth Science Applications Image Transforms Problem: Many imaging bands are highly correlated. Image transformations help remove correlation and boost signals of hard to find information in imagery or finding change. These transforms are computationally expensive Spectral Processing ICA/PCA > Calculations map very well to GPU > Functions are called iteratively > Very heavy use of matrix multiplication operations > Exelis VIS performed work to GPU enable image transforms for a government contract, this add on is freely available to certain segments of the US Government

Earth Science Applications Image Transforms Problem: Many imaging bands are highly correlated. Image transformations help remove correlation and boost signals of hard to find information in imagery or finding change. These transforms are computationally expensive 2002 2007 ICA Change ICA Band 6

Earth Science Applications Image Transforms (PCA) Benchmarks Input data set HSI cube: 614 samples x 1024 lines x 244 bands, 16-bit Integer, 300mb Hardware CPU: 6 Cores @ 3.2 GHz, RAM: 6GB GPU: NVIDIA GTX480, 1GB Video RAM, PCIe 2.0 CPU Time (seconds) GPU Time (seconds) Improvement 29.61 2.25 13X

Earth Science Applications: Atmospheric Correction Problem: Atmosphere interferes with data integrity and needs to be removed to earth science research and analysis, esp. looking an long term trends. This is a computationally heavy application that can easily be modified by GPU processing.

Earth Science Applications: Atmospheric Correction Benchmarks Input data set HSI cube: 614 samples x 1024 lines x 244 bands, 16-bit Integer, 300mb Hardware CPU: 6 Cores @ 3.2 GHz, RAM: 6GB GPU: NVIDIA GTX480, 1GB Video RAM, PCIe 2.0 CPU Time (seconds) GPU Time (seconds) Improvement 23.19 2.87 8X

Use ENVI Services Engine to task farm with multiple GPUs > With multiple GPUs, a desktop or laptop can behave as a small super computer > The ENVI and IDL Services Engine can distribute task to GPU workers > ESE is a COTS product available now > Limitation is still file I/O, but have potentially 1000s of cores in one machine with GPU use ENVI Services Engine DATA

Success Story: Range and Bearing Overview Small Aerial Photography Company Collects thermal and multispectral imagery, full motion ortho imagery over fires, disasters, pipeline monitoring, environmental assessment anything where imagery can help the mission in real time. Acquires MANY images and need to have images ortho d to accurately show hotspots and change. Solution Contracted EXELIS VIS to develop GPU solution for high-speed ortho Images collected and processed on plane with a laptop Laptop a low draw on power The fire features are exploited from the real-time ortho imagery Fire features stream into a common operating picture live

Success Story: Range and Bearing

Success Story: Range and Bearing Essentially, the creation of GPU based real-time processing and exploitation enables Range and Bearing's Spot-HAWK platform to provide government, media, and the public live geoint of what the wildfire is doing NOW, not a report of what happened yesterday. Doug Campbell, Range and Bearing President/CEO

Summary Exelis VIS has developed tools with GPU technology to process large volumes of imagery and create meaningful products in near real time With multiple GPUs a desktop or laptop can behave as a small super computer Image processing, in particular pixel analysis is very well suited for GPUs Reusing existing ENVI and IDL functionality keep cost low and maintains analytical repeatability Utilizing video card resources like NVIDIA products is a low cost way to get amazingly fast results for big data

Thank you! For Further information please contact Amanda.Oconnor@exelisvis.com or Thomas.Harris@exelisvis.com

UPCOMING GTC EXPRESS WEBINARS May 28: An Introduction to CUDA Programming June 3: The Next Steps for Folding@home June 4: Using NVIDIA GPUs for Real-time Data Processing in a Holographic Radar System July 16: GPU Architecture & the CUDA Memory Model August 12: Asynchronous Operations & Dynamic Parallelism in CUDA October 16: Essential CUDA Optimization Techniques www.gputechconf.com

NVIDIA GLOBAL IMPACT AWARD Recognizing groundbreaking work with GPUs in tackling key social and humanitarian problems $150,000 annual award Categories include: disease research, automotive safety, weather prediction impact.nvidia.com Submission deadline: Dec. 12, 2014 Winner announced at GTC 2015