Fpgax7 aom
-
Upload
aomtoku -
Category
Technology
-
view
81 -
download
1
Transcript of Fpgax7 aom
とは / ” ”
▶ KeyとValueを格納する超単純なデータベース▶ スケールアウトに特化▶ SNSを初めとする多くのWEBサービスで使⽤
▶ Facebookの写真のキャッシュにMemcached▶ TwitterのタイムラインのキャッシュにRedis▶ LINEのストレージ・キャッシュにRedis・HIVE
3
による限界と 化のメリット
Xilinx社によるMemcached⾼速化[Blott] 1
▶ FPGAにMemcachedを実装▶ KVS処理のパイプライン化
プラットフォーム RPS [M] RPS/W [K]Intel Xeon (8コア) 1.34 7TilePRO (64コア) 0.34 3.6
スタンドアロンFPGA 13.02 254.8FPGA + ホストPC 13.02 106.7
電⼒あたりの性能がスタンドアロンFPGAでは約30倍改善!デメリット : FPGAボード上のDRAMのサイズに律速(<数GB)1[Blott] Achieving 10Gbps Line-rate Key-value Stores with FPGAs,HotCloudʼ13
4
REmote DIctionary Server
▶ インメモリKVS▶ Valueにデータ構造を定義可能▶ 永続化(ディスクに書き出し可能)▶ DB-Engines RankingでKVSの中で1位
Memcachedとの相違Memcached Redis
プロトコル Memcacheプロトコル 独⾃プロトコルデータ永続化 x ○データ構造 string String, List, Hash,
Set, Sorted SetHW化の事例 多数 x
5
設計⼿法の対⽐ .
Memcached深いパイプライン化▶ Valueにデータ構造がない▶ Write/Readの操作時間が⼀定
Redis ヘテロジニアスマルチコア⽅式▶ データ構造毎に処理時間が異なるため、パイプライン化が困難
▶ データ構造毎に専⽤演算器(PE)を設計▶ マルチコアで⾼速化
6
NetFPGAプロジェクト▶ githubベースのオープンハードウェア▶ NetFPGA-10G, NetFPGA-SUME
NetFPGA-10G
FPGA Xilinx Vertex5DRAM RLDRAM-II 288MBSRAM 27MB
Network 10G x4PCIe Gen2 x4
NetFPGA-SUME
FPGA Xilinx Vertex7DRAM DDR3 SDRAM 8GBSRAM 27MB
Network 10G x4PCIe Gen3 x8FMC 100G Ether対応!? 9
領域のメモリ管理
Slab Allocator
▶ FPGA内のCPU(MIPS R3000互換)によるSlab Allocator▶ Chunkサイズ毎に未使⽤のChunkをFree Listで管理▶ Slab allocatorに140クロックサイクル(SET処理の7割) 12
データ構造サーバ設計プロジェクトのまとめ
Redisのハードウェア化の検討
ねらい▶ RedisのようにValueにデータ構造を定義▶ FPGAによる低消費電⼒で動作するデータベースサーバ▶ PEのヘテロジニアスマルチコア化による⾼いスループットこんなことがしたい!▶ ⽤途に応じてPEのカスタマイズ可能▶ 現在、ASIC化も取り組み中
13
インカーネル
インカーネルKVS▶ FPGA NICでIP, UDPのチェックサム、Keyのハッシュ値の計算をオフローディング
▶ KVSパケットのみをネットワークスタックをバイパスし、カーネル内処理
14
/ の得⼿不得⼿
キャッシュ容量 電⼒効率(Perf/Watt)HW⾼速化 x オンボードDRAMの
容量に律速 (<数GB)○ ⾼いPerf/Watt
SW⾼速化 ○ メインメモリをストレージとして使⽤可能(<数TB)
x ⼤幅なPerf/Wattの向上は困難
▶ 容量と電⼒効率のトレードオフ▶ HW⾼速化⼿法とSW⾼速化⼿法の併⽤が適切
16
キャッシュ階層の検討項⽬
▶ キャッシュの連想度・Victimキャッシュ▶ 同⼀ハッシュ値を有するキャッシュブロックの個数
▶ Key-Valueサイズによるキャッシュポリシー▶ 書き込み⽅式 (Write back / Write Through)
▶ 書き込み時のキャッシュの割り当て▶ Write allocate / Write non-allocate
▶ キャッシュ階層間の包含(Inclusion)▶ キャッシュのEvictionポリシー
18
データベースコアの 化
▶ データベースコアのASIC化 (ルネサス社65nmプロセス)
▶ ストア領域として8KSRAMセル
▶ 3次元積層チップとして想定
▶ 今回はプロセスの検証として簡易版を実装
21