[Mochi-devel] Server as client

Jerome Soumagne jsoumagne at hdfgroup.org
Thu Dec 5 11:08:51 CST 2019


Hi Philip

Yes you can send RPCs to yourself, we do have optimizations for that case and it will bypass the network layer. Just make sure you have compiled mercury with MERCURY_USE_SELF_FORWARD turned ON in cmake.

Thanks

Jerome

On 12/5/19, 11:03 AM, "mochi-devel on behalf of Philip Davis" <mochi-devel-bounces at lists.mcs.anl.gov on behalf of philip.e.davis at rutgers.edu> wrote:

    Hello,
    
    Apologies if these have been asked before and I missed it:
    
    1. Is there any obstacle to a process being both an origin and a target for Mercury RPC calls?
    
    2. If not, is it legal for the same process to be both the orgin and target of the *same* RPC call? The use case I’m picturing is implmenting some sort of structured, distributed object store that uses keyval or similar as a backing store. It might be convenient to colocate these two services in the same process group, and distribute the backing store throughout the process group. As such, it seems feasible that the object store would need to access the backing storage administered by its own process, so I’m wondering if that case needs to be handled outside Mercury, or if it can be implemented as if the backing store was not process-local.
    
    3. If the answer to the previous is yes, then are there any optimizations in Mercury to recognize and handle this case (i.e. the case where the origin and target are the same process)?
    
    Thanks,
    Philip
    _______________________________________________
    mochi-devel mailing list
    mochi-devel at lists.mcs.anl.gov
    https://lists.mcs.anl.gov/mailman/listinfo/mochi-devel
    https://www.mcs.anl.gov/research/projects/mochi
    



More information about the mochi-devel mailing list