IPA






2007年度第I期未踏ソフトウェア創造事業(未踏ユース)  採択概要


 



1.担当PM


  竹内 郁雄



2.採択者氏名


代表者

辻 良繁(慶應義塾大学 理工学部

共同開発者

 なし


3.プロジェクト管理組織


  株式会社 創夢



4.採択金額


  3,000,000



5.テーマ名


 CC-Optimizer: キャッシュを考慮した問合せ最適化器



6.テーマ概要 (応募時資料を一部分改訂)

 近年,CPUと主記憶アクセスの性能乖離により,CPUキャッシュミスが性能低下を引き起こすことが明らかになりつつある.命令キャッシュミスが生じる一原因に,RDBMS内のオペレータ群の合計フットプリントがL1命令キャッシュに収まらないことがある.これを改善すべくZhouらはオペレータ実行順序を変更するバッファリングオペレータを提案した.
  同技法によりRDBMS の性能は向上するが,一方で,性能劣化を招くケースも確認された.そして,Zhouらはバッファリングオペレータが有利・あるいは不利に働く条件を明らかにはしていない.従って,Zhouらの技法のみではRDBMSの性能を現実的に向上させられない.
  そこで, バッファリングオペレータを実用段階に引き上げるため,
   バッファリングオペレータを使用可能な最適化
   CC-Optimizer: キャッシュを考慮した問合せ最適化器
の開発を提案する.
  現時点までに開発したCC-Optimizerを用いて,Zhou らと同様PostgreSQL上で実験を行った結果,は,OSDL DBT-3 において最大32.3%, 全体でも6%もの大幅な性能改善を見せた.だが,既存のCC-Optimizerでは1アーキテクチャという極めて限定的な状況にしか適用できない.
  そこで,本プロジェクトを通して,更に3つ課題 (1)キャッシュミス回数に基づく,より正確な適用アルゴリズムの新規提案, (2)複数アーキテクチャ・コンパイラへの対応, (3)PostgreSQL最新版への対応 を達成し,CC-Optimizerをオープンソースとして公開したい.
  この開発はPostgreSQLに大幅な性能向上をもたらすと共に,RDBMSへの命令キャッシュミス改善技法の実用化において先駆的であり,データキャッシュコストの削減が研究の主流である中で,学術的にも大きな意味を持つものである.




7.採択理由(担当PMからのコメント)

 実に地道というか,正統派プログラミングの気概十分の,キャッシュメモリの上手な利用法に関する性能追求型の提案である.辻君はつまらない単位の取得ミスで学部卒業を逃したらしいが,学部生の水準を超えたしっかりした実績を積んでいる.それをベースにした,これまた学部生の水準を超えた中身の濃い (文章も含めた意味できちんとした) 提案であった.
  データベースシステムの問い合わせ処理をいかに速くするかは大昔から絶えることのない研究テーマである.データベースのデータは遅い二次記憶に入っているので,そこが性能向上の足を引っ張っているように思われるのだが,問い合わせ処理がキャッシュメモリの中で回るか回らないかが性能に多大な影響を与えるという.竹内の想像するには,実時間のセンサーデータベースではそのあたりがシビアになるのかもしれない.だとすると,辻君の提案はタイトル通り,きわめて明解な提案だ.
  この提案の準備はすでに書き終えた卒論で終わっているので,未踏ユース期間中は,先延ばしした(?)卒業の前の余裕をもった「卒業記念開発」ということになりそうだ.こういう状況でも,よいソフトを書く人はぜひとも未踏ユースで後押ししてあげたいものだ.
  ここで得られる10〜30%のCPU内性能向上のインパクトは,データベース全体の中ではそれほど大きくないという考えもあろうが,こういう技術開発を積み重ねることこそ日本のソフトの基礎体力を伸ばすために重要であると,竹内は考えている.




  ページトップへ   






Copyright(c) Information-technology Promotion Agency, Japan. All rights reserved 2007