WIDE Technical-Report in 2010

Handmade WG 2010 年度活動報告

wide-tr-handmade-report-2010-00.pdf

WIDE Project : http://www.wide.ad.jp/

If you have any comments on WIDE documents, please contact toboard@wide.ad.jp

Title:Author(s):Date:Handmade WG 2010 年度活動報告
島 慶一 (keiichi@iijlab.net), 中野 博樹 (cas@trans-nt.com)
2010-1-3

Handmade WG 2010 年度活動報告
島 慶一∗

中野 博樹†

概要

加率の減少とともに低くなってきており、また、技術、知識の継承も十分に行われてこなかった。

本書は Handmade WG の 2010 年度の活動をまとめ一方、ソフトウェア技術に関しても、デバイスドラたものである。

イバー、OS など、低レイヤーのソフトウェアに関する活動は年々減少してきており、ウェブアプリケーショ

1ンやスクリプティングへの偏重が見受けられる。元々Handmade WG とはアプリケーション分野が不得意といわれる WIDE プ
ロジェクトにとって、アプリケーション層の技術開発ネットワークに関する研究を進めていく上で、ハーがプロジェクトにとって欠かせない重要な項目であるドウェア技術とソフトウェア技術の連携は欠かせない。

ことは言うまでもないが、それもソフトウェア階層のネットワーク技術の研究が始まった当初は、計算資源知識がなければ十分に活用することはできない。の制限などにより、ハードウェア技術を進展させる方

Handmade WG は、内容の如何に関わらず、ハード向での研究が主なものであったが、計算機の驚異的なウェア技術を活用してネットワーク技術の研究活動に発展により、ネットワーク技術の分野に限らず、多くの役立つ為の基礎をお互いに学習する場、またソフトウェ処理をソフトウェア側で実行する形態が一般的となっアのみの技術では解決が困難な課題をハードウェア技ている。

術を用いて解決できるようなアイデアを考えていく場、

しかしながら、近年はその傾向が強すぎて、ソフトまた新しいソフトウェアアーキテクチャを自らの手でウェアに依存しすぎた技術開発をしてしまう場合が散考えていく場として 2010 年 10 月に設立された。

見される。ハードウェア技術との連携を考慮することで、より優れたデザイン、もしくは、よりよい性能を獲得できる余地があるにもかかわらず、単にソフトウェ
アでも可能だから、あるいはハードウェア技術に詳しくないから、といった理由で連携を考慮しないのは、研究活動の幅を狭め、また本来獲得できたであろう価2

今年度の活動2.1

WG 立ち上げのための活動

Handmade WG に関係する活動が最初に行われた値を低減させかねない。のは 2010 年 8 月に開催された WIDE ボード合宿であまた、ソフトウェアのみでは実現不可能な分野も当る。この時点では、明確に Handmade WG の立ち上然ながら存在する。近年、組み込み用のプロセッサがげや、具体的な活動について内容が決まっていた訳で安価に入手できるようになり、一般的な計算機との連はないものの、ハードウェアをソフトウェアの連携に携動作も容易になってきている。なかでも、センサーよる研究活動に関する紹介が行われ、出席したボードや UI 技術の分野では、これらの組み込み機器と、デーメンバーおよび有志参加者にハードウェア関連技術へタ処理を行うソフトウェア技術の連携による面白い研の取り組みを思い出させるきっかけとなっている。本究活動が多く見受けられる。

節では、ここで議論された項目のいくつかをかいつま残念ながら、WIDE プロジェクト内でのハードウェんで報告する。

アに関する技術力は、その分野に詳しかった年代の参• 汎用部品を用いたネットワークボードの開発の現∗ 株式会社 IIJ イノベーションインスティテュート

状† 株式会社トランス・ニュー・テクノロジー

1

一橋大学の台坂博氏から、「汎用部品を用いたネッ

ではアクセラレータが持つ本来の性能を引き出すトワークボードの開発の現状」と題して天文学事はほとんどできない。アクセラレータの構成をシミュレーションへの応用を念頭においたネット把握し、計算処理が均等にすべてのアクセラレーワークアダプタが紹介された。並列計算の分野でタノードに分散するようなプログラムを記述するは、大量のデータを複数の計算機の間でやりとりことが重要である。プレゼンテーションでは AMDする需要が存在する。既存の高速ネットワーク技社の GPU を例にとって効率的なプログラムを記術を利用することはもちろん可能であるが、それ述する方法が紹介された。

らのデバイスは一般的に高価であり、また標準化• IP 接続による密結合型分散コンピューティング
慶應義塾大学の松谷健史氏からは、「IP 接続による密結合型分散コンピューティング」と題して、された技術では現状 10Gbps 程度までの転送能力しか提供されていない。台坂氏は、パーソナルコ
ンピュータに使われている汎用バス規格のひとつ

IP を計算機のバスとして用いる IP バス型計算機アーキテクチャの紹介と、その実証実験基盤となである SATA に注目し、それを複数束ねることによって既存のネットワークデバイスを上回るネッるプロトタイプが紹介された。本研究は慶應義塾トワークアダプタを提案している。また、アイデ大学村井研究室にて IP バスコンピュータとしてアの検証のために FPGA を用いたプロトタイピ研究が続いてきている内容の延長であり、その最ングを行っている。

先端の研究成果である。目標とするものは、アプ• 汎用品を組み合わせたストレージ・ネットワーク

リケーションに制約のない分散計算環境を提供し、国立天文台の大江将史氏から、「汎用品を組み合わ計算機アーキテクチャを定義することである。こ

自由にあるいは自動的にスケールアウトが可能なチューニングのような課題は、これまでの並列計算機の研究開せたストレージ・ネットワークチューニング」と発で長年議論された内容であり、ここではアーキ題して、高速な NAS を構築するためのチャレンテクチャの基礎通信技術として IP を用いた際のジが紹介された。数種類のハードディスク、SSD、実現性の検証が行われている。

RAID カード、ネットワークアダプタ、マザーボードなど、利用する部品はすべて汎用品を用いる事• 10GbE on FPGA東京大学の小泉賢一氏より、FPGA を用いた 10Gで、全体のコストを下げつつ、それらが持つ性能を最大限引き出す組み合わせを模索した結果が報スイッチのデザインとそのプロトタイプ実装の成告されている。知見としては、単にデバイスを組果が披露された。高速なネットワークでは、長いみ合わせただけでは、各々が持っている性能の合時間単位では帯域以内のトラフィックしか流れて計性能を出せる訳ではなく、マザーボードの選定、いないように見えても、観測時間を短くするとRAID の構成方法などによって限界性能が変わっ一時的には帯域を越えるトラフィックが流れていてくる事があげられる。本チャレンジは継続中でる事があることが分かる。このようなバーストトあり、今後も WIDE 研究会その他で報告が継続

ラフィックはパケットロスを引き起こす原因となされる予定となっている。

り、結果的に全体のスループットを低下させてしまう。小泉氏の提案するスイッチでは、スイッチ• メニーコアアクセラレータプログラミング
会津大学の中里直人氏より、「メニーコアアクセの出力ポートと入力ポートの間でフロー制御を行い、入力ポートから出力ポートへのデータの流れラレータプログラミング」と題して、ハードウェをシェーピングすることで、前述のバーストトラアアクセラレーションを用いた並列計算プログラムを行う場合のテクニックが紹介された。近年、フィックを抑え、ワイヤーレートでの通信を実現

GPU などを用いた並列計算環境が整いつつあり、必ずしもハードウェアの知識がなくても莫大な計している。また、そのアイデアを実証する FPGAボードの試作機も紹介された。

算資源を用いる事が容易になりつつある。しかし

ボード合宿では、既存のネットワーク機器にこだわながら、ただ漫然とプログラムを書いているだけらない、設計の本質を見据えたシステムデザインを志2

す事で、研究品質が向上することが再確認された。また、WIDE プロジェクト内でのハードウェアを活用し4 倍精度演算機の設計と実装が取り上げられている。これは中里氏が関わっている天文学シミュレー

た研究の取り組みが近年著しく減少、また活用技術のションに必要な演算を実行する為に必要だった機練度も大きく後退している事が心配事項として挙げら能であり、この機能により本来の研究活動が加速れた。これを受けて、WIDE 合宿などでの活動、およされている。近年のコンピュータシステム設計にび Handmade WG への設立へとつながっていくことおける分業化傾向は、仕事の細かい分割と再割りとなった。

当てを可能とし、業務効率は向上しているかもしれないが、最終的に得られる効果は必ずしも向上

2.2したかどうか十分考慮する必要がある、との問題

WIDE 合宿での集中議論提起で発表を締めくくっている。

ボード合宿での議論を受け、ハードウェアとソフト

WIDE 合宿では、ボード合宿での議論を受け、ボーウェアの融合についてより多くの WIDE メンバーに考ド合宿に参加できなかったメンバー間でその内容を共えてもらうため、プレナリー枠にて議論を行った。本有し、さらに新しい事例を挙げながら、自分の研究の節では、WIDE 合宿で取り上げられたトピックをかい質を向上させるための手法のひとつとしてハードウェつまんで紹介する。

ア活用の道を紹介した。この合宿での活動を受けて、

Handmade WG が設立されている。

• 高速ネットワーク環境でのログ採取技術に関する研究経過報告

東京大学の小泉賢一氏から、研究活動の途中経過

FPGA 勉強会の開催報告として超高速ネットワーク環境でのログ採取2.3技術に関する発表が行われた。

WIDE プロジェクトには優秀なソフトウェア技術者が数多く在籍しているものの、ハードウェア記述言語• NetFPGA の紹介に精通した技術者はあまり多くない。FPGA でのプロ

慶應義塾大学の堀場勝広氏から、FPGA を用いてグラムが Handmade のすべてではないものの、手法のプログラムできるギガビットイーサネットカードひとつとして活用できる技能を身につけておくのは各である NetFPGA[1] が紹介された。NetFPGA に自の今後の研究にとって有効と考え、FPGA 勉強会をは 4 ポートのギガポートと Xilinx 社 [2] の Virtex-開催中である。これまでに 2 回の勉強会を開催しておII Pro 50 が搭載されており、ネットワークアダプり、今後数回に渡って継続して勉強会を開催する予定

タ、スイッチングハブ、ルータなどの内部構造をとなっている。開催済みの会の概要を以下に示す。

直接プログラムできる環境となっている。ハード
ウェアレベルでパケット処理できるため、ソフト• 第 1 回 ディジタル回路入門
開催日: 2010 年 10 月 2 日

ウェアのみでは実現できないワイヤーレートでの転送が実現可能となっており、安価 (アカデミッ

講師: 慶應義塾大学 松谷健史

ク価格で$499、一般向けで$1,199) でありながら

概要:

WIDE の研究者が主にソフトウェア研究者であることを踏まえ、FPGA プログラム十分な性能を引き出すことができる。に必要となる基礎的な論理回路の知識を復習• DIY (handmade) HPC
会津大学の中里直人氏より、「DIY (handmade)HPC」と題して発表していただいた。初期の計算した。WIDE メンバーのみの閲覧となるが、資料 は http://member.wide.ad.jp/~shima/tmp/handmade-study/handmade 01.pdf から入手できる。

機はほとんど自作のものであり、主となる研究目的を達成するために副次的にデザインされたものであったが、近年、計算機の汎用化が進み、計算• 第 2 回 HDL 輪講とシミュレータ環境の構築
開催日: 2010 年 11 月 6 日

機自体をデザインするということが少なくなっている。ここでは、中里氏の活動のひとつとして、講師: 慶應義塾大学 松谷健史

3

概要:

ハードウェア記述言語のひとつである• 6lowpan テストスイート
WIDE プロジェクトでは、IPv6 の普及政策のひ

Verilog と、Xilinx 社の評価ボード Spartan 3AN
Starter Kit1 を用い、実際の FPGA プログラム開発を実習形式で学習した。Handmade WG でとつとして、TAHI プロジェクト [3] による IPv6は、国立天文台の大江氏のご好意により、数枚のてきた。この活動は現在 IPv6 Forum[4] での活

Spartan 3AN Starter Kit が貸し出し可能となっているので、興味のある WIDE メンバーの方は動と統合され、IPv6 機器の品質向上に貢献して大江氏と連絡を取り、勉強会に参加してもらえた省電力無線機器を用いたノードの利用が増えてきらと考えている。ている。これらの機器で IPv6 をサポートするた機器の仕様適合性テストスイートの提供を実施しいる。近年、センサーネットワークなどの分野でめの規格として IETF 6lowpan (IPv6 over Low

第 3 回は後述する東京エレクトロン様のプライベー

power WPAN) WG がプロトコルを定めている。
6lowpan が無線ネットワーク上での動作を規定すトセミナーとして開催することとなっており、より細かい FPGA プログラミングの学習の場を提供予定でる規格であるため、テストスイートも無線ネットある。

ワーク上でテスト対象クライアントと接続する必以降のスケジュールについては、Handmade WG

要があるが、現在のところ無線上で動作する検証の WIKI ペ ー ジ https://member.wide.ad.jp

システムが存在しない。6lowpan 機器のテストス/wg/handmade/wide-confidential/wiki/ に 随 時

イート作成協力者が広く募集された。

最新情報を掲載する予定としているので、ご興味のある方はそちらを参照して欲しい。

2.5
2.4

FPGA 活用への展望FPGA を使ってネットワークを流れるパケットの処

Handmade Grand Challenge

理を行うことは、随分前から行われてきたが、ネット

2010 年 12 月の WIDE 研究会では、Handmade
Grand Challenge として、今後ハードウェアアクセラワークにおける FPGA の活用について基本に立ち返って議論し、研究を進める時が今こそ来ていると考える。

レーションを利用して進めていきたい研究項目を自由

ここでは、FPGA に関連する現在の状況を簡単にまとに挙げてもらう時間を設けた。ここで挙がったアイデめた後、この領域において FPGA の利用を進めていアは以下の通りである。

く上での課題を提起し、これを解決する 1 つの提案として、ソフトコアネットワークプロセッサを活用して、• Network Earthquake Generator
FPGA を用いて、ワイヤーレートで任意のパケッ論理回路と汎用プロセッサとの組み合わせと使い分けを提案する。

トを送出するネットワークトラフィックジェネレー

全世界におけるインターネットの利用者の増加に加タのアイデアである。

え、動画、特に HD や 3D といった映像技術の進化に伴• IMS IPsec packet snooper
IMS システムの相互接続テストにおいて、IMS ク
ライアントとサーバー間のシグナルメッセージのない、インターネットが扱うデータ量が加速度的に増内容を確認することが重要であるが、通常この区り、通信路やストーレジの進化は進んでいるが、ルー加している。100Gbit Ethernet の実用化やハードディスクの記録密度向上と大容量化の順調な進展などによ間は IPsec を用いて暗号化されている。そのため、

タを始めとするネットワーク内のデータプロセッシン

この間に割り込み、通信遅延を発生させない高速グ機器の高速化では、単体のプロセッサの速度向上がな IPsec 復号/符号機があると、テストの品質が頭打ちになっていることから新たなアプローチが求め飛躍的に向上すると考えられる。

られている。例えば、マルチコアやメニーコアといった複数のプロセッサを並列に並べる試みが行われている。また、専用回路を組むことによる非ノイマン型の1 http://www.xilinx.com/products/devkits/HW-アーキテクチャも多数試みられている。

SPAR3AN-SK-UNI-G.htm

4データプロセッシングのために専用に論理回路を設

要な処理の並列化と絞り込みによって、400〜500MHz計する場合、ASIC の開発と FPGA の利用の 2 種類の程度でも 10Gbps のデータを処理することができる。

方法が考えられる。ASIC 開発の場合、費した費用に以上に挙げた点は、FPGA の特性とよく適合する。昨応じた性能を得ることができるが、コスト面の負担が今の微細化により有り余るゲート数を備えた FPGA に大きい。すなわち、プロセス技術の進化に伴い、マスとって実行ユニットを多数搭載することは簡単である。

ク代や設計・検証・試験のコストが急増しており、高性また、動作速度としても、FPGA にとって実現可能な能な ASIC の製造には高額の投資が必要になる。一方、クロック周波数となっている。これらのネットワーク

近年の FPGA の利用技術の発展には注目すべきものがプロセッサの特徴は、それを FPGA 上に実装することある。FPGA は標準品として設計製造されるため十分を後押しするものであると考える。

な開発費を費すことができ、均質な構造を持つ特性を2010 年 12 月の WIDE 研究会では、ネットワーク利用して最先端のプロセス技術が適用されている。こを流れるパケットを FPGA 上で処理するアーキテクの結果として、価格対性能比において FPGA が ASICチャとして、プログラマブルな三層の構造が株式会社を上回るケースが見受けられるようになった。それにトランス・ニュー・テクノロジーから提案された。第加えて、FPGA には、容易に書き換えられるという性

一の層は、Verilog や VHDL といったハードウェア記質が備わっているため、FPGA を採用する優位性は多述言語による論理回路である。記述された論理回路はくの場合において現実のものになりつつある。
ところで、ASIC や FPGA によるパケット処理は特FPGA 上にプログラムする。第二の層は、ネットワークプロセッサによるプログラムである。ネットワークに目新しいものではない。今までも多くの研究が行わプロセッサは FPGA 上に構成し、その上でネットワーれており、高速ルータなどにおいてはその成果を専用クプロセッサに特化したソフトウェアを実行する。最ASIC として搭載しているものも多い。特に、ワイヤスピードの確保など、確定的に動作時間を設計し性能を保証する必要がある場合においては、汎用プロセッ

後の層は、汎用プロセッサによるプロトコル処理であサでは対応できず、専用回路を設計する場合が多い。

が異なり、処理内容に対して設計段階において可能な

この場合における設計コストの低減はネットワーク機保証も異なる。また、プログラム書き換えにかかる時器の設計において重要である。しかしながら、専用回間やコストも異なるため、これらを総合して、ネット路によるネットワーク機器の設計に広く普及している

ワーク機器としての機能を適切に分割し、実装する必手法はなく、専ら各社の努力に依存している。

要がある。

る。プロトコルの最も複雑な部分の処理のためにこの層を利用する。これら各層は、得意とする処理の内容

データプロセッシングの高速化という要求に対してまた、研究会では、トランス・ニュー・テクノロジーはネットワークプロセッサも多く利用されている。ネッの技術者から、前述のアーキテクチャの解説と実装サ

トワークプロセッサは様々なアーキテクチャが考案さンプル (図 1) が紹介された。紹介された実装では、論れ研究されており、まとめて論じるのは難しいが、そ理回路の層として、ARP テーブル・経路表の検索やカの多数に共通する特徴がいくつかある。一つには基本ウンタを用いた統計情報処理を用意し、その上のネッ的な動作がイベント駆動処理であることである。ネットワークプロセッサ層において IPv4、IPv6 のフォワー

トワークアプリケーションはパケットの到着に同期しディングを行い、汎用プロセッサ層では NetBSD[5] とて処理を行うため、汎用プロセッサを用いると割り込経路制御プログラムを動作させることによって IP ルーみ処理やポーリング処理が必要になり効率が悪い。ネッタが FPGA 上に構築されている。

トワークプロセッサでは、実行ユニットを複数用意す

Altera 社 [6] の Stratix III2 上に、論理回路によるいるなど、イベント駆動処理に適した工夫がされている

くつかの機能モジュールと 1 つのネットワークプロセッことが普通である。また、他の特徴として、比較的低サ IP、1 つの Nios II 汎用プロセッサ3 を実装し、3.05M

い周波数のクロックでも十分な性能が得られることがパケット/秒の性能を得た。現在入手可能な最大サイズある。パケット処理の特性として、単位時間当たりの2 http://www.altera.com/products/devices/stratixfpgas/stratix-iii/st3-index.jsp
3 http://www.altera.com/products/ip/processors/nios2/ni2index.html

データ転送量が多いことが挙げられるが、この点を専用のバッファ管理回路によって克服し、パケット毎に必5

3まとめ
7 月のボード合宿での議論に端を発する、自家製の(handmade) 研究機材による高品質な研究活動の実現に向け、Handmade WG が立ち上げられた。今年度は、自家製機材を活用して研究成果をあげてきた先人の経験やノウハウを共有し、今後の活動に向けての準備をする段階としての活動を行った。具体的には、2.2 節にて報告した WIDE 合宿での議論、また 2.3、2.6 節で報告した FPGA 勉強会などを実現し、12 月の研究会においては、実際に FPGA 製品の開発を行っている技術者から、FPGA を活用した研究の今後の方向性についての専門家としての観点から意見をいただくことができた (2.5 節)。
実際にハードウェアアクセラレーション機能を活用した研究活動を始めた研究者の支援と議論の場、WIDE内から沸き上がったハードウェアアクセラレーションのアイデアを実現していく場、また基本的な知識を身につける学習の場としての活動を続けていく予定である。また、自家製という意味では、ハードウェアのみ

図 1: プログラマブル三層構造 FPGA ボードの試作機にとらわれる事なく、研究を促進するための自家製ソ(トランスニュー・テクノロジー社提供)

フトウェアなどの側面にも目を向けつつ、個々人がそれぞれのネットワーク研究活動の質を向上させるための FPGA は、今回サンプル実装で採用された FPGAに役立つ WG を目指す。の 10 倍程度の規模を持っているので、機能モジュー
ルおよびネットワークプロセッサの数を増やして並列参考文献に処理できるパケット数を増やすことにより、この数倍の性能の実現が可能であると考えられる。

[1] NetFPGA.

また、この実装の過程において、ルータに必要な各NetFPGA,機能を実現する層を変更することによって容易に性能

http://netfpga.org/.

やコストの調整ができることも確認できた。今後、こ[2] Xilinx,Inc.,
http://www.xilinx.com/.のアーキテクチャに従った設計手法を体系的に整理して、広く利用できるようにしていきたいと考えている。

2.6

DecemberDecember

2010.

2010.

[3] WIDE project. TAHI project, December 2010.
http://www.tahi.org/.

Xilinx プライベートセミナーの開催

今後の FPGA でのプロトタイプ実装に備え、現在利用している Xilinx のボードをより深く学習する場として、東京エレクトロン様の協力のもと 2010 年 12 月

[4] IPv6Forum,December
http://www.ipv6forum.org/.

2010.

[5] TheDecember

2010.

December

2010.

NetBSD

Project,

http://www.netbsd.org/.

20 日にプライベートセミナーを開催した。本セミナーに関しては、WIDE プロジェクトの研究者を対象に、今後不定期に開催する予定となっている。

[6] Altera

Corporation,

http://www.altera.com/.

6