Larrabee 単語

ララビー

3.6千文字の記事

Larrabeeとは、Intel社が現在開発中x86系並列データプロセッサである。

概要

後期Pentiumにあたる"P54C"アーキテクチャベースベクトル演算器を拡したものを1コアとし、それを多数並べてリングバスで繋いだものの他、テクスチャユニットメモリコントローラディスプレイインターフェースPCIExpressインターフェースを搭載し1プロセッサとする。

初期は別個の製品として発売される予定だが、IntelはLarrabeeで培ったノウハウを用い2014年には並列データ演算用のコプロセッサとしてCPUに統合するつもりだった。

Larrabeeは結局製品化されず、これに続く「Larrabee2」も中止されたが、Larrabeeのアーキテクチャを受け継いだ「Xeon Phi」が後に発売されている。[1]

もっと詳しくて長ったらしい話

LarrabeeはGPUなのか

Larrabee(正確に言えばLarrabee以降に連なるであろう一連の製品群)は今のところ、「Intel開発している新しいGPU」という認識が多いようで、実際そう書いているサイトもいくつかある。
それは間違いではないが、簡潔に書きすぎて誤解を招く表現である。

Larrabeeが狙う市場一部分3Dグラフィックスというだけの話で、別に3Dグラフィックス処理のためだけに作られたものではない。

というか3Dグラフィックの為の演算回路をハードウェアで搭載しているNVIDEAやATIGPUに、ほぼ全て(テクスチャ演算以外)の処理を全てソフトでやろうとしているLarrabeeが現状勝てるはずがない。(固定機ICCPUに同じ処理をさせた場合、固定機ICのほうが高い性を示すのは当然である)

正確に言えば、Larrabeeが見据えているのはHPC分野を代表とする並列データ計算だ。

CPU化するGPU、GPU化するCPU

GPUは2D表示機が成熟しきって以降、3Dグラフィック演算性を高速化する方向でひたすら進化してきた。ひたすら進化するうち、GPUハイエンドでは演算ユニット100以上、演算性も1TFLOPSえるものすら出てくる並列巨大プロセッサとなった。(極端な話、3Dグラフィック演算は仮想カメラから見てどの物体のどの面がどんな色で一番手前に見えるかを画面のドット毎に計算するマルチスレッドプログラムといえる)

となれば、その演算性並列データ計算に流用しようという動きが出てくるのも必然といえるし、DirectX8より採用されたプログラマブルシェーダがそれを可にした。

実際、二大GPUメーカーの片割れであるnVIDIAGPUグラフィック以外の並列演算に使用するためにCUDAというプラットフォームを発表したし、CUDA専用のGPU(ディスプレイ出力は持たないが内部構造は間違いなくGPU)としてTeslaというシリーズを発表している。

一方のIntel。"Prescott"でシングルスレッドの向上に行き詰って以降、マルチコア及び並列演算性の強化に力を入れているのは皆さんご存知の通りだろう。マルチコア化の流れは既に8コア開発中コア"Nehalem-EX"が発表される段階まで来ているし、それ以降の16コア、24コア、さらには32コアでさえも既に計画の中に入っていると言われる。

単体の性はそこまで高くないコンパクトユニットを数十から数十個並べることでCPUより汎用性は低いながらも高い並列演算性を実現するGPUコア単体の性向上を諦めたかわりにコアをいくつも搭載することにより高い汎用性とそれなりのシングルスレッドを維持しつつ並列演算性を向上させているCPU

CPUGPU、お互いの特徴が近づきつつあるということをわかっていただけただろうか。

「CPU」の足かせ

前節で触れたIntelマルチコア及び並列演算性の強化というのは、現在の製品で言うところのCore2シリーズ及びCorei7シリーズの話である。パソコンの「CPUとして」開発されているCoreプロセッサは、今までのソフトウェア資産を今までと少なくとも同等かそれ以上の速度で実行できることを期待される。つまり、「1コアあたりのシングルスレッド最低でも維持する」ことが前提なのだ。

しかし、それではGPUの処理速度向上に食らい付いていくことはできない。「シングルスレッドの維持」という足かせゆえ、コアサイズをある程度大きくせざるを得ず、その分たくさんのコアを並べることが出来ないからだ。

ではどうするか、というのは意外にも逆転の発想で簡単に解決する。

要は「CPUとして開発しなければ」シングルスレッドの維持という足かせを取り払う、すなわちシングルスレッドを削ることが出来るようになるわけで、シングルスレッドを削りサイズを縮小した分たくさんのコアを並べ全体としての並列演算性を稼ぐことが出来る。Atomの項でも述べたが、今までIntelは2倍の面積で1.25~1.4倍程度の性となる機トランジスタを費やしてきた。

ということは最も基本的なコアに立ち返ればもっとも良い面積(もちろん消費電力も)が得られるはずである。x86に連なる歴代のコアの中でP54Cの次となるP55Cは製品名であるMMX Pentiumが示すとおり、拡MMX実装されている。すなわちP54Cは最後の「素の」x86系アーキテクチャであり、故にP54Cがコアベースとして選ばれたのである。

Larrabeeの位置づけ

Larrabeeは「CPU」というカテゴリに属するゆえの足かせを取り払うことによって1コアサイズを小さくして面積を高め、それを現在CPUよりも圧倒的に多く並べることによって並列演算性を稼ぐというコンセプトであるのは前節で納得していただけただろう。それはマルチコア、並列化する現行のCPUよりも更に数段GPUの側に寄った設計思想であり、CPUの弱点を解消するためのものだと言える。

では逆に、Larrabeeは何を武器に戦うのだろうか。弱点を埋めるのも良いが、相手に対する優位点がなければ弱点をいくら埋めても勝つことは出来ないはずである。

と、問題提起しておきながら答えは至極簡単だ。単純に、「x86系であること」である。x86系のコードを実行出来るということは過去x86CPUプログラムをほとんど手間く実行出来る(性は落ちるだろうが)ということだし、仮に新しくプログラムを組むとしても使い慣れた言語を使用出来るというメリットはとても大きい。プログラマにとって新しい言語を習得するというのは面倒なことだし、それでなくともGPUプログラム文法は扱いづらいのだ。

ソフトの変化を期待するLarrabee

とはいえ、現状ではLarrabeeが普及するのはまだ難しい。並列データ演算のためのプラットフォームとしてはCUDAに先を越されてしまっているし、3Dグラフィック演算に従来のDirectXを用いる状況ではやはり最適化されたGeForceRADEONのほうが速い。

その状況を打開するにはまず、ソフトウェアを作るメーカーに「従来の制約から解き放たれた自由3Dグラフィック処理、並列データ演算」を体験してもらい、納得してもらい、そして移行してもらう必要があるだろう。そして3Dグラフィック処理がLarrabeeに移行した時、それは従来の「GPUが専門に担う」といったような特別なものではなく単にCPUが演算する数多くのタスクの中の一つとなるのだ。

すなわち、Larrabeeが普及するためには「Larrabeeが従来の土俵に上がるのではなく、ソフトをLarrabeeの土俵に招き入れ」なければならない。過去ソフトとの互換性を重視するPCにおいてはなかなか難しい取り組みだが、もしこれが成功したとしたらと考えるとその時のインパクトは計り知れないものがある。

これからのLarrabee

残念ながら、第一世代となるLarrabee1の製品化は見送られてしまった。2010年GPUにはまだ対抗出来ないと判断されたからである。

かしこれは計画の頓挫を意味するものではなく、Intelはまだ2014年CPUへの統合を諦めてはいない。第二世代のLarrabee2から製品化されるといううわさもある。

3Dグラフィックス、いやソフトウェア全体をガラリと変えてしまう可性すらも秘めているLarrabeeに、これからも注せざるを得ない。

関連項目

脚注

  1. *GPU黒歴史 Intel Larrabeeほかマイナー系GPUを総ざらえexit 2012.7.2
この記事を編集する

掲示板

おすすめトレンド

ニコニ広告で宣伝された記事

記事と一緒に動画もおすすめ!
山口剛央[単語]

提供: Pyun Pyun

もっと見る

急上昇ワード改

最終更新:2025/12/27(土) 20:00

ほめられた記事

最終更新:2025/12/27(土) 20:00

ウォッチリストに追加しました!

すでにウォッチリストに
入っています。

OK

追加に失敗しました。

OK

追加にはログインが必要です。

           

ほめた!

すでにほめています。

すでにほめています。

ほめるを取消しました。

OK

ほめるに失敗しました。

OK

ほめるの取消しに失敗しました。

OK

ほめるにはログインが必要です。

タグ編集にはログインが必要です。

タグ編集には利用規約の同意が必要です。

TOP