米オラクルが最新サーバー製品に搭載している新型プロセッサ「SPARC M7」は、米サン・マイクロシステムズを買収してから開発を始めた、初めての世代のプロセッサだ。同社はSPARC M7について、演算性能の高さだけでなく、データベース処理高速化の「SQL in Silicon」とセキュリティ強化の「Security in Silicon」をアピールしている。

 ほかのプロセッサにはない、この2つの機能の正体は何か。日本オラクル クラウド・システム事業統括 製品戦略本部 営業推進部 部長の一志達也氏と、同サーバ製品エバンジェリストの大曽根明氏に聞いた。

 前回の記事:「SPARC M7はOracleの気持ちが入ったプロセッサ」の真意

数珠つなぎでデータを連続処理

 SPARC M7の特徴である「SQL in Silicon」と「Capacity in Silicon」。SQL in Siliconは、名前の通りSQLの構文解析とSQL処理を実行する専用のアクセラレーターだ。Capacity in Siliconは、圧縮データの展開エンジンを指している。

 これらの実体は、チップに統合されている「DAX(Data Analytics Accelerators)」と呼ばれる専用回路だ。ダイ(半導体本体)の上では、CPUコアから離れた3次キャッシュとメモリーインタフェースの間とでもいう場所にDAXが配置されている。

写真はSPARC M7のダイ(半導体本体)写真。Security in Siliconは各CPUコアに1つずつ配される。SQL in SiliconやCapacity in Siliconは3次キャッシュやDDR4インタフェースをつなぐ内部のネットワークのそばに配される
写真はSPARC M7のダイ(半導体本体)写真。Security in Siliconは各CPUコアに1つずつ配される。SQL in SiliconやCapacity in Siliconは3次キャッシュやDDR4インタフェースをつなぐ内部のネットワークのそばに配される
(出所:日本オラクル)
[画像のクリックで拡大表示]

 オラクルの資料では、DAXは「クエリ高速化エンジン」とも呼ばれている。SPARC M7はプロセッサに統合されたメモリーコントローラー内にDAXを8個搭載している。さらにDAX1個当たり、4本のパイプラインを備えている。プロセッサ全体でパイプラインは計32本だ。

 1本のパイプラインは、データの展開、アンパック/アラインメント、スキャン/フィルター/結合の処理、整形/エンコードのブロックから成る。このパイプライン32本をフルに利用した場合、毎秒1700億行のデータベース処理が可能になるという。

DAXの内部構造。DAXの内部はハードワイヤード。提供される機能は固定だ。あとはSPARC M7に対応したデータベースエンジンがデータや処理に応じてDAXを使うか、CPUで処理するかを判断する。ユーザーが明示的にDAXを指定して使うことはできない
DAXの内部構造。DAXの内部はハードワイヤード。提供される機能は固定だ。あとはSPARC M7に対応したデータベースエンジンがデータや処理に応じてDAXを使うか、CPUで処理するかを判断する。ユーザーが明示的にDAXを指定して使うことはできない
(出所:日本オラクル)
[画像のクリックで拡大表示]