Weisen Sie dem VirtualBox-Gastbetriebssystem weitere Threads zu

582
SamTew

Ich verwende Windows 8.1 als Host mit Intel Core I7 4500U. Ich versuche, OpenMP in Ubuntu mit VirtualBox zu verwenden. Selbst wenn ich 2 CPUs gemeinsam habe, habe ich nur einen Thread. Wenn ich OpenMP für Parallelität verwende, wird nur ein Thread verwendet. Gibt es eine Möglichkeit, dem Ubuntu-Gastbetriebssystem weitere Threads hinzuzufügen, damit ich Parallelität in OpenMP erreichen kann?

Ausgabe von cat /proc/cpuinfo | grep processorund wie ich den Compiler anrufe:

blah

0
Wie haben Sie festgestellt, dass Sie nur einen Thread in der VM haben? Bitte geben Sie die Ausgabe von "cat / proc / cpuinfo |" an grep Prozessor ". Daniel B vor 6 Jahren 1
Wie kompilieren Sie Ihr Programm? ZB [`g ++ - fopenmp omp.cpp && ./a.out`( (http: // stackoverflow.com/questions/20962363/openmp-in-qt-on-virtualbox-uses-only-one-hread) Hydraxan14 vor 6 Jahren 0
Wenn Sie VirtualBox öffnen, klicken Sie auf die gewünschte VM und anschließend auf Einstellungen. Ein Dialogfeld wird geöffnet, in dem Sie Änderungen an der VM vornehmen können. Wenn Sie auf die Registerkarte System und dann auf die Registerkarte Prozessor gehen, können Sie sehen, wie viele Kerne Ihrer VM zugewiesen sind, und Sie können weitere Kerne hinzufügen. Wie stellte Hydrax fest, welchen Befehl verwenden Sie zum Kompilieren des Codes? DrZoo vor 6 Jahren 0
@DanielB Ich habe die Ausgabe in der Frage angehängt. Ich kann das Bild nicht einbetten, so dass es nur ein Link ist SamTew vor 6 Jahren 0
@ Hydraxan14 Ich verwende gcc testing.c -o testing.out -fopenmp SamTew vor 6 Jahren 0
Sie haben also zwei virtuelle CPUs in der VM. VirtualBox ist nicht schuld. Daniel B vor 6 Jahren 0
@DrZoo Wie gesagt, ich habe VM zwei Kerne zugewiesen. SamTew vor 6 Jahren 0
@DanielB Also ist es das Problem der Codierung? SamTew vor 6 Jahren 0
Es würde so aussehen. Ich bin mit OpenMP nicht vertraut, daher kann ich Ihnen nicht helfen, sorry. Ich schlage vor, Sie fragen [so] mit einem vollständigen Codebeispiel. Daniel B vor 6 Jahren 0
Es ist okay. Danke trotzdem. SamTew vor 6 Jahren 0

0 Antworten auf die Frage