Dr Juan Fumero presented at QCon London on TornadoVM , a plug-in to OpenJDK and GraalVM that runs Java on heterogeneous hardware including Graphical Processing Units (GPUs) and Field Programmable Gate Arrays (FPGAs). Demos during the presentation showed code being speeded up by hundreds of times when running on a GPU vs a CPU.
GPUs and FPGAs can offer 2-3 orders of magnitude speed improvement for highly parallelisable workload. But those speed improvements have been difficult to obtain as programming requires the use of low level languages such as OpenCL and VHDL . TornadoVM makes acceleration accessible to programmers using Java and Node.js, and annotations are used to mark parallelisable code blocks as a hint to the compiler.
TornadoVM supports multi core CPUs, GPUs from Nvidia, AMD and Intel, and Intel FPGAs. The choice of hardware accelerator is passed to TornadoVM as a parameter, and Dr Fumero demonstrated code running on the CPU, embedded Intel GPU, and Nvidia GPU present on his Mac laptop. TornadoVM also offers live task migration between different hardware types, which was also demonstrated. Tensor Processing Units ( TPUs ) aren’t yet supported, but Dr Fumero stated that it would be straightforward to add an additional backend to TornadoVM so long as OpenCL support is present. The TornadoVM team are presently working on adding support for Nvdia’s Parallel Thread Execution ( PTX ).
Dr Fumero and his University of Manchester colleagues don’t yet consider TornadoVM to be production ready, as there’s no organisation to provide support. They do however already have an industry case study of TornadoVM being used by Exus to speed up training for machine learning models working on health care data. Due to limitations in the underlying programming model TornadoVM doesn’t support objects (except for trivial cases), recursion, dynamic memory allocation or exceptions.
The TornadoVM: Java for GPUs and FPGAs presentation is already available to QCon London attendees, and will be opened up to all InfoQ readers in due course. Dr Fumero has published his slides and demos .
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
C语言名题精选百则技巧篇
冼镜光 / 机械工业出版社 / 2005-7 / 44.00元
《C语言名题精选百则》(技巧篇)收集了100则C语言程序设计题,共分9类。第一类比较简单,主要希望读者了解到《C语言名题精选百则》(技巧篇)的题目、解法与其他书籍之间的差异;第二至六类分别是关于数字、组合数学或离散数学、查找、排序、字符串等方面的题目;第七类列出了一些不太容易归类的题目,如Buffon丢针问题、Dijkstra的三色旗问题等;第八类则收录了一些有趣的、娱乐性的题目,如魔方阵等;第九......一起来看看 《C语言名题精选百则技巧篇》 这本书的介绍吧!