web-dev-qa-db-ja.com

UbuntuはマルチコアCPU向けに最適化されていますか?

UbuntuはマルチコアCPUを使用しますか(Windows 7がそう言っているように)?

言い換えると、ユーザーが4つ以上のコアプロセッサを活用できるようにマルチタスクが最適化されていますか?

32
Paul

はい、UbuntuはマルチコアCPU用に最適化されており、長年にわたって使用されています。

一部の背景

「(Linuxカーネルの)バージョン2.0は1996年6月9日にリリースされました。シリーズには41のリリースがありました。2.0の主な機能はSMPサポート(つまり、単一システムでの対称マルチプロセッシング)およびより多くのタイプのプロセッサーのサポート。

45
imbaer

Ubuntuはオペレーティングシステムであり、Linuxディストリビューションです。オペレーティングシステムは、カーネル、 ライブラリ 、サービス/デーモン、アプリケーションなどのいくつかのソフトウェアコンポーネントで構成されます。

Ubuntuは Linuxカーネル を使用します。これは 対称マルチプロセッシング (SMP)と複数のコアを使用します。ローエンドのシングルCPUシングルコアシステムから、数千のマルチコアCPUを備えたハイエンドのスーパーコンピュータークラスターまで、非常に優れた拡張性を備えています。

Ubuntuには数百のライブラリが同梱されており、その一部は マルチスレッド であり、スレッドセーフですが、一部はそうではありません。場合によっては、それらがマルチスレッドであることが理にかなっている場合もありますが、他の場合には、適用できないか、一般的に可能であるか、あまり意味がありません。

Ubuntuには何百ものアプリケーションが付属しており、一部はマルチコアCPUを使用するようにコーディングされていますが、そうでないものもあります。場合によっては、アプリケーションをそのようにコーディングすることが理にかなっていますが、不可能な場合もあります。複数のコアを使用できる、または使用すべきすべてのアプリケーションがそうするわけではありません。

たとえば、ゲームでグラフィック、オーディオ、ネットワーク、物理学などにマルチコアを使用するのは理にかなっています。しかし、計算機、スクリーンショットツール、suduko、またはメニューエディターがマルチコアを認識することは意味がありません。

25
Anonymous

Ubuntuの カーネル は、マルチCPUを長時間サポートするようになりましたが、1つのシステムでマルチコアまたはマルチCPUが完全に処理される場合、実際には関係ありません。

ただし、システムが複数のCPU /コアをサポートしており、それらがシステムに存在するからといって、アプリケーションが自動的に高速に実行されるわけではありません。あなたは今、反対のことを何日も言われます、それはマーケティングのことです。

アプリケーションが複数のCPU /コアを同時に利用するには、それらのCPU /コアでプロセス負荷を共有するように構築する必要があります。

つまり、Windowsでwordpadのような単純なものを実行していて、hugeテキストファイルを開いて、読み込み時間を指定するとします。 1 CPUまたは1兆CPUのどちらでも同じになります(同じバス速度と同様のアーキテクチャのcを持つCPUの場合)。

同じことがLinuxカーネルとUbuntuディストリビューションにも当てはまります。アプリケーションが単一スレッド用にビルドされている場合、それ以上のCPUは何もしません。

稼働中のシステムが複数のCPU /コアでアプリケーションの負荷を最適化するために1日に行っていることの1つは、他の負荷ほど負荷のないコアでプロセスを実行できることです。したがって、負荷を分散し、複数のコア使用率が最適です。実際には、その手法を使用しても速度はわずかしか向上しません。

コアの輝きを本当に見たい場合は、ビデオ編集などの 対称型マルチプロセッシング をサポートするプログラムでCPUの使用率を高くする必要があります。

10
Bruno Pereira

はい、それは私にとって完璧に機能し、複数のプロセッサを持っていますおよびハイパースレッディング、それが意味することを忘れましたが、各プロセッサが結合した複数のスレッドを実行できるということを意味すると確信しています各プロセッサに2つのコアがあるという事実では、問題があるように思われます。これまでに遭遇した唯一の問題は、ubuntu上のプログラムがフリーズする傾向があることです。 6GBのRAMを持っているので、swapinessを減らすことで、これをあまり頻繁に行わないようにしました。

1
barefoot138