第1回 マルチコア・メニーコアとは
マルチコアとはマルチコアプロセッサ(Multicore Processor)のことで、半導体チップ(LSI、SoC)の上に複数のプロセッサを搭載したものです。メニーコアプロセッサ(Manycore Processor)は「たくさんの」プロセッサを搭載したものですが、マルチとメニーの境界は分野の状況に応じて経験的に言われているものであり、学術的に決まっているわけではありません。
コアというのはIPコアのことですが、説明するためには半導体設計の歴史をさかのぼる必要があります。いまから50年程度前は、一つの機能部品、例えばプロセッサ、は複数の半導体チップから構成されていました。その後、半導体の微細化技術、集積化技術が進歩し、1980年代前半には単一の半導体チップに搭載できるようになり、「ワンチップマイコン」といった部品が生まれてきました。それから20年程度経ち、さらに半導体の技術が進歩し、単一の半導体チップに複数部品が搭載可能になったとき、半導体チップに搭載可能な一塊の
回路モジュールを部品製品とするビジネスが産まれてきました。ARMプロセッサはその典型例と言えるでしょう。そのような部品はIPコアと名付けられました。IP(Intellectual Property、知的財産)を有してライセンス可能とした塊、という意味でしょうか。このIPコアが、マルチコアのコアです。
そのため、IPコアはプロセッサだけでなく、例えばUSB回路モジュールなどもIPコアになります。そういうことを考えると、マルチ・プロセッサコアと呼ばれてもよいように思いますし、チップマルチプロセッサ、あるいはその前にワンやオンを付けて呼ぶ人などもおりましたが、今ではマルチコアプロセッサという名前に落ち着いています。また、プロセッサはCPUだけではなく、Graphics ProcessorやAI Processorなどもマルチコアのコアになります。
組込みマルチコアは言葉通り組込み向けのマルチコアです。組込みでない(汎用コンピュータ向けの)マルチコアはほとんどのコアがCPUであることが多いですが、組込み向けは下図のように機器の多様な機能に特化したコアを多種類搭載している場合が多くなっています。そのため、その上で実行されるソフトウェアも単純な並列化だけではなく極めて複雑なものとなり、使いこなすためにはシステム要求からマルチコア仕様を考慮して様々なツールを使いこなして設計していく
必要があり、極めて高度な設計技術が要求されています。
R-Car V4H Block Diagram(ルネサス エレクトロニクス社ホームページより引用、2024年5月5日)
第2回 マルチコアって必要なの?
今回はマルチコアの必要性についてです。EMCでは、マルチコアに関する様々な話題について会長の枝廣先生と副会長の権藤さんにインタビューを実施し、トピックごとの動画としてお送りしています。今回はインタビュー動画第一弾である「マルチコアって必要なの?」(3分51秒)を紹介します。
省電力の観点を発端に、自動運転システムへの影響を例として、マルチコアの必要性について易しく語ります。
なお、すべての動画はEMCのYouTube動画ページ(リンク)からご覧いただけます。
(動画)
第3回 マルチコアの種類
マルチコアには様々な種類があります。学術的な分類はないのですが、2種類の分類軸がよく使われます。
はじめの軸はホモジニアス型とヘテロジニアス型です。ホモジニアス型は同一のプロセッサが並んでいるものです。多くの場合CPUです。ヘテロジニアス型は複数種類のプロセッサが搭載されている場合です。例えばCPUとGPUが搭載されているような場合です。
次の軸は対称型(SMP (Symmetric Multi-Processor)型)と非対称型(AMP (Asymmetric Multi-Processor)型)です。対称型はホモジニアス型に多く、SMP OSとよばれるOSが全体を管理していて、空いているプロセッサに実行可能なプロセスやタスクを動的に割り当てて実行させる方式です。これに対して非対称型は、各プロセッサを独立に動かし、基本的にプロセスやタスクは各プロセッサに静的に割り当てます。対称型はシステムスループットに勝り、非対称型はシステム分離性が良くなりリアルタイム性保証について考えやすくなることが特徴です。
なお、近年のプロセッサはコアの数も増えてきており、組込みマルチコアでは特に様々な種類のマルチコアが単一チップ上に混在している構成が増えてきています。
第4回 マルチコアと電力の関係
今回はマルチコアと電力の関係です。マルチコアにするとシングルコアと比べて同じ性能を低電力で実現できます。ホモジニアス型についての原理についてはインタビュー動画第二弾「マルチコアと電力の関係」において易しく解説しているので紹介します。
(動画)
ヘテロジニアス型については、ある機能、例えば画像処理、をCPU上でソフトウェアにより実現するよりも、処理に特化したハードウェア演算器を用いた方がはるかに低電力に実現できることが原理です。処理にもよりますが、同じ処理に対してソフトウェア実現よりもハードウェア実現の方が3桁程度低電力にできる場合もあります。
第5回 シングルコアからマルチコアへ
今回はシングルコアからマルチコアに移行した背景についてです。インタビュー動画第三弾では「シングルコアの限界」について、微細化の観点から易しく解説し、マルチコアに進んだ背景について紹介しています。
(動画)
なお、すべての動画はEMCのYouTube動画ページ(リンク)からご覧いただけます。
コメントをお書きください