1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

ARMアーキテクチャに思ったこと

Last updated at Posted at 2021-03-27

うろ覚えで書いたし、とりとめのない話になってしまった。(;´Д`)
なんで書いたかと言うと、FaceBookにARMの広告が表示されていて、CPUについて思うところがあったから。
衝動的にやってしまった。
今は後悔している。

ARMは、一般に採用されている汎用のアーキテクチャの中では、一番新しくて一番簡素で互換性に優れていて、洗練されていると思っている。
CPUアーキテクチャの区分けとしては、RISCプロセッサに分類される。
最初からマルチコア、低消費電力コア、低消費電力アーキテクチャ、簡易な命令セット、命令拡張等を引っ提げて登場した。
当初から必要な全ての機能をデザインして内蔵していたため、設計は極めて簡素になった。
簡素が故に、1クロックあたりの処理能力も高く、消費電力も少ない。
だから、スマホやタブレットに多く採用されているし、スパコンにも採用された実績がある。

これは、肥大化したx86系のプロセッサには真似できない。
nVidiaやAMDのGPUも存在しているし、それらは処理効率も高いが、最初から命令セットが大きい(=ビット数を消費する=使用トランジスタが多くなる)ので消費電力も大きい。
以前はSPARCやMIPSやAlphaも存在していたが、SPARCとMIPSは性能でx86系に追いつかれてUNIX系のサポートが薄くなってメインストリームから消え、Alphaは高性能なx86互換を売りにしていて期待も高かったが、これも安価なx86系プロセッサに性能で追いつかれ、あっさり駆逐されてしまった。
他の高効率なx86互換プロセッサも登場していたが、IntelとAMDの開発競争に追いつけず、突き放されてしまった。

ARMの登場は、Android登場の切っ掛けになったと言える。実際には、逆かも知れない。
ともかくARMのアーキテクチャは、時代に求められていたニーズに、ズバリ合致していた。
Androidに採用され、掌に乗るサイズなのにPCに迫る高性能が得られた。
その当時は、マルチコアはx86でもハイエンドでしかなかったため、最初からマルチコアを想定して設計されたARMに、大きく水を開けられる結果になった。
Intelはx86で低消費電力のプロセッサも作っているが、正直メジャーになっているとは言えないし、性能でARMに勝っているとは言えない。

最近のARM互換プロセッサ群は高性能に振ってきているために発熱が大きくなっており、格納する筐体(=スマホ)の熱設計が追い付いていないと感じる。
過熱した場合の処理は、Androidがプログラムを強制終了して画面の輝度を落とすのが一般的のようだが、その際に低消費電力コアに強制的に切り替わっているのかは分からない。
筐体は落としたりぶつけたりすればすぐに壊れてしまうほど華奢なのに、保護ケースを付けると熱が籠ってしまう。

今のAndroidは、登場時の「軽量で高性能」から「軽量」が外れてしまっているように見える。
Windowsと同じで、プロセッサの高性能化に伴いOSの高機能化が行われ、CPU資源を積極的に使う方向に進んでしまっているように思う。
これは「卵が先か鶏が先か」の議論になってしまうのだが、OS側がCPU資源を積極的に消費するように作られているのは間違いないので、個人的にはAndroid側に改善を要求していきたい。
そうすれば、CPU側もTDPを下げる方向に方針を転換してくれると期待してる。

1
0
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?