1つのSoCに48コア

ネットで気になった記事が。

Qualcomm、最大48コアのサーバー向けSoC「Centriq 2400」

単純な話、1台のサーバーで、最大48個のプロセスが動く、ということですかね。

昔の話ですが、1つのCPUコアを8時間占有するプロセスを、同時に数本流す、という仕事がありました。

当時使っていたのは、1台数百万するサーバーでしたが、1台に1CPUコアの時代です。そんな高価なサーバーを、同時に何台も使うという訳です。そのサーバーを使っていた人の調整とかもあり、サーバーを増やす増やさないといった議論になって、対応に苦慮してました。

その後、分散処理の技術が確立され、4つのCPUコアに割り振れば、2時間ちょっとでできるようになる、ということでCPUコアを4つ持つMPUを搭載したサーバーの導入を検討した覚えがあります。それは、リモートでそういうサーバーを利用できる環境ができたので、不要になったのですが。

最近は、コア数はインフレ気味ですね。16コアでも驚いたのですが、48コアですか。昔のあのプロセスは、朝流したら夕方までかかってました。その処理が、10分で終わるかもしれない。当時からCPUもずっと高性能になっているので、5分かからないで終わるのかも。まる1日かかっていた計算が10分で終わったら、最適な条件へのアプローチのしかたが、大きく変わるでしょうね。今のエンジニアは、きっと昔とは全く別のことに悩んでいるのかもしれない。

昔は、時間がかかる計算を前提に、エンジニアはいろいろな可能性を自分の頭で考えていたと思うんです。しかし、今は、計算させた方が早い。多くの計算結果を並べて、そこからアイデアを出すとなると問題の本質の理解が進まない。なんか、こんな記事も何かで読んだような気がする。しかし、ここまで処理が早いと、違ったアプローチがとれる。

条件をリニアに変えて、ベストな条件を算出させれば、細かいパーツの理解が無くても全体の設計ができるようになる訳です。最後は、AIに最適な設計をやらせ、人は仕様を明確にするのが仕事、なんてこともありか。すると、何がやりたいのか、が重要になってくる。とりあえず、前の仕様を変えずに、なんとなく新しい機能を追加してみました、なんてものは無くなるということかな。きっと、普通のエンジニアには厳しい時代のように思える。