Hi,
We have a code implementation that utilizes windows and shared locks to enable different processes to read data. We do this by e.g.
windows_iterations[agent_id].Lock(agent_id,lock_type=MPI.LOCK_SHARED, assertion=0)
windows_iterations[agent_id].Get([localiter, 1,
MPI.INT], agent_id)
windows_iterations[agent_id].Unlock(agent_id)
Perhaps I am understanding this wrong, but the shared lock seems to introduce synchronization to the code, when the purpose is to create a method to read data whilst other processes have not completed yet (i.e., make it fully asynchronous). Is this expected behavior, or is there an issue on the backend?
Kind Regards,
Rama