파이썬의 멀티 프로세싱 라이브러리를 사용하여 성능을 향상 시키려고합니다. 특히 나는 자사의 map 기능을 사용하고 있습니다. 자, 하나의 처리 된 카운터 파트로 교체 할 때 어떤 이유로 높은 메모리 사용량을 얻지 못합니다. 그러나 맵의 멀티 프로세싱 버전을 사용하면 내 기억이 지붕을 통과하게됩니다. 기록을 위해 나는 많은 양의 메모리를 쉽게 먹을 수있는 무언가를하고있다.하지만 그 차이가 두 가지 사이에서 뚜렷한 차이를 일으키는 것은 무엇인가?다중 처리시에만 메모리 사용량이 높음
답변
다중 처리가 스레드를 사용하지 않는다는 것을 알고 있습니까? 당신이 "단일 스레드 대응"을 언급하기 때문에 나는 이것을 말한다.
multiprocessing
의 map
을 통해 많은 데이터를 보냅니 까? 직렬화 멀티 프로세싱이 많은 경우에해야하는 것 같습니다. multiprocessing
은 일반적으로 피클 링하는 데이터보다 많은 메모리를 차지하는 pickle
을 사용합니다. 경우에 따라 map
메서드를 호출 할 때 새 프로세스가 만들어지는 fork()
이있는 시스템에서는 일련 화를 피할 수 있지만 기존 프로세스에 새 데이터를 보내야 할 때마다 그렇게 할 수 없습니다.
multiprocessing
으로 모든 실제 작업이 별도의 프로세스에서 수행되므로 주 프로세스의 메모리가 실제 수행하는 작업의 영향을받지 않아야합니다. 그러나 각 작업자 프로세스에는 사용자가 전송 한 데이터의 복사본이 있으므로 메모리의 총 사용량은 상당히 증가합니다. 이것은 때때로 CoW가있는 시스템에서 write-write-memory (직렬화하지 않는 것과 같은 경우)이지만, 파이썬의 메모리 사용은 이렇게 빠르게 쓰여지고 복사됩니다.
사실, 다중 프로세스가 실제로 스레드를 사용하지 않는다는 것을 알게되어 죄송합니다. (따라서 이름) 그래서 파이프를 통해 정보를 보내는 것이 그것을 죽이는 것입니다. 많은 의미가 있습니다. 내가 직면하고있는 문제에 대한 해결책을 알고 있습니까? – Sandro
적은 데이터로 전송하십시오. 또는 작은 덩어리로 보내주십시오. 또는 fork()를 사용하는 시스템에서 직렬화가 발생하지 않도록하십시오. 다중 프로세스가 새 프로세스를 시작하도록하십시오. –
- 1. aws 메모리 사용량이 높음
- 2. w3wp의 CPU 사용량이 높음
- 3. PHP : 로컬 컴퓨터에서 메모리 사용량이 낮을 때 프로덕션 서버에서 메모리 사용량이 매우 높음
- 4. ASP.NET에서 메모리 사용량이 적습니다.
- 5. sqlite3에서 메모리 사용량이 증가합니까?
- 6. QTime QTimer timeout() 구동 스톱워치의 CPU 사용량이 높음
- 7. iPhone : 메모리 사용량이 너무 많습니까?
- 8. iPad 메모리 사용량이 지속적으로 증가합니다.
- 9. 많은 도메인 = 메모리 사용량이 많습니까?
- 10. 예상 .NET (VS)의 메모리 사용량이
- 11. AJAX를 사용하면 PHP의 메모리 사용량이 증가합니까?
- 12. 요청 당 평균 PHP 메모리 사용량이 있습니까?
- 13. Httpd 프로세스 메모리 사용량이 많고 페이지로드가 느리다.
- 14. Python을위한 메모리 사용량이 적음 워터 마킹
- 15. UIView 배경색 설정 메모리 사용량이 증가합니다.
- 16. 메모리 사용량이 적은 CoreData 엔티티 처리 방법
- 17. ASP.NET 웹 사이트 메모리 사용량이 꽤 높습니다.
- 18. Bitmapdata 사용량이 많음 - 메모리 재해 (스파크/FB4)
- 19. CoreData 가져 오기 중 메모리 사용량이 많습니다.
- 20. 메모리 사용량이 적은 좋은 데이터베이스는 무엇입니까?
- 21. 무료 사용시 메모리 사용량이 줄어들지 않습니까?
- 22. MPMoviePlayerController : 메모리 사용량이 많음 (할당 취소되지 않음)
- 23. msvcrt : 디버거에서 메모리 사용량이 많지 않지만
- 24. Java 메소드 실행 시간이 높음
- 25. 다중 스레드 및 메모리
- 26. Mercurial - 서버 저장소에 대한 변경 사항을 푸시 할 때의 CPU 사용량이 높음
- 27. Apple Push Notification 서비스 PHP CPU 사용량이 너무 높음. 성능을 어떻게 향상시킬 수 있습니까?
- 28. 다중 처리로 메모리 사용 공간 축소?
- 29. 메모리 사용량이 증가하여 Apple에서 iPhone 응용 프로그램을 거부합니까?
- 30. iPhone : 터치를 사용하는 앱의 메모리 사용량이 꾸준히 증가했습니다.
기록의 경우 메모리 * 사용 *처럼 메모리 누출 * 소리가 들리지 않습니다. –
매우 진실되고, 다시 한번, 나쁜 말씨. – Sandro