Thesis or Dissertation ヘテロジニアスマルチプロセッサに対応したコヒーレンシシステムの設計手法に関する研究

三好, 聖二

2016 , 三重大学
Description
近年,高性能と低消費電力を両立する手法として,構成の異なる複数のプロセッサコアによって構成されるヘテロジニアスマルチコアプロセッサが注目を集めている.従来のホモジニアスマルチコアプロセッサでは,構成の同じコアを搭載しているため,各アプリケーションに対して全て同じリソースが割り当てられ,性能の過不足により,無駄な消費電力が発生する.ヘテロジニアスマルチコアプロセッサでは,各アプリケーションに対して,最適な構成を持つコアを割り当てることによって,このような無駄な消費電力を抑えて,より高い電力効率を達成することができる.一方で,ヘテロジニアスマルチコアプロセッサは,構成の異なるコア,キャッシュとそれぞれに対応したバスシステムが必要であり,それぞれに別の設計・検証が必要になることから,従来手法と比較して設計コストが高く,ヘテロジニアスマルチコアプロセッサを研究・開発する上での大きな障害となっている.この問題を解決するために,自動設計技術が研究されており,著者らの研究グループでは,様々な構成のヘテロジニアスマルチコアプロセッサを自動設計するツールとして,FabHeteroを提案している.FabHeteroは,並列度やキャッシュサイズのような要求仕様をパラメータとして与えることで,ヘテロジニアスマルチコアプロセッサを自動設計することを目指している.しかし,現状のFabHeteroはキャッシュコヒーレンシ機構が実装されていない.そのため,本研究ではFabHetero上にキャッシュコヒーレンシ機構を実装することで,より現実的な設計ツールを実現する.しかしながら,自動設計ツールにおいてキャッシュコヒーレンシをサポートするバスシステムの設計は,その構成や回路が要求仕様や設計条件等により多様に変化するため,自動化のための大きな課題の一つとなる.この問題の一つとしては,キャッシュやコアがそれぞれの仕様に従って内部で完結するのに対して,バスシステムはそれらを相互接続するために,それぞれのキャッシュやコアの異なる仕様に起因するプロトコル・バス幅の違いなどの問題を解決する必要があることが挙げられる.更に,ただ1つの仕様の変更に伴ってバスシステム全体の設計が変わることから,接続するコアが増えたり,仕様の可変要素が増えることに伴って,解決する必要がある要素が指数関数的に増えていく.このため,全ての組み合わせに対応して設計データを作る,といった手法は事実上不可能であり,どの仕様の違いを設計のどの部分で解決するか,という課題を解決する必要がある.本研究では,これらの問題を解決するために,ヘテロジニアスマルチコアプロセッサ上でのキャッシュコヒーレンシをサポートするバスシステムの設計のためのデザインフレームワークを提案する.具体的には,上述の問題に対して,設計のどの部分を共通化するか,仕様の違いを設計のどの部分で吸収するかのベースとなる構成をフレームワークとして与えることで,組み合わせ問題の分割,設計データの共有化率の向上を図り,ヘテロジニアスマルチコアプロセッサの設計,自動設計ツールの開発の効率化を目指すものである.更に,本論文では提案フレームワークの有効性を示すために,提案フレームワークを含むバスシステムの自動設計ツールを実装し,その動作検証を行った.その結果,ソースコードの重複量や修正する必要のあるコード量について,FabHeteroを用いて構成した典型的な2階層のキャッシュシステムで約22%削減できた.又,SPEC2000INTベンチマークを用いて,提案したフレームワークをベースに,FabHetero上に実装したキャッシュコヒーレンシ機構の動作検証を行い,正しく動作していることを確認した.$$Single-ISA heterogeneous multi-core processor architecture which is composed of diverse cores, cache systems, and share bus system is promising technique to achieve higher energy efficiency. However, because a designer must design and verify each of cores, caches and shared bus system of heterogeneous multi-core processor (HMP), an effort of implementing HMP is multiplied by the number of kinds of each of component. This limits an amount of microarchitectural diversity of commercial or research products which can be practically implemented due to a limitation of a resource and time to implement. In order to reduce the efforts, many researches have focused on design automation technology. Then, we proposes FabHetero which is an automatic generation toolset of HMP. However, the current FabHetero does not have a cache coherency mechanism. Therefore, this study implements a cache coherency logic on FabHetero for developing it. Nevertheless, generating of shared bus interconnection with supporting cache coherency mechanism of HMP is one of the major challenge to implement an automatic generation system of HMP. As a reason for this, a bus system of HMP have to resolve differences of connecting elements caused by micro-architectural differences of each core and cache. In addition, a number of this differences increases exponentially along with a number of connecting elements or modification of specification. And then, a number of combination is too enormous to support all of cases. This is a barrier to develop and reserach of HMP and its design tool. In this study, to the barrier, this paper proposes a framework which shows a implementation strategy or policy of cache coherent system and bus system under HMP environment for making efficiency of developing an automation design tool and implementing a HMP. As the first step to develop and verify this framework, this papr also implemented an automatic generating system of snoop-based interconnection using FabHetero ported to ARM AMBA4 and ACE protocol. In the result, this study succeeds to reduce about 22% redundant HDL codes of HMP generated by FabHetero, and therefore, this study can reduce implementation effort about 2 to 4 man-month out of developing entire multi-core processor. In addition, this study verify the implemented system correctly works on SPEC2000INT benchmarks.
三重大学大学院 工学研究科 博士前期課程 情報工学専攻 計算機アーキテクチャ研究室
Full-Text

http://miuse.mie-u.ac.jp/bitstream/10076/15309/1/2015M243.pdf

Number of accesses :  

Other information