Shared memory in multiprocessing
I have three large lists. First contains bitarrays (module bitarray 0.8.0) and the other two contain arrays of integers. l1=[bitarray 1, bitarray 2, ... ,bitarray n] l2=[array 1, array 2, ... , array n] l3=[array 1, array 2, ... , array n] These data structures take quite a bit of RAM (~16GB total). If i start 12 sub-processes using: multiprocessing.Process(target=someFunction, args=(l1,l2,l3)) Does this mean that l1, l2 and l3 will be copied for each sub-process or will the sub-processes share these lists? Or to be more direct, will I use 16GB or 192GB of RAM? someFunction will read some