lca13: exploiting arm gpu resources in open source software
Post on 13-Jun-2015
589 Views
Preview:
DESCRIPTION
TRANSCRIPT
GPGPU ON ARMTom Gall
tom.gall@linaro.org
SESSION GOALS
• What activity should Linaro pursue?
• What open source projects should we work with?
BOUNDARIES
• Lets not do any PHD dissertations
• Output must be open source
• Optimized stack should of course advance member goals
PARALLEL COMPUTING
Granularity
•
NEONGrid OpenStack MPI/OpenMPI OpenMP/pthreads
Multi-machine Single machine
OPEN CL
• Originally proposed by Apple
• API for using your resources including the GPU as a general purpose power house
• Khronos standard (holders of OpenGL)
• Open Compute Language
• ANSI-C99 w additions
• Open = anyone can implement
HSA
• Heterogeneous System Architecture
• hsafoundation.com
• HSA standards out for review
• A better OpenCL
• Better debug, HSAIL
QUALITIES IN A CANDIDATE
• Task parallelism
• Break up task over threads
• Data parallelism
• Same operation over lots of data
• Big wins for computationally significant data parallel algs
• Bad
• Lots of pointer chasing
• Calculations that require lots of communication or result dependent
PROJECTS
• Libjpeg vs libjpeg turbo
• SQLite
• Hadoop - map reduce
• HipHop?
LIBJPEG
• Software, NEON, OpenCL comparison possible
• Android & Linux
• code.google.com/p/jpeg-opencl/source/checkout
SQLITE
• Cuda (nVidia only)
• Implemented subset of SQLite vm on gpu
• Pbbakkum.com/db
• Claim of 20x-70x
• Source available, we could port to OpenCL
HADOOP
• MapReduce is a major piece of Hadoop
• http://ieeexplore.ieee.org/xpl/articleDetails.jsp?reload=true&arnumber=6227786
• Measured 1.6-2x improvement
• Used jocl (java bindings for OpenCL)
• Source?
PIGLIT
• Mesa test suite
• Includes a number of OpenCL tests
• Should be fairly straight forward to add to LAVA
• Linux
• Android
GRAND CENTRAL
• libdispatch - open source
• http://libdispatch.macosforge.org
• Can go hand in hand with OpenCL
• Needs llvm, libkqueue, blocks runtime
MORE?
top related