accelerate .net appliations with alea...
TRANSCRIPT
Accelerate .NET Appliations with Alea GPU
GTC Express Webinar
Dr. Daniel Egloff
July 8, 2015
Graphics Processing Units
GPUs are everywhere
Cross Platform Frameworks
.NET gains more momentum
GPU Programming on .NET
Alea GPU
Alea GPU
Cross platform
compatibility
Servers Desktops & Laptops
90% 8% 37% 30% 33%
Smartphones & Tablets
53% 31% 2%
Alea GPU
Improve
productivity
Alea GPU
Reduce
development time
Alea GPU
Increase agility
Alea GPU
Supported .NET languages C#, F#, VB
Supported operating systems
– Windows
– Linux
– Mac OS X
Integrated libraries
– cuBlas
– cuDNN
– cuRand (V 2.2)
– More to come with V 2.3
Alea GPU Compilation
Compilation steps
.NET Compilers Alea GPU Compiler NVVM Compiler CUDA Driver
LLVM IR PTX GPU
C#, F#, VB
F#
IL
Quotations
Alea GPU Packages
Alea.CUDA
– Compiler core package
Alea.CUDA.IL
– Extension for IL based compilation
Alea.CUDA.Fody
– Convenience deployment package and AOT compilation tool
Alea.CUDA.Unbound
– Performance primitives and libraries
Alea.IL
– IL disassembly and support tools
Examples
Basic transform in F# and C#
Getting Started - Transform
Alea GPU Coding Techniques
Method based
Class instance based
Template based
More details in Alea GPU tutorial
Butterfly Reduction