2015-01-29 2 views
0

현재 다중 CPU 사용이 필요한 Ubuntu 버전 11.04에서 실행되는 데이터 집약적 프로세스가 있습니다. Linux 작업 세트 명령 : 여러 프로세스에 100 % CPU 사용 설정

은 내가 하나 개의 CPU에 난 단지 100 %를 달성하고 4 개 코어

taskset -c 0,1,2,3 python sample.py 

이 주어진 명령을 쓰고, 나머지는 < 2 % 유휴 상태입니다.

4 개의 CPU를 모두 100 %로 늘려 작업 속도를 높이는 방법에 대한 팁은 무엇입니까?

건배!

+0

Welcome to Stackoverflow! 효과적인 도움말을 얻으려면'sample.py'의 단순화 된 버전을 보여줘야합니다. – merlin2011

답변

0

응용 프로그램은 둘 이상의 코어를 사용하기 위해 준비해야하며 응용 프로그램을 별도의 스레드로 분할해야합니다. 그렇지 않으면 둘 이상의 CPU를 거의 사용하지 않아도됩니다.

+0

다른 대답을 참조하십시오. Python의 GIL은 다중 CPU 코어를 효과적으로 사용하는 멀티 스레딩을 방지합니다. – merlin2011

0

표준 파이썬 인터프리터 (CPython)는 GIL이므로 CPU에서 둘 이상의 스레드가 실행되지 않습니다. multiprocessing 모듈을 사용하거나 PyPy과 같은 대체 구현을 사용하는 것이 좋습니다.