In brief
multiprocessing runs work in separate processes. It can use multiple CPU cores, but transferring data between processes has its own cost.
Useful to know
multiprocessing runs work in separate processes. It can use multiple CPU cores, but transferring data between processes has its own cost. [1]
Pay attention to the main-module guard and selected start method. A global variable is not automatically shared memory. Shared data needs an explicit mechanism, and transferring a small task may cost more than performing its calculation.
Sources
For further detail and to check the information: