Frank Goenninger <frgo@...> writes:
> - 1st post to this list.
> I have been a backer of
> . My Parallela box should be arriving May next year. Biggest challenge
> will be to port SBCL to this Linux-/GCC-based architecture. I'd need
> to understand how SBCL porting is done in general - but I have only
> found very little info on SBCL porting as a whole and also what it
> takes to make SBCL highly parallel.
> Anyone able to share porting experience? Where to start?
>From a brief read of the link, I think the first thing to do is make
SBCL run on the ARM. This is a "normal" porting challenge, where what
is needed is to deal with the new instruction set (files in
src/compiler/.../ and src/assembly/.../) and any idiosyncracies in the
kernel on that architecture (files in src/runtime/). There is partial
work on this by Alastair Bridgewater; I don't know how far his latest
attempt is from actually running, but a target date of May, given some
effort, is probably achievable.
Actually using the highly-parallel coprocessor is another matter. I
would need to spend some time looking at what the parallela coprocessor
actually offers; at a guess, it is speeding up vector and matrix
floating point operations. There isn't very much support in SBCL itself
to vectorize operations automatically, so the first step might be to
define some high-level functions (e.g. a dot-product or a fourier
transform) and write the machine instructions to execute that on the
processor board. (But I could be very wrong about what this is for.)
I hope that helps.