답변:
VM에서 둘 이상의 CPU를 활성화하려면 다음 설정이 추가로 필요합니다.
일반 설정 탭의 64 비트 가상 게스트 하드웨어 (64 비트 게스트)
마더 보드 설정 탭에서 I / O APIC 활성화
가속 탭에서 하드웨어 가상화 (VT-x / AMD-V) 활성화
사용 가능한 모든 코어에서 VM을 실행하면 CPU에 실행 제한을 할당 할 때 호스트 성능이 향상 될 수 있습니다.
가상 상자의 핫 플러그 CPU 기능을 활성화하지 않은 경우 코어 수 변경은 종료 된 머신에서만 수행 할 수 있습니다 .
게스트의 성능 향상은 여러 코어를 사용하는 소프트웨어에서만 예상됩니다. 그런 다음에야 모든 코어에 실행 한도를 부여하는 것이 합리적입니다.
VM이 현재 실행 중이거나 "저장된"경우 해당 값을 변경할 수 없습니다. 먼저 VM의 전원을 끄십시오.
가상 머신에서 순차적으로 실행되는 멀티 스레드 프로그램을 작업 중이었습니다. 나는 당신과 비슷한 문제가있었습니다. 나는 그것을 고쳤다 :
표준 스레드의 이전 std :: thread :: hardware_concurrency ()는 1을 반환했지만 변경 후 가상 머신 설정의 CPU 수를 반환합니다.
이제 VM에서 멀티 스레드 프로그램을 성공적으로 실행할 수있었습니다.