Yes, the code runs with ‘num_workers=0’ for the full epoch and doesn’t yield any error (other than the one I wrote in).
As for shared memory available, the system has several hundred GB of memory.  Should be more than enough for 100*100 random floats even with 15 workers. Am I missing something special about shared memory?