ハードウェアアクセラレーション ハードウェアアクセラレーションの概要

Weblio 辞書 > 辞書・百科事典 > 百科事典 > ハードウェアアクセラレーションの解説 > ハードウェアアクセラレーションの概要 

ハードウェアアクセラレーション

出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2020/12/10 01:59 UTC 版)

ナビゲーションに移動 検索に移動

概略

ハードウェア・アクセラレーションはパフォーマンスを改善するために使用される様々な技術のうちのひとつである。特に並列処理の点で、専用設計されたハードウェアは効果を発揮しやすい。通常、CPUによるソフトウェアの実行では、CPUが備えるプリミティブな命令の並びで処理を実現し、その命令を逐次的にひとつずつ実行する。一方ハードウェアによるアクセラレーションでは特定の処理のための専用のハードウェアを設計し、そのハードウェア内では回路の並列性を生かして演算を並列に行うことで、逐次的な命令実行の場合よりはるかに高速に演算を実行する。しかし専用に設計されたハードウェアとして処理を実現した場合、CPUが備えるプリミティブな命令の組み合わせによりソフトウェアとして処理を実現する場合に比べて柔軟性が減少する。またハードウェアの設計及び製造にはソフトウェアに比べて桁違いのコストが必要になる。

このような実行性能と柔軟性やコストとのトレードオフから、ハードウェアによるアクセラレーションはソフトウェアの中でも特定のパターンの演算を集中的に処理するようなパフォーマンスの上重要な部分について利用される。ハードウェア・アクセラレーションは小さな機能ユニットからMPEG2の動作予測のように大きな機能ブロックまでさまざまな粒度にわたる。一般に粒度を大きくできれば実行性能が向上する一方、用途が固定化され柔軟性は低下する傾向がある。

アクセラレータ

処理の高速化を支援するハードウェアを総称してアクセラレータと呼ぶ。代表的なものに、Bit Block Transfer機能や3次元コンピュータグラフィックス描画、動画再生支援機能などを含むリアルタイムグラフィックス処理に特化したGPU(かつてはグラフィックアクセラレータと呼ばれていた)、数値演算コプロセッサなどとも呼ばれるFPU、音声などのデジタル信号処理に特化したDSPベクトルプロセッサやFPGA等を拡張ボードに実装したもの、などがある。専用計算機などでも、コストなどの点で一般の処理について通常のコンピュータを流用するためにアクセラレータの形態をとることがある。また以前はパーソナルコンピュータにおいて、アップグレードのためCPUを換装するのが一般的でなかったこともあり、オーバードライブプロセッサ等による「CPUの高速化」のためのプロセッサを「CPUアクセラレータ」等と称したこともあった[1]

また近年[いつ?]はグラフィックスなどはGPUに機能が分離される一方で、SSEなどのSIMD型拡張命令として、CPU自身がアクセラレータ的な機能を持つ命令を積極的に備えるようにもなってきている。

問題点

アクセラレータを搭載しないコンピュータでは、ハードウェア・アクセラレーションを利用したソフトウェアを実行することができない。代替としてソフトウェアによる実装をフォールバックソリューションとして用意することもあるが、開発工数やテスト工数も増加する。また、アクセラレータの命令仕様や演算精度の違いから、演算結果がCPUによるソフトウェア処理と異なる場合も問題となる。

また、アクセラレータを操作する処理を記述する際、本来アプリケーションソフトウェアを実現するために本質的ではない、ハードウェアに関する予備知識も必要となる。通例、ハードウェアを抽象化・標準化するDirectX/OpenGL/OpenCLといったアクセラレーション用APIを介することで、ハードウェアの詳細な実装を隠蔽することが多いが、ハードウェアおよびデバイスドライバー層がこれらのAPIをサポートする必要がある。

なお、通例CPUと外部ハードウェアとではメモリ空間が異なることから、外部ハードウェアに処理を委譲する際にデータをメインメモリから外部メモリに転送する必要があったり、逆に外部ハードウェアの処理結果を取得する際にデータを外部メモリからメインメモリに転送(リードバック)する必要があったりするため、プログラムが煩雑となる。AMD APUにおけるHSAのように、CPUと補助プロセッサのメモリ空間を統合することでソフトウェア開発の負担を低減する解決策も提案されている。


  1. ^ ある一時期には「Intel 80286#CPUアクセラレータ」の記事にあるように、286マシンに486を載せるといった製品まで登場した。


「ハードウェアアクセラレーション」の続きの解説一覧



英和和英テキスト翻訳>> Weblio翻訳
英語⇒日本語日本語⇒英語
  

辞書ショートカット

すべての辞書の索引

「ハードウェアアクセラレーション」の関連用語

ハードウェアアクセラレーションのお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



ハードウェアアクセラレーションのページの著作権
Weblio 辞書情報提供元は参加元一覧にて確認できます。

  
ウィキペディアウィキペディア
All text is available under the terms of the GNU Free Documentation License.
この記事は、ウィキペディアのハードウェアアクセラレーション (改訂履歴)の記事を複製、再配布したものにあたり、GNU Free Documentation Licenseというライセンスの下で提供されています。 Weblio辞書に掲載されているウィキペディアの記事も、全てGNU Free Documentation Licenseの元に提供されております。

©2021 GRAS Group, Inc.RSS