Quoting Toon Knapen <toon.kna...@fft.be>: > Tim Prins wrote: > > > I am in the process of developing MorphMPI and have designed my > > implementation a bit different than what you propose (my apologies > if I > > misunderstood what you have said). I am creating one main library, > which > > users will compile and run against, and which should not need to > be > > recompiled. This library will then open a plugin depending on what > MPI > > the user would like to use. Then, it will dynamically open the > actual > > MPI implementation. In other words, to add support for another MPI > one > > would just need to drop the appropriate plugin into the right > directory. > > > Thus IIUC, the app calls your lib and your lib on its turn calls a > plugin? Not quite. The plugin will merely consist of a data table, which will tell me all I need to know about the MPI and how to call its functions. Thus the app will call a function in MorphMPI which will in turn call a function in the actual MPI.
> This involves two dereferences. My idea was to (be able to) > recompile the MorphMPI for each of the MPI lib's and plug this one > between the app and the MPI. AFACIT this approach has the same set > of > features but is more lightweight. However, if you have to recompile MorphMPI for each mpi, you loose a lot of the benefits of having an ABI, i.e. being able to easily run with multiple implementations without recompiling. In this project I am really going for easy extensibility and ease of use for the user. > > Is your project open-source? If so, can I check it out? It will be open-source, but right now this project is still in its early stages so there is nothing to release yet. Tim