multiprocessing или threading нельзя использовать просто так, от фонаря. есть два класса задач - I/O-bound и CPU-bound (вообще есть ещё memory-bound и cache-bound, но мы их трогать не будем). multiprocessing используется для CPU-bound задач, когда скорость выполнения задачи ограничивается только мощностью процессора. multiprocessing сильно зависит от железа - ведь у всех разное число ядер, кроме того, multiprocessing сильно грузит проц, т.к. использует все его ресурсы, по сути.
для I/O-bound задач, скорость которых ограничивается скоростью работы подсистем ввода-вывода, используется threading. работа с файлами на диске или почти любая работа с сетью - это I/O-bound задачи.