I’ll just add to this discussion that I’ve had errors with the mapping functions themselves not being pickleable (I think just when n_proc > 1). I’ve also had the problem that the map function fingerprint is different across runs even when the function definition is completely unchanged, meaning it fails to use pre-cached mappings from run to run unless I explicitly pass the cache file name.