[Python-de] Mandelbrot mit Threads: Keine CPU-Vollauslastung

mva at sysfault.org mva at sysfault.org
Mo Mai 4 15:42:15 CEST 2015


Zitat von Andreas Meile <usenet at andreas-meile.ch>:

> Hallo Diez
>
> "Diez B. Roggisch" <deets at web.de> schrieb im Newsbeitrag  
> news:mailman.79.1430731120.12865.python-de at python.org...
>> Und diese Einschränkung (das sogenannte GIL - Global Interpreter  
>> Lock) ist so
>> fundamental relevant dafür wie Python funktioniert, dass man das  
>> nicht “mal eben”
>> ändern kann.
>
> Danke für diesen wirklich wichtigen Hinweis. Per Google gefunden:
>
> https://wiki.python.org/moin/GlobalInterpreterLock
> Und speziell noch lesenswert daraus:
> http://www.dabeaz.com/python/GIL.pdf
>
>> Darum gibt es seit inzwischen geraumer Zeit das Modul “multiprocessing”.
>> Das ist in vielen Fällen (und Apfelmännchen gehört IMHO dazu, da alle
>> Teilaufgaben unabhaenging von den anderen berechnet werden können) fast
>> ein drop-in-replacement fuer das threading Modul.
>
> Werde ich bei Gelegenheit einmal anschauen, danke für diesen  
> Hinweis. Sonst bin ich mit
>
> https://docs.python.org/3/library/multiprocessing.html
>
> an richtigen Ort für Details dazu?
>
[...]

Ja. Beachte, dass beim Datenaustausch in den geteilten Prozessen das, was
ausgetauscht werden soll, serialisierbar sein muss, ansonsten funktioniert
es nicht.

Gruß
Marcus



Mehr Informationen über die Mailingliste python-de