Dynamic Sparse Data Exchange or DSDE, is a typical point to point communication in which senders know to which processor to receive, but receivers has not knowledge about from where they are receiving. OpenFPM use the NBX method or Non blocking consensus exchange. (Said without bombastic word each processor wait for incoming messages. Pretty basic achievement and technique in standard server programming, presented as bombastic and incredible discovery in MPI)
Before using any functionality the library must be initialized. After initialization we can create the Vcluster object
To do dynamic sparse data exchange, each processor fill a send processor list and create a message for each processor. In this case the message will be a complex object. OpenFPM use the capability to serialize complex object into sequence of byte to send over the network and de-serializa or re-assemble the object into another processors. In this case the complex object is a list of double numbers. At the end of the example each processor print what it received
At the very end of the program we have always to de-initialize the library