FAQ
ArcGIS Desktop 製品のマルチプロセッサ/マルチコア プロセッサ サポートについて
ナレッジ番号:2504 | 登録日:2023/05/29 | 更新日:2024/11/21
ハイパースレッディングやマルチコア プロセッサの背景
大手半導体メーカーである Intel や AMD は、ハイパースレッディングを実装した CPU やマルチコア プロセッサをサポートすることにより、新プロセッサ テクノロジの性能を拡張しています。 ハイパースレッディングは、複数のプロセスが同一の CPU キャッシュを共有することにより、CPU が 1 つ処理を実行している間、別の処理を実行する事を可能にします。 マルチコア プロセッサは、同時に複数の処理を実行することができ、1 つのプロセッサ ソケットに複数の CPU 実行回路を提供しています。 どちらのテクノロジもシステムの演算能力を高めるものですが、アプリケーションがそれを利用するとは限りません。
マルチ プロセッサ / マルチコア プロセッサ環境での ArcGIS Desktop の動作
ArcMap や ArcCatalog などの ArcGIS Desktop アプリケーションは、マルチ プロセッサやマルチコア プロセッサ環境の動作をサポートしています。 しかし、ArcGIS 10 より前のバージョンでは、単一の ArcGIS Desktop アプリケーションの処理に、マルチ プロセッサやマルチコア プロセッサなどのマルチ CPU システムの利点をフルに活用できるわけではありません。 なぜなら、ArcGIS Desktop アプリケーションは、逐次プロセス スレッドを使用しているからです。
ArcGIS Desktop 10 のアプリケーションはマルチコアの利点を活用することができます。 ArcGIS 10 のアプリケーションでベースマップ レイヤやアクセラレートされたラスタ レイヤを使用する場合、表示やブレンディングの処理にマルチ スレッドが使用されます。 その結果、ArcGIS 10 より前のバージョンと比べて、アプリケーションのユーザ インタフェースの反応がより良いと感じられます。
ArcGIS 10 のバックグラウンド ジオプロセシングには 2 つのコアが使用されます(1 つはジオプロセシング タスクを実行、もう 1 つはユーザ インタフェース(フォアグラウンド)処理の実行)。 Windows の 64-bit 環境では、32-bit アプリケーションの実行に利用可能なメモリが拡張され、より多くの RAM を搭載した 64-bit Windows コンピュータのメリットを享受できます。 たとえば、2 つの大容量のジオプロセシング タスク(1 つはバックグラウンド ジオプロセシング タスク、もう 1 つはスタンドアロン Python スクリプト)を実行する場合は、8GB RAM 以上の環境であれば効果が期待できます。
すべての ArcGIS Desktop アプリケーションで、マルチ プロセッサ システムによる小さなパフォーマンスの向上が期待できます。 現在のオペレーティング システムのスレッド(E メール、セキュリティ チェック、バックアップ、その他バックグラウンド プロセスなど)を別の CPU リソースが処理することにより、それらの負荷の影響を受けることなく ArcGIS Desktop アプリケーションを利用できます。
単一の CPU コンピュータの場合、たとえば、負荷の高いジオプロセシング作業を行っている時など、1 つの ArcGIS Desktop アプリケーションを実行することにより、すべての CPU リソースを費やしてしまうこともあります。 ArcGIS 9.3.1 以前は、デュアル CPU または、デュアルコア プロセッサで同時に同じ処理を実行すると、CPU 使用率が、最小パフォーマンス ゲインで 50% をわずかに上回ります。 両方の CPU リソースをフルに使用するには、別の処理、たとえば、別の ArcGIS Desktop セッションまたは別のアプリケーションなどが存在する必要があります。
ArcGIS パワー ユーザ(同時に複数のセッションを操作する場合)はマルチ CPU 環境のメリットを享受できます。 これを活用する簡単な方法は、ArcGIS Desktop アプリケーションとスタンドアロン Python スクリプトの同時使用など、複数のアプリケーションを実行することです。 マルチ CPU ワークステーションでは、ArcGIS ワークフローの中で複数の処理を実行するような負荷の高いジオプロセシング機能や、地図製作作業の効率を大幅に向上させます。
ArcGIS の Python スクリプトを活用し、サブプロセスやマルチプロセシング モジュールを使用するジオプロセシング ツールを記述することができます。 これは、別の並行プロセス実行し、複数のコアを使用します。 Python のサブプロセス モジュールを使用するスクリプトは、複数の並行サブプロセスに ArcPy をインポートすることができますが、マルチプロセシングの場合、発生済みプロセスとプロセスのプールは ArcPy をインポートできません。 また、並列で実行されたモジュールの演算機能は制限されます。
ArcGIS Desktop とその他のサーバ プラットフォーム
ターミナル サーバ、Web サービス、GIS データ サーバなどの、その他のサーバ プラットフォーム環境の場合、Esri テクノロジはマルチ CPU プラットフォーム構成をフルに活用しています。 これらのプラットフォームは、複数同時クライアント処理をサポートするよう構成する必要があります。 たとえば、ターミナル サーバは、1 つの CPU ごとに複数のユーザをサポートしていますし、各 Web サーバも、インバウンド トランザクションの同時処理をサポートするために、複数のインスタンスで構成することができます。 また、GIS データ サーバは、一般的に、複数の同時 ArcGIS Desktop クライアント接続をサポートしています。
メタデータ
機能
種類
製品
バージョン