FPGAでmemcachedを!的な話をブログに妄想として書いたり、雑談で人とすることがあったりしたのですが、世界では実装されて既に発表されていました。*1
- Achieving 10Gbps Line-rate Key-value Stores with FPGAs
ざっくり中身
- NICに対してFPGAをオンボードしてその部分でmemcachedのプロトコルを解釈して直接DRAMに値を書き込む
- ハッシュテーブルの大きさは200万レコードで24GByteのストレージを持つ
- NICに入ってきたパケットを以下の順で処理する
- memcachedプロトコルの解析
- ハッシュテーブル問い合わせ
- ハッシュテーブルへの値の格納・取得(DRAM書き込み or 読み込み)
- memcachedプロトコルとしての応答生成
- 上の一連の処理が156MHzのクロック駆動481サイクルで完了する
- これを並列化且つパイプライン化
- 実験
- First Results of Memcached Evaluation
- 今後の課題
- ハッシュテーブルの大きさの制限
- 実際のアプリケーションでの利用
- 他のアプリケーションでの活用を見つける(=恐らくWebアプリで利用されるキャッシュ以外での活用の模索?)
そしていろいろ調べると既にFPGA入ったアプライアンスとして世の中に出ていることを知った。*2
このあたり今年ぐらいから盛り上がったりするのだろうか。
(Visited 2 times, 1 visits today)