6 ms·
"Ray" can share python objects memory between processes. It's also much easier to use than multi processing.
by pillusmany 3y ago
"Ray" can share python objects memory between processes. It's also much easier to use than multi processing.
- ptx 3y agoHow does that work? I'm not familiar with Ray, but I'm assuming you might be referring to actors [1]? Isn't that basically the same idea as multiprocessing's Managers [2], which also allow client processes to manipulate a remote object through message-passing? (See also DCOM.) [1] https://docs.ray.io/en/latest/ray-core/walkthrough.html#calling-an-actor https://docs.ray.io/en/latest/ray-core/walkthrough.html#call... [2] https://docs.python.org/3/library/multiprocessing.html#managers https://docs.python.org/3/library/multiprocessing.html#manag...
- pillusmany 3y agoShared memory: https://docs.ray.io/en/latest/ray-core/objects.html https://docs.ray.io/en/latest/ray-core/objects.html
- ptx 3y agoAccording to the docs, those shared memory objects have significant limitations: they are immutable and only support numpy arrays (or must be deserialized). Sharing arrays of numbers is supported in multiprocessing as well: https://docs.python.org/3/library/multiprocessing.html#sharing-state-between-processes https://docs.python.org/3/library/multiprocessing.html#shari...