仮想環境で複数のコアを有効にするにはどうすればよいですか?


20

Oracle VM VirtualBox Managerを使用して仮想環境にUbuntuをインストールしましたが、うまく機能します。

ただし、複数のコアを有効にしたいと思います-下の図に示すように、Windowsマシンには2つのコアがあります。

ここに画像の説明を入力してください

lscpuUbuntu を実行すると、1つのコアのみが使用されていることを示す次の情報が表示されます。

ここに画像の説明を入力してください

仮想ボックスの設定を変更して複数のプロセッサを有効にしようとしましたが、次の図に示すように変更できません。

画像

仮想環境で複数のコア(プロセッサ)を有効にするにはどうすればよいですか?

回答:


17

VMで複数のCPUを有効にするには、さらに次の設定が必要です。

  • [全般設定]タブの64ビット仮想ゲストハードウェア(64ビットゲストの場合)

    ここに画像の説明を入力してください

  • マザーボード設定タブでI / O APICを有効にします

    ここに画像の説明を入力してください

  • Accelerationタブでハードウェア仮想化(VT-x / AMD-V)を有効にします

    ここに画像の説明を入力してください

使用可能なすべてのコアでVMを実行すると、CPUに実行上限を割り当てるときにホストのパフォーマンスが向上する可能性があることに注意してください。

virtualboxのホットプラグCPU機能を有効にしていない場合、コアの数の変更はシャットダウンされたマシンでのみ実行できます。

ゲストのパフォーマンスが向上するのは、いくつかのコアを使用するソフトウェアの場合のみです。その場合にのみ、すべてのコアに実行上限を設定することが理にかなっています。


だからこれは32ビットのUbuntuでは不可能ですか?

1
@cipricusは通知をありがとう、64ビットはもちろん64ビットのゲストにのみ必要です。
Takkat 14年

@TakkatゲストOSとして32ビットUbuntuを使用しています。複数のCPUを有効にするにはどうすればよいですか?
smwikipedia

15

VMが現在実行中(または「保存済み」)の場合、その値を変更することはできません。最初にVMの電源を切ります。


実行時にプロセッサを交換できるとしたら、本当に素晴らしいと思います。これにより、CPUが新しいディメンションを調整します。
トマーシュザト-復活モニカ

2
VirtualBoxがサポートCPUホットプラグを
brunoqc

1

私は、仮想マシン上で順番に実行されるマルチスレッドプログラムに取り組んでいました。あなたと同じような問題がありました。私はそれを修正しました:

  1. 仮想マシンを停止するか、終了します。
  2. VMWareの起動->マシンの選択->システムのクリック->プロセッサーのクリック->プロセッサーの数の変更。
  3. 仮想マシンを起動します。

以前の標準スレッドのstd :: thread :: hardware_concurrency()は1を返しましたが、変更後は仮想マシンの設定でのCPUの数を返します。

これで、VMでマルチスレッドプログラムを正常に実行できました。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.