This package lets you run a chroma server, which performs GPU-accelerated photon propagation for clients. Clients send chroma-server a list of initial photon vertices, and it replies with the final vertices of detected photons.
The chroma-server:
appears to now be integrated with chroma:
The original not using python objects for communication however, so it might be more directly relevant for usage from inside Geant4 C++.
pyzmq is able to send/receive numpy arrays (using multipart ZMQ message) with the dtype riding along as a json dict.
Create numpy arrays in C directly from std::vector<float> ? My mysql numpy did something similar from mysql query results.
To do this conveniently would need to use cython