Não pode pickle Função

Então, eu estou tentando acelerar meu tempo de computação fazendo um pouco de multiprocessamento

Estou tentando usar os trabalhadores da piscina.

No topo do meu código eu tenho

import Singal as s
import multiprocessing as mp
def wrapper(Channel):
    Noise_Frequincies = []
    for i in range(1,125):
        Noise_Frequincies.append(60.0*float(i))
    Noise_Frequincies.append(180.0)
    filter1 = s.Noise_Reduction(Sample_Rate,Noise_Frequincies,Channel)
    return filter1

Então, quando chegar a hora, eu uso

Both_Channels = [Chan1, Chan2]
results = mp.Pool(2).map(wrapper,Both_Channels)
filter1 = results[0]
filter2 = results[1]

Estou tendo o erro a seguir

Exception in thread Thread-2:
Traceback (most recent call last):
  File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/threading.py", line 808, in __bootstrap_inner
self.run()
  File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/threading.py", line 761, in run
self.__target(*self.__args, **self.__kwargs)
  File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/multiprocessing/pool.py", line 342, in _handle_tasks
put(task)
PicklingError: Can't pickle <type 'function'>: attribute lookup __builtin__.function failed

Chan1 e Chan2 são matrizes do meu sinal e estou tentando filtrar algum ruído de cada uma. Eu sou novo em multiprocessamento, então peço desculpas se este é um erro estúpido

questionAnswers(1)

yourAnswerToTheQuestion