[python-users] Multiprocessing unter Python 3.6.1
Daniel Hepper
daniel.hepper at gmail.com
Mo Jun 19 15:35:43 CEST 2017
Hallo Joachim,
die Verwendung des Multiprocessing-Moduls geht mit einem gewissen Overhead
einher. Da die Kalkulation in deinem Beispiel nicht besonders aufwändig
ist, ist dieser Overhead größer als der Performancegewinn.
Was möchtest du denn erreichen?
Viele Grüße,
Daniel
2017-06-19 13:21 GMT+02:00 Joachim Sasse <sassec1 at t-online.de>:
> Hallo zusammen,
>
> ich brauche einen Tipp, um mein Multiprocessing Testmodul ( kleine
> Kalkulation ) zu beschleunigen. (Win 10,64, i7 4790k , 32G RAM)
>
> Anzahl-Liste: 5000000 Time: 1.9154649782858315
>
> from multiprocessing import Poolimport math,timewu = math.sqrt
> def run_calc(x): return wu(x), x * x, x * x * xif __name__ == '__main__': t0 = time.perf_counter()
> pool = Pool(4)
> result = pool.map(run_calc, (x for x in range(1, 5_000_001)),2000)
> t1 = time.perf_counter()
>
> print(len(result),t1-t0)
> pool.close()
> pool.join()
>
>
>
> das andere Beispiel ist Single-Threading mit und ohne JIT aus numba -
> beides wesentlich schneller !
>
> Anzahl-Liste: 5000000 Time: 0.8098236565761535 ohne JIT: 5000000
> 1.530495929796201
>
> import time, mathfrom numba import jitwu = math.sqrt at jitdef calc(): l = []
> for x in range(1,5_000_001): l.append((wu(x),x*x,x*x*x))
> return lt1 = time.perf_counter()l= calc()t2 = time.perf_counter()print(len(l),t2-t1)
>
>
> Vielen Dank für alle Ideen,Tipps und Anregungen !
> Joachim Sasse
>
>
>
> ________________________________________
>
> Diese Mail erhalten Sie ueber die Mailingliste python-users der
> Universitaet zu Koeln
> Nachrichten an: python-users at uni-koeln.de
> Abonnement und Benutzereinstellungen: https://lists.uni-koeln.de/
> mailman/listinfo/python-users
> Listenarchiv: http://pycologne.de/mlsearch.html
>
> pyCologne Homepage: http://pycologne.de/
>
>
-------------- nächster Teil --------------
Ein Dateianhang mit HTML-Daten wurde abgetrennt...
URL: <http://lists.uni-koeln.de/pipermail/python-users/attachments/20170619/823709dc/attachment.html>
Mehr Informationen über die Mailingliste python-users