freenode/#clasp - IRC Chatlog
Search
11:40:45
heisig
Ooh, that sounds very interesting. What would NVidia want from a CL implementor? Or are they interested in the molecular dynamics part?
11:49:44
heisig
Ah, actual science :) Seems like a busy schedule ahead of you with that NVidia gig and the LLVM meeting.
11:50:50
drmeister
But literally - I'm speaking at the LLVM meeting on Thursday and NVidia on Friday.
11:53:01
drmeister
Re the MPI build. Clasp has a way of serializing and deserializing objects as s-expressions.
11:54:03
drmeister
I am going to send s-expressions with data between the MPI nodes. I can also send code of course.
11:54:55
drmeister
I don't need to send a lot of data - but it is complex - with lots of circular references.
11:55:36
heisig
I had the same issue with cl-mpi. In there, I use cl-store or conspack to serialize my data. That might be faster and safer than read and print. But since it is only for code, it probably does not matter.
11:57:26
drmeister
Thanks for the reminder about cl-store and conspack. I looked at those long ago and forgot about them.
11:57:58
drmeister
I think I tailored Clasp's implementation towards one of those so that I could use it in the future.
12:00:45
heisig
Yes, no copies, neither at the sending side nor on the receiving side. I use static-vectors for that, because I don't want the GC to move buffers while they are mutated by MPI.
12:03:33
heisig
You just have to tell MPS that this array must never ever move. I am sure MPS supports that.
12:04:13
scymtym
drmeister: https://github.com/lmj/lfarm may also have relevant ideas for distribution code and data
12:08:10
drmeister
In C++ I need to compile the C++ application with a compiler wrapper and initialize and shutdown MPI in the main function.
12:09:00
drmeister
If these Common Lisp libraries like lfarm use cffi then I can switch to that rather than rolling my own solutions.
12:10:54
scymtym
i don't know whether lfarm supports MPI specifically but it may have solutions for distributing code and data
12:19:45
heisig
drmeister: On SBCL, MPI is just a cffi library (that I wrote). But it is not integrated into lfarm.