Many-Core

本研究室では、メニーコア・プロセッサに着目し、高速化、低消費電力化、高信頼化を実現するための研究を行っています。

概要

情報機器の頭脳であるプロセッサは、1チップ上に数百個以上のコアを搭載する、<メニーコア>の時代へと向かいつつあります。 その一方で、プロセッサが直面する課題はより多様に、より深刻になりつつあります。

そのため今後は、これらの課題を解決することのできる機能を数多く備えた、<多機能メニーコア>の実現が重要になると考えられます。 そこで本研究室では、コアが豊富に存在するというメニーコアの特徴に着目し、多機能メニーコアを実現する<Feature-Packing>と呼ぶアーキテクチャ技術の開発を行います。

ページトップへ

研究テーマ

メニーコアは、多数の小規模なコアを搭載することによって、消費電力と配線遅延を抑制しつつ、プロセッサ全体のスループットを向上させることに成功しています。 しかし、このアプローチによって、各コアのスループットは低下するため、個々のアプリケーションの処理時間は増加してしまいます。

まずこの問題に対し、<コアの融合>を行って、シングルスレッドのアプリケーションを高速化する方策を考えていきます。 コア融合とは、複数の小規模なコアが協調動作し、より大規模な1つのコアとしてシングルスレッドのプログラムを実行するというものです。

高速化をさらに追求するために、各コアが<多様性>を持つアーキテクチャを実現します。 コアの多様性とは、動作させるプログラムを変更することによりFeature-Packingコアの役割を動的に変更できる仕組みを指しています。 これにより、アプリケーションの実行だけでなく、それを支援する役割(例えばメモリからプロセッサへのデータ供給の支援)も果たすことができるようになります。 様々な役割を持つコアを組み合わせることによって、アプリケーションに最適なプロセッサを実現することができるようになります。

ページトップへ

テーマの一例 - CPU Activity Viewer

メニーコアは1つ1つのコアの性能を上げる代わりに、コアの数を増やすことで並列処理による性能向上を目指しています。 現状ではプログラムの多くは多数のコアを有効に活用できるように作成されていません。 今後、メニーコアプロセッサを想定して多数のコアを有効活用するプログラムの作成が望まれます。

しかし、並列処理プログラミングは一般的に難易度が高く、またプログラム全体のうちどれぐらいを並列化できたのか把握することが困難です。 この問題を解決するために、並列処理プログラミングをサポートするためのツールが不可欠です。 「CPU Activity Viewer」はプログラムをメニーコア上で動作させた際のCPUアクティビティ(時系列データ)を可視化することで、 並列処理プログラミングがどれぐらい効果的に行われているか、もしくは問題点がどこにあるのかを発見しやすくするための可視化ツールです。

CPU Activity Viewerの紹介ページにてデモ(Javaアプレット)をご覧頂けます。

ページトップへ
  • ニュース
  • 2008年10月 : 情報処理学会アーキテクチャ研究会にて、研究発表を行いました。
ページトップへ
Design by Homepage Boxes | Flash-Works | Brilliant Works