Zainstalowałem Ubuntu w środowisku wirtualnym za pomocą Oracle VM VirtualBox Manager i działa świetnie.
Chciałbym jednak włączyć wiele rdzeni - jak widać na poniższym obrazku, mój komputer z systemem Windows ma 2 rdzenie:
Teraz, kiedy uruchamiam lscpu
w Ubuntu, otrzymuję następujące informacje ujawniające, że używany jest tylko 1 rdzeń:
Próbowałem zmienić ustawienia wirtualnego urządzenia, aby włączyć wiele procesorów, ale nie pozwoli mi to zrobić, jak pokazano na poniższym obrazku:
Jak włączyć wiele rdzeni (procesorów) w moim wirtualnym środowisku?
źródło
Jeśli Twoja maszyna wirtualna jest obecnie uruchomiona (lub „Zapisana”), nie możesz zmienić tej wartości. Najpierw wyłącz maszynę wirtualną.
źródło
Pracowałem nad programem wielowątkowym, który działał w kolejności sekwencyjnej na maszynie wirtualnej. Miałem podobny problem jak ty. Naprawiłem to przez:
Wcześniej std :: thread :: hardware_concurrency () ze standardowego wątku zwróciło 1, ale po zmianach zwraca liczbę procesorów w ustawieniach maszyny wirtualnej.
Teraz udało mi się pomyślnie uruchomić moje programy wielowątkowe na maszynie wirtualnej.
źródło