はてなキーワード: CPUとは
正直気持ちはわかる。
個人の実感としては、コンピュータサイエンスの定義と関わるシステムの要件によるとしかいえないかな。
・OSの仕組み
・DBの仕組み
・分散システムの理論(合意形成とかサービスディスカバリとかレプリケーションとか障害リカバリとか)
・CPUの仕組み
・並行プログラミング
toC向けのスタートアップフェーズのプロダクトとかだと正直なくても回る実感はあるし、実際テキトーに作られてるけどなんとか動いてるシステムはかなり見てきた。
でもある程度成熟してユーザ数もトラフィックもかなりあるみたいな状況だとこの辺の知識なしではお話にならない。
そういったプロダクトだとセキュリティ要件やスケール要件がかなり厳しくなってきて、その観点なしに開発運用できないから。
正直ただ作るだけだったらライブラリとフレームワークの使い方さえ覚えておけばなんとかなるけど、
大規模になればなるほど、効率的に作らないとコストがかかりすぎて大変だし、最悪動かない。
で、効率的に作るためにはこのあたりの知識はどうしても必要になるはず。
データ量的にO(n)とO(n^2)ではそれはそれは段違いになる。
計算に必要なCPUサイクルやメモリ量を,オーダーで表現する方法を習う。で,どういうアルゴリズムがどういうオーダーを持つのかをいくつかの例で習い,コードを実行するのに必要な資源の規模を見積もることができるようになる。
申し訳ないが、コンピュータサイエンスを履修せずにプログラマーになった人に多いのは
まずそもそも困っていることに気付けていないのでスタートラインに立ててない
スラムダンクでいうところの「下手くその 上級者への道のりは 己が下手さを知りて一歩目」というやつだ
ちなみにコンピュータサイエンスってのはオーダの話だけではなくて
例えばメモリとCPUキャッシュ、スワップなどのスピードやその使い方、コンパイラによる最適化、OSのリソース共有、状態管理の考え方なんかも含まれる
性能をもっと上げたいっていうときにオーダだけじゃなくてそういうことを網羅的に考える必要がある
ところがそもそもコンピュータサイエンスを履修してないと「性能向上が必要かどうか」を分かって無い人が多い
「これ、1秒で処理終わってるけど、本来なら1msec以内に終わるはずじゃない?」
というのに気付けてない場合が多い
1秒で処理が終わればユーザ体験は満足してしまうので気付けないんだが、ユーザが増えてくるとユーザ体験が途端に悪くなってくる
そのときに「プログラミング上のミスがあって性能が劣化している」ということに気付くか、「性能限界だからさらなるリソースが必要」と誤解するかによってビジネス上の戦略まで変わってくる
それだけではなくてクリーンアーキテクチャみたいな話も「機能が増えたんだから実装に時間がかかってバグが増えるのは当たり前」というところに落とし込んでしまうか
「もっとアーキテクチャを整理して考えれば機能追加も楽になるはず」という考えに至るか、というところで大きな差がある
この辺りでビジネス上の戦略まで変わってしまうからGoogleやMicrosoftなんかは積極的にコンピュータサイエンスを履修してる人を雇う
もう少し簡単に言うと、コンピュータサイエンスを履修してないプログラマーに多いのが
「今は動いているけれど触るとどうなるかわからない」
というソフトウェアを作りがちなところだと思う
レビューしてても
というコメントをするが、大抵
「動いているのでいいでしょwww」
みたいな感じで返してくるからどうしようもない
自分は検索能力がある方ではなく、他の人はどうしているのか知りたい。
一言に検索といっても、検索したいジャンルによって難易度が異なる。
あたりだろうか。
検索した結果、まとまったページなり、pdfが見つかればいいが、自身が網羅的にまとめる必要性が出てきた場合についても、難易度が高い。
はてなブックマークのようなタグ・URL・1言コメントの場合、後からまとめようとすると、
本文の何処に注目したのか、何が大事だったのかを再度読み込まなければならない。
かといって本文をまとめていくと、一覧性が無くなっていく。
Evernote、OneNoteあたりが該当すると思うが、とりあえずデータを放り込むまでは出来るが活用できる形にまとめ直すのは難易度が上がる。
Notionも良いと言われるが、やはり難易度は高かろう。
ただし、以下の場合はわかる
上手な人のプレーを見て自分のプレーを考えたり、上手なプレーを参考にして自身の動きを修正できる。なのでわかる。
現在のその試合そのものではなく、そこからインスパイアされる自身の若かりし頃に思いを馳せており、それを楽しみたい気持ちはわかる。
甲子園やサッカー日本代表など、そのスポーツを応援することよりも自分が所属するコミュニティを応援したいという気持ちなのでわかる
ある種の「物語」として楽しむ。いわゆる筋書きのない物語やプロレス的楽しみ方としてわかる。
時間があるので野球やサッカー観戦に行くか〜という感じ。別に音楽ライブでも、舞台演劇でも代替可能で偶然スポーツ観戦だったというだけなのでわかる。
スポーツ観戦そのものよりも、チームのファンコミュニティに所属することを楽しむもの。例えば阪神愛のようなものとしてわかる。
これらはどれもそのスポーツ観戦そのものを楽しんでいるというよりも、その周辺を楽しんでいるように思える。
これらの動機でスポーツ観戦をしている人は本当にスポーツ観戦そのものが好きなんだろうか?
本当にスポーツ観戦が好きな人は、例えば野球やサッカーゲームのCPU VS CPUを延々と楽しめるのではないだろうか。
身近にそういう人がいて、本当に観戦が好きなんだろうなぁと思うし、
別の友人はコンピュータ将棋を延々と戦わせて楽しんでいる。
ロジックプロセス2nmを国産するということだが、数兆円市場を目指すとしているが、何を作るのかはまだ明かされてない。
といったのが乗っており、色んな物を作らないといけないのでハードル高そう。
今のインテルやAMDを超えるのを作れたとしても、競争は激しそうだ。
コンシューマ向けで日本人は期待する所だろうが、おそらくない。
NVIDIA1強になっているのはよくなさそうだが、DirectX対応でGPUメーカーが淘汰された状態が今なので、おそらくない。
ゲームの販売方法自体が、高性能なハードを赤字で売ってソフトで後で稼ぐモデルから変わってしまっているので、おそらくない。
TSMCでF-35のチップを作ってるというのは検索すりゃすぐに出てくる。
似たようなので兵器に使っているチップを国産したいっていう国のニーズはあるはずだ。
ただ数が出ない。
例えば、特殊な暗号チップを作り、国内の省庁間や、海外にある領事館との間で、重要な通信に使う、
というのは考えられる。
こちらも数は出ない。
何かしら作りたいのだろうが、こちらも数が出ないだろう。
通信はデータ量はドンドン増えていることと、安全保障の観点で透明性が求められるので、
多少高くても国産、というのは出てきそうだ。
AIも沢山あるが、例えば車向けとしても、車に載せるのではなく、社内のスパコン向けの方がいいのではないだろうか。
テスラが社内に使うスパコンを自分達でチップから起こした、みたいなものだ。
なんで社内向けが重要かは、車に載せると多少コストがかかっても解析されてしまう。
Google、Amazonなどが自社で作ったチップはクラウドで使うとしているのは、他社、他国にチップを解析されない、というメリットがある。
個人のパソコンに挿せるAIチップが載ったPCIカードが出てくれば、国民としても身近に感じられるだろうが、
どうなるかはわからん。
GPUでも性能足りてない。
クラウドでマイナンバーカードさえあれば、それなりに自由に使えるなら自分は使う。
書いている途中で力尽きたので、上記だけだった。
以下、コメント返し
ターゲットとするのは、もう半導体として機能向上を求めないところ(他の機械部分がボトルネックになるなど)だと思っている。
要はコストダウンのみで、チップが無いと困るが、もう新しく設計必要なく量産だけやってくれる方がいいってところの認識だ。
どちらかというと自動運転向けの画像処理か、車載にせず社内の画像学習向けの方が良いはず。
イメージセンサーに載るのは2nmは多分使わず、熊本28nmの方使うはず。
センサーの後ろにつける画像処理用のISPは2nm使うのはあると思う。
8K,16K 24fps以上狙うと使わないと処理追いつかないはず。
思惑どおり2nmチップ作る技術が出来たとして、何向けのチップを作るかが重要だ。
車載はルネと被る。
富士通はスパコン向け作ったが国内民間市場まで作れなかったし、半導体から撤退ムードだ。
ソフトバンクArm CPU+AI演算処理+キオクシアメモリ+NTT光通信という構成。
NVIDIAがArm+GPUをやろうとしていたが、GPUをAI演算処理としたもの。
光通信になって処理速度が劇的に上がるわけではないが、発熱元を離すことが出来るので、
冷却の設計自由度が上がる。(もちろんサーバーとして集約したいニーズがあるので離し過ぎは出来ないが)
NECがサーバーと、PCIeボード担当(NVIDIAのようにPCIeじゃないボードかもしれないが)
NVIDIA RTX4090x8個だと3500ワットほどでで動作するが、これを超えないといけない。
数年後だからRTX4090の次の次が出ているはずだ。それも超えないといけない。
桁で性能を超えないと意味がない。
作れたとしても数を揃えれば上回れる性能であれば、わざわざ使いにくい物を使わないし、
世代が進めば追い越される。
あとは、京で分かっていることがだが、スパコン向けをシュリンクしたサーバーは性能良くても売れない。
GPUボードのような形で売りに出さないと、ソフトを書こうという人口も増えない。
圧倒的に足りてない物
cadence、synopsysという米国企業がほぼ独占している。
なんで重要かというと、色々理由はあるが、1例を上げると製造した時に問題が起こらないかをデザインルールをチェックする。
TSMCが新しい○nmプロセスを出すときは、必ずCacence、Synopsysが対応したとプレスリリースを出している。
デザインルールをチェックしない場合、配線間が短く設計し過ぎていてショートして最悪チップが動かないといった自体になる。
ちなみに中国もEDA企業は立ち上げ出来てない(一応中国国内EDAベンダーはあるが)
日本で独自に2nmプロセスを立ち上げるとして、当たり前だがCadenceかSynopsysに対応してもらう、ということになるはずだ。
日本のソフトウェアを立ち上げるのは流石に難しいのではないだろうか。
Cadence、Synopsysともライセンス量が馬鹿みたいに高い。
1チップ作るのに○億と量産前に飛んでいく。
CPUサーバー上でシミュレーターを動かす方法もあるが、先端ロジックだとトランジスタ数が多くなりすぎて、エミュレータを使わないとまともに検証が出来ない。
エミュレータはFPGAみたいなもので、実チップまでは早くならないがシミュレーターより断然早い。
Cadence、Synopsysともエミュレータも出しているが、こちらも高い。ポンポン買えるものでもない。
チップの次はボード設計する為のソフトや、熱シミュレーター、EMCなど必要になる。
ボードはなんとかしようと思えば出来るはず・・・。先端の高密度はCadence、Altium使いたいが。
ちなみにAltiumに関する書籍は日本にはないが、中国では何冊も出ている。
先端ロジックで設計する会社、製造する工場を作ったとして、作った物が売れないと意味がない。
何を作るのか、だ。
しかも今時の先端ロジックは金がかかりすぎて、グローバルで億単位で売らないと半導体にかかる費用がペイしない。
車に沢山半導体が使われるんだということで報道されるが、台数が少ないので、後回しにされて、半導体不足が解消しないってのは昨今の状況だった。
高温まで対応するなど要求スペックが厳しいわりに、数が売れないので半導体企業としては美味しくない。
PS5の台数でも厳しいはずだ。(PS5は売れば売るほど赤字だし)
スマホほど単価が高くて、体積が小さいの輸送費がかからない、そんなものがないといけない。
AI向けはまだまだどれだけ演算能力があっても足りないので、そっち向けはありかもしれない。
ただチップを作っただけでは動かず、ドライバー、ミドルウェアが必要になる。
インテルがやったようにCUDAからコンバートするソフトを用意するなども必要だろう。
相当性能高いチップを作ったとしても、国内市場だけでペイしないだろう。
ソフトウェアエンジニアの方々も、チップが相当性能高くても携わりたくないのではないか。
NVIDIAのGPUを8個とか、数増やしてどっこいどっこいの性能のチップなら、わざわざ国産チップ用にソフトを作る必要がない。
ATX+ミドルタワーとすると、ケースが大きいのに中がスカスカ、
にも関わらず熱が内部にこもるので温度が高くなる。
水冷式でラジエータを外気に近い所に設置するなんてことをしているが、
そもそもケース小さくでいいんじゃね?
DVDドライブの5インチベイも、2.5インチベイも使わなくなった。
CPUからGPUメモリーにデータ送ってGPUで処理が終わるまでCPUが待つみたいなことが起こっている。
GPU側の排熱も間に合ってない。
GPUもCPUのようにマザーボードにソケット挿す形で良いじゃないか。
GDDRメモリー実装どうするんだってのは、最近だとパッケージ内に統合しているのだから、そうしたらいい。
動画編集ソフトに何を使うかで、Win か Mac かわかれると思う。
Mac の iMovie 使いたいのに、Win 選んだら可哀そうだし。
でまぁ、ユーザ数から言って Win 選ぶほうがいろいろ便利。
最初は、PowerDirector Essential を使って、
本格的にやり始めたら、 DaVinci Resolve に乗り換えたらいい。
SSDを 1TB搭載してる。
メモリが 32GB ある。
[USB3.2 Gen2x2]以降のUSB Type-C端子が必須。
https://jp.ext.hp.com/notebooks/personal/spectre_x360_16_f/
とかね。
NVIDIA RTX4090を30万+インテルCPU諸々で50~60万。
ゲーム、ゲーム配信、動画製作、色々出来るじゃんっていう人もいるのはわかってるが、
それしか出来んのかって思うわけよ。
プログラミングだと、いや確かに出来るけど、計算リソース増えた分で新しく出来るようになったこと無くね?
みんな新しいガジェット買ってもTwitterかWeb見るくらいしかやってないって言ってるじゃん。
細かい所見ると便利になったとか、表現がリッチになったとか挙がるのはわかる。
一方でAIだとか、AIによるパーソナライズが進むとか言われるけど、個人で出来る計算リソースだと全然足りてない。
パーソナライズというけど、ターゲットとする層にいるかどうかで恩恵を受けられるかどうかが決まってる。