Abstract
Both high-productivity and high-performance are two often sought after aspects of scientific programming. Python gives the programmer high-productivity, but even with NumPy it is often not high-performant because of the GIL1, which makes it inherently single threaded. Bohrium intercepts NumPy calls and generates an intermediate language, Bohrium byte-code, before being compiled to OpenCL kernels. It thus grants Python/NumPy the ability to be easily run on multicore systems or GPUs, without changing the source code. The Bohrium byte-code can be optimized, by transforming byte-code sequences into more performant ones. This way, the scientific programmer will not need to change her code to utilize special performant constructs.
Originalsprog | Engelsk |
---|---|
Titel | Middleware Doctoral Symposium'16 Proceedings of the Doctoral Symposium of the 17th International Middleware Conference, Trento, Italy — December 12 - 16, 2016 |
Udgivelsessted | New York |
Publikationsdato | 12 dec. 2016 |
Udgave | ACM |
Artikelnummer | No.1 |
ISBN (Trykt) | 978-1-4503-4665-8 |
DOI | |
Status | Udgivet - 12 dec. 2016 |