I’d like to to split up a patch between my cores. I have up to 3000 values which need to be transmitted at the same time. SharedMemory, UDP can’t handle those large packages. Also tried OSC via UDP.
In every instance this data spread gets additional transformations which depend on the ones before.
So I can’t just create a new spread.
Is there any good way to broadcast 3000 values?
(Solution at the moment would be to have eight similar instances, which each calculate another section of the final image. So I only need to share textures between instances and combine them to an image in a final instance. But having eight similar patches running will be extremly annoying to maintain).
I’ve had issues with RawShared memory, from crashes on startup to missing values, I’ve started using UDP or TCP with a tokenizer and and end of message token, this works ok.
I’ve been using Writer (Raw Sharedmemory) for a multiple projects on multiple machines without problems, sometimes sharing more than 20kb of data.
Try the double spread and string spread memory sharing modules in the attachment.
I found really useful to use velcrome’s pack Message, converting the generated message(s) to Json with the included node (AsJson) and sending and receiving with the Raw shared memory nodes. You can deliver a ton of data with this method, but you need to control when to send (2 instances available) to avoid thing going unstable.
@wrotzlaw: raw shared memory drived me crazy (not stable). I also recommend catweasel method with the strings generated from velcrome’s asJson. Of course using his pack on both instances. About the example patch, I’ll see If I have the time… do you still need it?