Presenter(s): Beau Johnston
URL: https://lca2014.linux.org.au/schedule...
Companies (such as nCore) are using clusters of DSPs to revolutionise energy efficient High Performance Computing. A programmers view of these platforms may consist of using OpenMP to specify regions of code for execution on each DSP whilst using MPI to orchestrate work across all nodes in the cluster. Intel's Xeon Phi a better known contender for energy efficient HPC and can be programmed using OpenMP or Cilk Plus. CUDA is the first goto language for a majority of GPU programmers. Development for further unorthodox platforms like Adapteva's Parallella introduce even more exotic programming models & languages.
But why bother? From a programmers perspective the problem is the same, every application has computationally intensive regions to be run on [insert alien architecture here], and normal tasks suitable for serial execution. Nothing is more painful than rewriting the same code just to migrate it to a new platform (you could almost train monkeys to do it)! Well thankfully an open standard emerged years ago known as OpenCL (Open Computing Language) to address this problem, and now, it's supported on all these awesome platforms!
I will discuss how to leverage this hardware agnostic language (from a programmers perspective) and provide some tips on how to write flexible kernels once with OpenCL, and have them run efficiently on all these platforms. All the while only making slight changes to the host program. I will be drawing on all the mistakes I made as a first year PHD student writing code to model ultrasound, on a variety of awesome hardware, whilst still being as lazy as possible.
OpenCL is a major step in taking power from hardware vendors locking us into platforms and third party APIs. It provides an Open Standard for heterogenous computing and finally gives us, the developers, some freedom. Let's stop fragmenting the software development process with a separate language for each new platform, and get our hands dirty with some open source, open standard, OpenCL!
http://lca2014.linux.org.au - http://www.linux.org.au
CC BY-SA - http://creativecommons.org/licenses/b...
URL: https://lca2014.linux.org.au/schedule...
Companies (such as nCore) are using clusters of DSPs to revolutionise energy efficient High Performance Computing. A programmers view of these platforms may consist of using OpenMP to specify regions of code for execution on each DSP whilst using MPI to orchestrate work across all nodes in the cluster. Intel's Xeon Phi a better known contender for energy efficient HPC and can be programmed using OpenMP or Cilk Plus. CUDA is the first goto language for a majority of GPU programmers. Development for further unorthodox platforms like Adapteva's Parallella introduce even more exotic programming models & languages.
But why bother? From a programmers perspective the problem is the same, every application has computationally intensive regions to be run on [insert alien architecture here], and normal tasks suitable for serial execution. Nothing is more painful than rewriting the same code just to migrate it to a new platform (you could almost train monkeys to do it)! Well thankfully an open standard emerged years ago known as OpenCL (Open Computing Language) to address this problem, and now, it's supported on all these awesome platforms!
I will discuss how to leverage this hardware agnostic language (from a programmers perspective) and provide some tips on how to write flexible kernels once with OpenCL, and have them run efficiently on all these platforms. All the while only making slight changes to the host program. I will be drawing on all the mistakes I made as a first year PHD student writing code to model ultrasound, on a variety of awesome hardware, whilst still being as lazy as possible.
OpenCL is a major step in taking power from hardware vendors locking us into platforms and third party APIs. It provides an Open Standard for heterogenous computing and finally gives us, the developers, some freedom. Let's stop fragmenting the software development process with a separate language for each new platform, and get our hands dirty with some open source, open standard, OpenCL!
http://lca2014.linux.org.au - http://www.linux.org.au
CC BY-SA - http://creativecommons.org/licenses/b...
australia แปลว่า OpenCL, saving parallel programers pain, today! | |
2 Likes | 2 Dislikes |
147 views views | 1.1K followers |
People & Blogs Creative Commons Attribution licence (reuse allowed) | Upload TimePublished on 17 Jan 2014 |
Related keywords
australia time,australian แปลว่า,australia เมืองหลวง,australia visa,linux download,linux mint,australian shepherd,linux commands,australia capital,linux rename file,australia victorian premier league,australian open,australia news,australia victorian premier league u20,linux mint download,linux os,linux find file,linux distros,linux on chromebook,linux remove directory,linux academy,linux find,australia map,linux list users,australian dollar,australia สัญชาติ,linux kernel,australian embassy,australia flag,linux distributions,australia basketball,linux change password,linux ubuntu,linux laptop,australia queensland national premier league,australian open 2019,australia vs usa basketball,linux find command,linux add user to group,
Không có nhận xét nào:
Đăng nhận xét