What objects can be pass through the mmap-semaphore plugin?

Hi!

I’m working to develop a Julia library to connect to FreeFEM++ using the mmap-semaphore plugin. The objective is to be able to pass vectors, meshes and solutions directly through mmap, without writing them to disk, to make the communication as fast as possible. I find the documentation a little sparse wrt data structures used internally by FreeFEM, so I wanted to ask:

  • What data can be passed using Write and Read from the plugin.
  • Where can I find more documentation or information on the in-memory data structure of different types in FreeFEM?

Thank you for the great software and the time. :smile:

Well, the objects that currently can be passed with mmap-semaphore are scalar and arrays of int (long in C/C++, and Int64 in Julia), real (double in C/C++, and Float64 in Julia) and complex (double complex in C, complex<double> in C++, and Complex{Float64} in Julia).

I already extended the plugin, in a private compilation, to communicate double arrays (not sparse matrices, at least not yet). :slight_smile: