2009年8月28日金曜日

System S on CentOS 5.3

現在、System S は Redhat Enterprise Linux (4.4 32 bitと 5.2 64 bit) のみをサポートしているのですが、CentOS 5.3 (64 bit) 上で System S を稼動させることに成功しました。まあ、理論上は CentOS は RHEL の互換 OS なので、すんなり動くはずだったのですが。。。

2009年8月27日木曜日

HP ML115 G5

最近毎日チェックしていましたが、NTT-X Store でHP ML115 G5 (4577670-AJKV) の予約が始まったので、8台の購入予約を完了しました。松岡研究室の遊休マシン(IBM eServer 26台) を頂くことになっていますが、こちらは純粋に System S の計算ノードとして使いたいと思います。

HP のマシンはいろいろ拡張性が高いので、System S だけでなく、管理系サーバーなどいろんな用途に使えそうです。

2009年8月25日火曜日

Parallel Sorting

並列ソーティングに関する論文

Hiroshi Inoue(IBM), AA-Sort: A New Parallel Sorting Algorithm for Multi-Core SIMD Processors, PACT 2007 (PDF)

StreamGPU: 特異値分解

森田君、SVD のプログラムですが、行列サイズは 2のべき乗(2の5乗から10乗ぐらいまで) の正方行列、密行列、各行列要素は double (float でも良い)でテストしてみてください。

2009年8月24日月曜日

CULA

LAPACK (この中に SVD が含まれている)を CUDA で書き直した CULA
というものがリリースされたようです。
http://www.multicoreinfo.com/2009/08/cula-tools-gpu-accelerated-lapack/

どの程度、速いのでしょうね。

SST (Singular Spectrum Transformation) : 特異スペクトル変換法

SST (Singular Spectrum Transformation) 特異スペクトル変換法 の発表資料はここ (PPT) にあります。

http://www.siam.org/proceedings/datamining/2007/dm07_054ide.pdf
なども参考になります。

本質的には, 特異値分解 (SVD) が重く、オリジナルの SST on System S では、以下の Matrix Library の SVD 関数を使っています.
http://www.robertnz.net/nm10.htm#refer

特異値分解を GPU で高速化する話は、「正方行列向け特異値分解のCUDAによる高速化」(PDF) や
これ(PDF) などいろいろあるようですが、我々はストリーム処理のコンテキストでの性能評価をやります。特に、ウィンドウサイズを適切に設定しないと、GPU の恩恵を受けられない可能性があり、その辺の指針が得られると良いでしょう。

森田君、いろいろ調べてみてください

StreamGPU: matrix inversion on GPU

GPU で逆行列計算を高速化する話が以下の論文にのっています。
http://www-user.tu-chemnitz.de/~benner/pub/BenRQ_HeteroPar09.pdf

StreamDNA の関連研究

StreamDNA の関連研究としてはPDF にあるように、グリッド上の計算機を束ねてスループットを実現する研究が山ほどあります。StreamDNA ではこのスループットも重要ですが、よりレイテンシを重要視します。

松浦君、論文ではこのあたりも触れる必要があるので、見ておいてください。

Next-generation DNA sequencing, Nature

Nature で発表された昨年の論文。必見。

Jay Shendure (Univ. of Washington), et.al, "Next-generation DNA sequencing", Nature biotechnology, 2008/10 (PDF)

2009年8月21日金曜日

Stream Computing 輪講

以下、Stream Computing 輪講の第1回目、第2回目の内容です。

Bu˘gra Gedik, "SPADE: The System S Declarative Stream Processing Engine" (PDF), ICDE 2008
担当: 松浦君

Lisa Amini, "SPC: A Distributed, Scalable Platform for Data Mining", (PDF)
担当: 森田君

ToDos for StreamGPU

実装作業は以下の順番でやっていきましょう。目安としては、(1) から (6) までを 10月下旬までに出来ればと思います。

(1) SST の根幹を成す逆行列問題を CUDA 上で実現する (BLAS CUDA などで逆行列計算ルーチンがあれば、それを使ってもよい)
(2) System S の UDOP から CUDA API をたたけるようにする
(3) (1) と (2) を融合し、System S 上から 逆行列計算を実現できるようにする
(4) IBM 高橋さんの SST アルゴリズムと (3) とを融合する
(5) (4) の性能評価
(6) (5) の性能解析&チューニング

森田君卒論

StreamGPU (森田君卒論)に関するメモ

- SST, Particle Filter, LASSO の3つのアルゴリズムがポーティングターゲット
- System S 上の実装は IBM 高橋さんが実装中

- 森田君が卒論で行うのは、重い計算部分を GPGPU へポーティング
- 重い計算部分を 一つの UDOP オペレータとして分離し、GPU 上で実行する
  オペレータ、CPU 上で実行するオペレータとして flexible に分けられるようにする
- ポーティング順番は SST --> Particle Filter --> LASSO の順番で行う
- CPU 版と GPU 版を比較し、チューニングなども行う

- GPU での高速化研究はあるので、DSMS 上で GPU を活用する際の様々な工夫を言えるとよい(リアルタイム性を確保する方法等)

調査すべき関連研究
- DSMS の基礎 (System S とは。その他の DSMS システム)
- GPU による数値計算の高速化論文(山ほどあるはずなので、特に機械学習の世界における関連研究を調べる)

2009年8月19日水曜日

Target Conference

ACM SIGCOMM (2010 New Dehli) 1月締め切り
ASPLOS, 8月締め切り
IMC (Internet Measurement Conference) (2009) Paper 5月締め切り11月開催
ICDCS (2009) 11月締め切り, 2010年6月にイタリアで開催
ICDE 6月締め切り
IEEE INFOCOM
IFIP PERFORMANCE
IPDPS
OSDI
SIDMOD/PODS
SOSP
SC
USENIX Annual Technical Conference
VLDB
WWW
Middleware
OOPSLA
PACT
PLDI
RECOMB : International Conference on Research in Computational Molecular Biology (2010), 10月締め切り, 2010年4月ポルトガル開催
MEDINFO : World Congress on Medical and Health Informatics (Medical Informatics)
MICCAI : Medical Image Computing and Computer-Assisted Intervention (Medical Informatics)

ICDE 2011

2010年6月

VLDB 2011

2010年3月

SIGMOD 2010

締め切り: 2009年10月下旬。WWW 2010 とほぼ同じ。
http://www.sigmod2010.org/calls_papers_important_dates.shtml

WWW 2010

Paper Due: 2009年10月26日:
http://wwwconference.org/www2010/

院試お疲れ様でした

お疲れ様でした。タフな院試だったようですが、まあ、明日の結果を待ちましょう。

GPU 上の MapReduce

GPU 上の MapReduceの論文

Bingsheng He (Hong Kong Univ), "Mars: A MapReduce Framework on Graphics Processors"
PACT 2008, (PDF)

2009年8月17日月曜日

StreamGPU のアプリケーション候補: 相関異常の検出

StreamGPU プロジェクトの GPU へのポーティング対象。
IBM 井出さんの論文「疎な相関グラフの学習による相関異常の検出」 (PDF)

変化点検出を GLASSO アルゴリズムを用いて実現。行列の固有値分解 (Eigenvalue Decomposition) は重いため、Krylov subspace technique という技術によって、計算コストを下げている。GPU を用いると更に高速化が期待できる。

2009年8月14日金曜日

GPU 関連の論文

GPU 関連の論文
  • Naga K. Govindaraju,"Fast and approximate stream mining of quantiles and frequencies using graphics processors",SIGMO 2005 [PDF]
  • Rui Fang, et.al, "GPUQP: query co-processing using graphics processors", SIGMOD 2007, [PDF]
  • Pedro Trancoso, "Data parallel acceleration of decision support queries using Cell/BE and GPUs, Conference On Computing Frontiers 2009
  • Hadi Moradi, "A Real-Time GPU-Based Wall Detection Algorithm for Mapping and Navigation in Indoor Environments",
  • Streaming Algorithms for Biological Sequence Alignment on GPUs
  • Designing Efficient Sorting Algorithms for Manycore GPUs, IPDPS2009
  • Offloading IDS Computation to the GPU, 2006
  • GPU-Accelerated Text Mining, SIGMOD2005
  • Using Graphics Processors for High-Performance IR Query Processing, WWW2008
  • The GPU on biomedical image processing for color and phenotype,
  • GPU Accelerated Radio Astronomy Signal Convolution,
  • Scalable Clustering Using Graphics Processors (PDF)
  • GPU-based computation of distance functions on road networks with
  • VLDB 2006 Tutorial , "Query co-Processing on commodity processors" (PDF)
  • A Fast Similarity Join Algorithm Using Graphics Processing Units, M. D. Lieberman, ICDE 2008, (PDF)

StreamGPU Project


StreamGPU というプロジェクトを立てました。

タイトル

データストリーム処理におけるGPU利用の性能特性に関する研究

詳細
  • 背景 
    • GPGPU
  • 動機
    • どのような種類のアプリケーションが GPU に適しているかは定かではない
    • 性能特性を見たい
  • 研究
    • いくつかの種類のアプリケーションを GPU + DSMS を用いて実装し、性能特性を見る
    • アプリケーション候補
      • Web ログデータ
      • 移動平均などの簡単計算
      • IBM 高橋さんの異常検知アプリケーション
        • 行列計算の部分を GPU に置き換えることによって性能特性を見る
          • GPU と CPU のメモリコピーのコストを考えると、ウィンドウサイズを大きくしないと速くならないはず
          • この点をいろいろ試してみる
      • StreamDNA の 画像認識部分および Smith-Waterman 法
      • 音声認識(西井さんに期待)
  • 本研究の Contribution
    • DSMS に対して、GPU を適用し、その性能特性をみるという研究は初めて
    • GPU を用いることで、リアルタイム処理ができなかったことができるようになったこと
    • 幅広いアプリケーションを用いて評価をしたこと
  • 本研究の広がり
    • 性能モデルの定式化
    • 上記の異常検知アプリケーションのウィンドウサイズのチューニングを自動でやれるとうれしい
    • クラスタ環境において、GPU なしの場合と、GPU マシン1台とで性能はどうか、を知りたい

Google の内製サーバー

今まで明かされなかった Google の内製サーバーの仕様。
http://news.cnet.com/8301-1001_3-10209580-92.html

MapReduce と DBMS の比較

SIGMOD 2009 の "A Comparison of Approaches to Large-Scale Data Analysis" (PDF)

DBSM 界の巨匠である Michael Stonebraker が 昨今のMapReduce 騒ぎに、一石を投じる論文。Hadoop と 並列 DBMS を比較し, Parallel DBMS の方が速いという。しかし、Hadoop は Java ベースで、並列 DBMS は C/C++ で書かれているだろうが、あまり fair な比較ではないところが甘い。

詳細は以下の通り。

- 並列 DBMS は 100ノードにおいて、MR よりも 3.1 ~ 6.5 倍高速
- MR(MapReduce) は1000ノードでスケールする、と主張しているが、Interactive Media などの企業でも40ノード弱であり、 eBay は Teradataという製品を使っており、72 ノードのみを使用しており、現実的にはそんな巨大なマシンは使っていない

2009年8月11日火曜日

院試がんばってください

院試、もうすぐですね。体調を整えて、万全の体制でのぞんでください。応援してます!

RedHat Enterprise Linux

RHEL の Academic Edition があることが判明したので、鈴村研に導入することにします。System S を動かす可能性のあるマシンをすべて RHEL に変えましょう。

2009年8月10日月曜日

High Performance Web Server Using GPU

Web アプリケーションサーバーの性能の中で、重い部分は SSL 処理なのだが、これに対して、専用のアクセラレータカードなどが100~200万円ぐらいで売られていたりする。SSL の根幹を成す暗号アルゴリズムの暗号、復号処理を GPU でやらせたら、どうなるか?

RSA 処理を GPU で速くする研究は Andrew Moss 等[PDF]がやっているらしいが、統合的に Web サーバーでどのくらい効果があるかは誰もやっていない。WWW 2009には良いテーマである。

2009年8月7日金曜日

Amazon EC2/S3 互換システム Eucalyptus

Eucalyptus の論文を読んだ。リサーチとしての貢献に関して、新規性、実用性、進歩性を考えると、新規性、進歩性は低いが、実用性は突出している。恐らく、今後多くの論文に引用されるであろう

- API は REST または SOAP
- Xen ベース。VMWare, KVM は今後サポート。
- クラスタ内はもちろんのこと、複数のクラスタ上にクラウド環境を構築するような設計になっているのが特徴的
- Walrus が Amazon S3 にあたるストレージサービス。VM Image の管理やアプリケーションデータの格納場所として使用する

あと、一番気になったのは、DSMS を クラウド環境上で稼動させたときに、VM Image 間で通信を頻繁に発生させるようなケースがあるが、Eucalyptus では、native のネットワークドライバをたたいているため、仮想化のオーバーヘッドが低いと主張している。ここも良い。

2009年8月5日水曜日

評価に用いるアプリケーション及びデータ

今まで公開されている DSMS 関連の論文が弱いところは、リアルアプリケーションを使った評価が少なく、用いているデータが人工的であること。我々は、実データはさすがに使えなくても、現実的なケースに基づくデータを用いて評価していきたいものである。以下が考えられるデータの候補。
  • 通信携帯会社の通話記録データ CDR (Call Data Record): 誰が誰に何分通話したか?を記録したデータ。インドの携帯契約者は増加の一途を辿っており、その処理が追いつかないと言われる。このデータに関してはある程度ランダムに生成できるであろう
  • ライフログデータ: 携帯電話の GPS データなど。各ユーザーの緯度、経度情報は何らかのユーザーの動きのモデルを作らないといけないが、サーバーの性能だけ考えるとあまりそれらの情報は重要ではなく、ランダムで良い
  • Web データ: 楽天などのオンラインショッピングにログデータ。これは老木君が創作演習で作っている
  • テキストデータ: ニュースの RSS フィードなど巷に沢山ある
  • 環境に関するデータ: ハーバード大学のデータは実際に使える

Offline + Online の Sharing

USENIX主催の Middleware 2008 で発表された論文

Enabling Resource Sharing between Transactional and Batch Workloads Using Dynamic Application Placement

David Carrera (Technical University of Catalonia - Barcelona Supercomputing Center, Spain)
Malgorzata Steinder (IBM Research, United States)