Message298346
I have looked into your advice of changing multiprocessing.heap.Arena.__init__, I have removed the code that allocated the file and reverted to the old behaviour.
I have done some brief runs and it seems to bring back the old behaviour which is allocating the space in RAM, rather than with IO. I am not sure what things this might break, and it might make the other usages of multiprocessing unstable!
Can anyone think of anything this change might break? The Arena.__init__ code is the one from Python 2.7:
class Arena(object):
def __init__(self, size, fd=-1):
self.size = size
self.fd = fd # still kept but is not used !
self.buffer = mmap.mmap(-1, self.size)
There does not seem to be a difference regardless of the start method setting multiprocessing.set_start_method('fork') to be 'fork'. |
|
Date |
User |
Action |
Args |
2017-07-14 11:30:33 | dtasev | set | recipients:
+ dtasev, sbt, gdr@garethrees.org, serhiy.storchaka, davin |
2017-07-14 11:30:33 | dtasev | set | messageid: <1500031833.96.0.667514610141.issue30919@psf.upfronthosting.co.za> |
2017-07-14 11:30:33 | dtasev | link | issue30919 messages |
2017-07-14 11:30:33 | dtasev | create | |
|