Sagen wir, ich starte 10 Prozess in einer Schleife mit Process(), aber ich habe nur 8 Kerne verfügbar. Wie geht Python damit um?Python Multiprocessing starten mehr Prozesse als Kerne
1
A
Antwort
1
Während es am besten ist, so viele Threads zu verwenden, wie Sie virtuelle Kerne zur Verfügung haben, müssen Sie sich nicht daran halten. Wenn Sie weniger verwenden, könnten Sie die verfügbare Prozessorkapazität zu wenig nutzen. Wenn Sie mehr verwenden, werden Sie die verfügbare Prozessorkapazität zu stark beanspruchen.
In beiden Fällen arbeiten Sie langsamer als sonst möglich. (Obwohl die Verwendung von mehr Threads als die von Cores weniger Auswirkungen hat als die Verwendung von weniger Threads als die von Cores.)
Verwandte Themen
- 1. Multiprocessing: Mehr Prozesse als cpu.count
- 2. Python Multiprocessing: Prozesse starten nicht
- 3. Mehrere Prozesse starten CUDA Kerne parallel
- 4. Python Multiprocessing, CPU-S und CPU-Kerne
- 5. Python Multiprocessing-Pool, für Prozesse warten und starten Sie benutzerdefinierte Prozesse
- 6. Python Multiprocessing - JSON über mehrere Prozesse ändern
- 7. MultiProcessing langsamer mit mehr Prozessen
- 8. Multiprocessing in Python bei gleichzeitiger Begrenzung der Anzahl laufender Prozesse
- 9. Python Multiprozess Pool Prozesse zählen
- 10. Python Multiprocessing - überprüfen Sie den Status der einzelnen Prozesse
- 11. Python MultiProcessing
- 12. Multiprocessing: Verwenden Sie ** nur ** die physischen Kerne?
- 13. Python-Multiprocessing scheint nicht mehr als einen Kern zu verwenden
- 14. Python Multiprocessing: Kill Producer und Consumer-Prozesse mit KeyboardInterrupt
- 15. Python Multiprocessing vs Eventlet
- 16. Python-Multiprocessing-Warteschlangen langsamer als pool.map
- 17. Python Multiprocessing startet Prozesse, aber nur einer ist aktiv
- 18. Python-Multiprocessing für Prozesse, die separat gestartet werden
- 19. Multiprocessing in Python blockiert
- 20. Webserver-Kapazitätsplanung: mehr Kerne versus mehr Arbeitsspeicher
- 21. Python Multiprocessing Frage
- 22. Python-Debug-Tools für Multiprocessing
- 23. Python Multiprocessing nicht
- 24. Python itertools multiprocessing
- 25. Multiprocessing/Multithreading in Python ..?
- 26. Multiprocessing mit erneuerbaren Queue
- 27. Python Multiprocessing über verschiedene Dateien
- 28. Python Multiprocessing Pool vs Multiprocessing ThreadPool
- 29. Python Multiprocessing + Subprozess Probleme
- 30. Kann nicht mehr als 2 Kerne mit Microsoft R öffnen
Ich glaube nicht, dass Python sich darum kümmert. Es hängt davon ab, wie Ihr Betriebssystem handhabt; am wahrscheinlichsten durch alternierende Prozesse. – Evert
werfen Sie einen Blick auf diese http://stackoverflow.com/questions/36795086/on-what-cpu-cores-are-my-python-processes-running – xCodeZone
https://github.com/python/cpython/blob/ master/Lib/multiprocessing/process.py – enderland