[HN Gopher] High performance array programming in Petalisp
___________________________________________________________________
High performance array programming in Petalisp
Author : medo-bear
Score : 51 points
Date : 2024-05-06 21:41 UTC (1 days ago)
(HTM) web link (zenodo.org)
(TXT) w3m dump (zenodo.org)
| guenthert wrote:
| "Not only is this JIT-compiler just 8 lines of code, it is also
| 20 times faster than invoking GCC or Clang on a roughly
| equivalent piece of C code."
|
| So about as fast as TinyCcompiler (tcc)? Which produces faster
| code (in the context of HPC, elegance and ease of development
| takes a backseat to sheer performance, methinks)?
| medo-bear wrote:
| Why would you use C, or even assembly, when machine code is
| faster
| guenthert wrote:
| iiuc, that JIT-compiler uses the CL-image's compile function.
| That won't do any good, if in a HPC environment the actual heavy
| lifting is to be done on equipment other than the main CPU, e.g.
| a GPGPU or (earlier) Xeon Phi.
| medo-bear wrote:
| In the paper the author talks about compiling to CUDA
| guenthert wrote:
| "We already have code generators for turning kernels into
| Com- mon Lisp code and for turning a subset of kernels into
| C++ or CUDA code. Right now, our strategy is to use C++ and
| GCC when possible, and Common Lisp code otherwise. In the
| future, we plan to make the C++ generator obsolete by using
| SIMD optimized Common Lisp instead. Doing so would build on
| our previous work on s b - s i m d that we presented at the
| 15th European Lisp Symposium in Porto"
|
| My take from that is, that for CUDA external tools are used
| today. Still, interesting work.
| medo-bear wrote:
| What do you mean by external tools?
| dang wrote:
| Related (but tiny):
|
| _Petalisp: A DSL in CL intended for high performance array-based
| computing_ - https://news.ycombinator.com/item?id=17170393 - May
| 2018 (1 comment)
| hr0m wrote:
| Wait, I know the author and will share the link so he can join
| here.
___________________________________________________________________
(page generated 2024-05-07 23:01 UTC)