Skip to content
This repository

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP

D interface to Open MPI

branch: master

Fetching latest commit…

Octocat-spinner-32-eaf2f5

Cannot retrieve the latest commit at this time

Octocat-spinner-32 C
Octocat-spinner-32 examples
Octocat-spinner-32 AUTHORS
Octocat-spinner-32 README
Octocat-spinner-32 TODO
Octocat-spinner-32 mpi.d
Octocat-spinner-32 mpi.h
Octocat-spinner-32 mpi.h.in
README
Ok this is proving to be a very difficult proposition...

MPI uses it's own wrappers for the compilers, so I might want to implement
something to that effect.  It'll be difficult since mpicc is generated at
compile time.  It is configured to the specific install.

mpicc -showme:compile
-I/usr/lib/openmpi/include -I/usr/lib/openmpi/include/openmpi -pthread

mpicc -showme:link
-pthread -L/usr/lib/openmpi/lib -lmpi -lopen-rte -lopen-pal -ldl
-Wl,--export-dynamic -lnsl -lutil -lm -ldl

See the TODO file for current tasks.


NOV 25, 1:03 it compiles!!  hahah!
Now for the hard part...  debugging and linking...


Things that I have learned during this project.
1: I am an idiot.  As the folks on #d will attest.
2: .ptr is the shit.
3: profit.


When you are passing objects to other threads, MPI accepts void*, but actually
checks the type. So passing D strings is a no-go.  at least from what I understand.

Also MPI does type checking behind the scenes...  If you try to do something like
dynamic arrays, you will be bitch-slapped.
Something went wrong with that request. Please try again.