【めたん解説風雑談 No.006】SIMD命令ってどんな感じ?【レトロPCで学ぶプログラミング】

  Рет қаралды 3,712

プログラマーずんだもん

プログラマーずんだもん

Күн бұрын

#プログラミング #レトロPC #アセンブラ #Intel
レトロパソコンで学ぶプログラミング解説風雑談動画です。
今回IntelのSIMD技術のMMXとSSEについてのお話です。
【チャプター】
00:22 タイトル
00:46 SIMDのお話
03:02 MMXのお話
13:14 SSEについて
【めたん解説】
No.000【マシン語とコンピューターの概要】 • 【めたん解説 No.000】マシン語とコンピ...
No.001【フラグと条件分岐】 • 【めたん解説 No.001】フラグと条件分岐...
No.002【スタックってなぁに?】 • 【めたん解説 No.002】スタックってなぁ...
No.003【古の高速化テクニック!?】 • 【めたん解説 No.003】いにしえの高速化...
No.004【掛け算ってどうやるの?】 • 【めたん解説風雑談 No.004】掛け算って...
No.005【最適化にまつわる歴史?】 • 【めたん解説風雑談 No.005】最適化にま...
No.006【SIMD命令ってどんな感じ?】 • 【めたん解説風雑談 No.006】SIMD命... (この動画)
【ずんだもんITエンジニアへの道】
【中学生総集編】 • 【ITエンジニアへの道 総集編】中学生編まと...
【高校生総集編】 • 【ITエンジニアへの道 総集編】高校生編まと...
【大学~社会人編】
第17話 【カメラの制御に挑戦!!】 • 【ITエンジニアへの道 17話】カメラの制御...
第18話 【パソコン通信に挑戦!!】 • 【ITエンジニアへの道 18話】パソコン通信...
第19話 【LANボード開発に挑戦!!】 • Video
第20話 【仮想86モードを使ってステレオ化】 • 【ITエンジニアへの道 20話】仮想86モー...
第21話 【レーザーアクティブに挑戦(前編)】 • 【ITエンジニアへの道 21話】レーザーアク...
第22話 【レーザーアクティブに挑戦(後編)】 • 【ITエンジニアへの道 22話】レーザーアク...
第23話 【渡米編その1 アメリカへ行く】 • 【ITエンジニアへの道 23話】渡米編(1/...
第24話 【渡米編その2 アメリカ旅行記!?】 • 【ITエンジニアへの道 24話】渡米編(2/...
第25話 【渡米編その3 海を渡った和製PCゲーム】 • 【ITエンジニアへの道 25話】渡米編(3/...
第26話 【洋ゲーローカライズ作業記】 • 【ITエンジニアへの道 26話】洋ゲーローカ...
第27話 【家庭用ゲーム機に移植?】 • 【ITエンジニアへの道 27話】家庭用ゲーム...
第28話 【ホテルでカンヅメに!?】 • 【ITエンジニアへの道 28話】ホテルでカン...
第29話 【壊れかけのずんだもん!?】 • 【ITエンジニアへの道 29話】壊れかけのず...
第30話 【画像加工処理に挑戦!?】 • 【ITエンジニアへの道 30話】画像加工処理...
第31話 【らくがき機能に挑戦!?】 • 【ITエンジニアへの道 31話】らくがき機能...
第32話 【ネイル機の開発に挑戦!?】 • 【ITエンジニアへの道 32話】ネイル機の開...
第33話 【SIMDで画処理に挑戦!?】 • 【ITエンジニアへの道 33話】SIMDで画...
第34話 【CPUへの最適化に挑戦!?】 • 【ITエンジニアへの道 34話】CPUへの最...
第35話 【大車輪で業務に挑戦!?】 • 【ITエンジニアへの道 35話】大車輪で業務...
第36話 【そして○○へ...】 • 【ITエンジニアへの道 36最終話】そして○...
-----
【効果音・BGM】
[MusMus]様 musmus.main.jp/
[OtoLogic]様 otologic.jp/
[効果音ラボ]様 soundeffect-la...
[DOVA-SYNDROME]様 dova-s.jp/
[On-Jin ~音人~]様 on-jin.com/
[効果音で遊ぼう]様 taira-komori.j...
[ポケットサウンド]様 @pocketse
[BGMer]様 bgmer.net
【イラスト等】
[いらすとや]様 www.irasutoya....
[photoAC]様 www.photo-ac.com/
【ずんだもん/音声等】
坂本アヒル様
[VOICEVOX]様 voicevox.hiros...
【出典】
Intel Architecture MMX Technology/Programmer's Reference Manual/March 1996 Order No. 243007-002
Intel 64 and IA-32 Architectures Software Developer's Manual / Volume 2(2A,2B,2C, &2D): Instruction Set Reference, A-Z
Intel® 64 and IA-32 Architectures Optimization Reference Manual:Volume 1
Intel Advanced Vector Extensions 10/Architecture Specification
ARM Architecture Reference Manual(ARM DDI 0100l)

Пікірлер: 39
@nadare881
@nadare881 8 күн бұрын
SIMD、機械学習の行列計算とかでたくさん使いますがその歴史を学べてとても面白かったです!ハード改造とかも気になるので動画化楽しみにしてます!!
@pgrZundmn
@pgrZundmn 8 күн бұрын
ありがとうございますヾ(*´∀`*)ノ 行列演算には必須ですね(*´ω`)
@BokuTsuchinoko
@BokuTsuchinoko 8 күн бұрын
SIMD命令動画たすかる! (学生にも紹介しなきゃ)
@pgrZundmn
@pgrZundmn 8 күн бұрын
ありがとうございますヾ(*´∀`*)ノ 解説を装った雑談レベルですが(;'∀')
@under2back
@under2back 8 күн бұрын
MMX/SSEのペンティアムが登場する少し前から、自作機をいじっている人間です。 完全にエンドユーザー側ですが今回の動画はとても懐かしく感じています。 たしかそれと同時期に3dfx社のVoodooがでてきたと記憶してます。 そのころから、3Dゲームの描画はCPUよりビデオカードの性能に依存してきたころだと思ってます。 GPUについてお話は興味がありますので、時間あるときに動画にまとめていただければ幸いです。
@pgrZundmn
@pgrZundmn 8 күн бұрын
Voodooとか懐かしくて倒れそうです😅 ビデオカードもあの辺りから凄い勢いで(DirectXと共に)進化しましたよね。 HW T&Lもそうですが、シェーダー周りも固定からプログラマブルになったり、ジオメトリもシェーダーで書ける様になったり、テッセレータはもっと後でしたかね。 CUDA登場で汎用計算までできる様になって、それが今のAIを支えてますから凄いです✨
@takpon9261
@takpon9261 8 күн бұрын
お久しぶりなのだ 嬉しいのだ MMX懐かしいのだ KlamathはおろかP55Cでさえ高値の花で、庶民はK6が精一杯だったのだ
@pgrZundmn
@pgrZundmn 8 күн бұрын
お久しぶりです(*'▽') K6はコスパ良くて好きでした♪ Intelは高くて、Celeron300Aを450MHzDualにするとかで使ったり、Athlonが出てからは暫くAMDで、Athlonも高価だったのでDuronで我慢(;^ω^)
@yukizokin
@yukizokin 8 күн бұрын
MMXずっとどういう物か知りたかったからしれてよかったです。
@pgrZundmn
@pgrZundmn 8 күн бұрын
ありがとうございますヾ(*´∀`*)ノ
@rissei64
@rissei64 8 күн бұрын
MMXや3DNow!は、MP3の128kbpsエンコードで速度と音質のバランスを追及していた時期と重なり、新命令の登場がアツかった記憶があります。 当時使っていたPCは、この動画に登場したPentiumIIを使用していたので、MMXが追加されたCPUでしたね。
@pgrZundmn
@pgrZundmn 8 күн бұрын
丁度MP3のエンコード界隈が盛り上がって、コンテストみたいなのも開催されてましたね。 ベンチマークに使うほどでした😅 Pen2はPenProにMMX搭載してあの頃は最強感ありました✨ その後AMDがAthlonで先に1GHz達成して焦ったIntelがPen3の1.13GHzを選別して出したけど問題起きてしまい、Pen4ではその鬱憤を晴らすかの様に鬼パイプライン化でクロック稼いだけど…みたいな、あの時代は面白かったです😆
@merdekaataumati1949
@merdekaataumati1949 9 күн бұрын
DSPは、線形多項式の演算が爆速だったのだ。 微分方程式をZ変換したものにDSPを使えば、線形微分方程式を高速で解くことができたのだ。 DSPは価格も安いので、使い捨てしても惜しくはなかったのだ。 だから、空対空ミサイルの誘導にはDSPは最適だったのだ。
@pgrZundmn
@pgrZundmn 8 күн бұрын
DSPは直接いじった事無かったですが、単価は安かったんですね✨ MaxVideoはあの時代に画像認識やる関係で、山盛りDSPとか載ってました。 あれ使い捨てちゃうんだーと思いましたが、1発が億のレベルですもんね🙄
@市川麻衣子-t3x
@市川麻衣子-t3x 8 күн бұрын
​@@pgrZundmn TMS320C6000が出たばっかりの頃に評価ボードでシンクロトロンの制御をコントロールするマシンの開発に使っててけど、評価ボードのお値段が600万円しましたw まあ、買ったのは理化学研究所なのてスけどね
@catmull_sutherland
@catmull_sutherland 4 күн бұрын
PS3のCELLってCPUに入ってたSPUというコアは、128bitの4 float SIMDがそのままALUになったようなCPUでしたね。レジスタも128bit x128本とかめちゃくちゃ多くって3 opの積和演算がスループット1ででき、しかもそれが8コアもあるという今考えてもバケモノみたいなCPUでした。それがキャッシュでもない単なるローカルメモリ256kBに繋がっているという恐ろしくアンバランスでプログラマ泣かせな仕様でしたが、究極のSIMDという感じで好きでした。
@pgrZundmn
@pgrZundmn 3 күн бұрын
CELLは凄かったですよね~(*´ω`) SPUがSIMDコアでそれが更に8個あるとか(リダンダンシのため有効は7個と久多良木氏は言ってましたが)、どんだけ演算やらせるんだって思いました(;^ω^) CELLでゲーム機以外も攻める野心的な計画ではありましたが、SPU減らしたバージョンがREGZAに搭載したくらいでしょうか...(´・ω・`) 当時、後藤弘茂氏の記事を良く読んでいましたが、IntelがCoreブランドを発表したのもその影響があるみたいな感じの事を書かれていましたので、今のマルチコアとかHPCに少なからず足跡を残せたのかな、と思ったり。 PS2の頃もVLIWの実装に腐心した話なんかもありまして、久多良木氏本人もおっしゃっていましたが、ゲーム開発者は凄い! ハード用意しとけば使い込んで凄いの作ってくれる、と...(ヾノ・∀・`)イヤイヤ 最後の方はグラフィックの描画にも使われたりしたみたいですが(実際に携わっていないのであくまで聞いたお話ではあります)、あの頃まではチップの性能を如何に引き出すかみたいなレトロPCの頃からのスタイルがまだ強く残っていた気がしますね(*´ω`) 仕事で無ければ楽しいんですが(;'∀')
@青木祐太郎-b3g
@青木祐太郎-b3g 8 күн бұрын
MSXで動くコードも見たいぞい
@pgrZundmn
@pgrZundmn 8 күн бұрын
実機からROMを吸い出して、dockerでOpenMSXの環境整えてHelloWorldまでは辿りついているのですが、ここからゲームっぽいものへの敷居が高くて、VDPの仕様とかを眺めながら彼是思案している段階です…(;'∀')
@benikoji3
@benikoji3 8 күн бұрын
@@pgrZundmn エミュで「古のプログラムを動かす」のでなく、新たにMSXでプログラムする方向のネタですか? 性能低すぎて逆に敷居が高い(笑)
@青木祐太郎-b3g
@青木祐太郎-b3g 8 күн бұрын
MSXクセが強すぎて苦戦すると思います。ちなみに16×16ドットのスプライトパターンの呼び出し順番は8×8ドットのパターン4枚を左上・左下・右上・右下の順番に読出します。他機種でプログラミングした人がつまづくポイントです
@マスターエクサ
@マスターエクサ 8 күн бұрын
むしろSIMDは最近日の目を見るようになっている気がする DirectXMathとかBrustコンパイラとか、WebAssemblyとか
@pgrZundmn
@pgrZundmn 8 күн бұрын
WebAssemblyでも使われるんですね😲
@bio-cancer1903
@bio-cancer1903 8 күн бұрын
セガのModel1は確かDSPでグラフィック処理してたと記憶してます 当時は専用のチップを作ることが出来ないから汎用DSPで代用してたのかな
@pgrZundmn
@pgrZundmn 8 күн бұрын
専用チップ起こすの結構お値段張るので汎用DSPで代用してたのかもですね~(*´ω`) あの時代は結構DSP搭載してた例多いみたいで(*'▽')
@akikan-jp
@akikan-jp 7 күн бұрын
DSPはPCでは見なくなりましたがDSPの名称は AVアンプやカーオーディオだと今でも使われてますね CPUに取り込まれたと言うと今はAIの為にNPUを 搭載するのが流行ってますが時代は繰り返すもの なんでしょうか
@pgrZundmn
@pgrZundmn 7 күн бұрын
オーディオ機器だとまだ現役なのですね。 簡単な所だとEQや、AVアンプだと視聴空間選択とかでリバーブ掛けたりするのに使われたのかなと思いますが、自分はPureな方面へ進んでしまいBASS/TREBLEですら音質劣化するから要らないという境地に達してしまいました(;^ω^) 今はPCで圧縮音源を聴いている_(┐「ε:)_ オーディオ機器の場合、今時の組み込みCPUならEQくらい造作もないと思いますが、音質面でディスクリートチップを選択しているのでしょうかね。あんまりCPUに色々やらせるのも大変ですし(;^ω^) GPUにもTensorコアとかAI向けのが搭載されて、CPU単体にもNPU搭載される流れですよね。 時代に合わせてこれからも必要な機能を搭載して行くのでしょう。 常温で動く量子bitとかが実用化されたら搭載されそうな気がします(*´ω`)
@vianeplus
@vianeplus 8 күн бұрын
Dr.Dは8ビット全盛だった頃16ビット機は gotoよりgosub使って高速化しようなんてコメ残してたなぁ。
@pgrZundmn
@pgrZundmn 8 күн бұрын
Overflowコーナーとかも隈なく読んでましたね🤣
@sanmaikurasystems7694
@sanmaikurasystems7694 8 күн бұрын
脱線話のcmov系命令、厳密にはflagsみて使えるか確認すべきなんだろうけど、現実的にはfamily 6の石は使える前提で問題なさそうな感じ。(gcc -march=i686で容赦なくcmov命令吐くとかいろいろ)
@pgrZundmn
@pgrZundmn 8 күн бұрын
そうなんですよね。今は問答無用で使えるんですが、当時あんまりパフォーマンス良くなかったのもあって、そのまま使わず(´・ω・`) 今はcmov吐くんですね~(*´ω`)
@Aniram.
@Aniram. 6 күн бұрын
😌🎵
@jps123456789
@jps123456789 8 күн бұрын
もう、ついていけないwww
@pgrZundmn
@pgrZundmn 8 күн бұрын
ちょっと現代に近づきすぎたので、また8bit~16bit時代の話題もやって行きます(;'∀')
@あぴよん-i5h
@あぴよん-i5h 8 күн бұрын
ナムコの90年代の3DなんかもDSPに計算させてたね(ポリゴナイザー基板って奴) PCだとGPUとは別の思想で、MPACTとか物理演算させるのを目的にした代物もあったなぁ MPACTなんかは初代が10万ポリゴン程度の計算しかできなかったけど 10ns位(だっけかなぁ?失念)の間隔でコマンドを入れると処理してくれるという 非ノイマン型のハードだった。MPACT2で100万ポリゴンにあがってたみたいだけど詳しくは知らない。
@pgrZundmn
@pgrZundmn 8 күн бұрын
ポリゴナイザーはDSP使ってたんですね(^▽^;) 調べてみるとMPACT!→MPACT!2の次のMPACT!3完成前にATIに買収され、そのATIも今はAMD...と...。 やっぱりストリームプロセッサだったみたいですね。面白そう(*´ω`) これもCPU側の演算能力の向上、特にSIMDの採用により存在価値が無くなってしまったとASCII.jp×デジタルの記事にありました…。 グラフィックはGPUの進歩で描画自体は先行して進歩しましたが、動きである物理シミュレーションについては暫くCPU側での演算が必要でしたかね(あまり詳しくない(;'∀') PS2が出た時のEEが、そっち(Emotion)もやる! ってコンセプトだった気がしますが(;^ω^) 個人的にはDMAとかでCPUと並列に動いてくれると萌えます(*'▽')♪
@あぴよん-i5h
@あぴよん-i5h 8 күн бұрын
@@pgrZundmn あの頃のCPUとかメモリに入力してるクロックとかの向上は凄まじかったですもんねぇ。メモリなんかwin95の時60とか66MHzだったのが今では「え?そんなに遅いの?」って感じでどんどんCPUの速度と乖離していってましたね。 MPACT3なんて全く話題にもなりませんでしたねwww 物理演算だけさせるボードも雑誌とか動画で、こんな事ができるぞ!ってデモは見たけどこれもCPUの向上で全然流行らなかったですね。
世界の5G通信評価が発表された件
12:31
スマサポチャンネル
Рет қаралды 18 М.
Sigma baby, you've conquered soap! 😲😮‍💨 LeoNata family #shorts
00:37
Life hack 😂 Watermelon magic box! #shorts by Leisi Crazy
00:17
Leisi Crazy
Рет қаралды 80 МЛН
SISTER EXPOSED MY MAGIC @Whoispelagheya
00:45
MasomkaMagic
Рет қаралды 13 МЛН
How it feels when u walk through first class
00:52
Adam W
Рет қаралды 24 МЛН
The Unreasonable Effectiveness of Linux Workstations
12:47
No Boilerplate
Рет қаралды 628 М.
【ITエンジニアへの道 28話】ホテルでカンヅメに!?【ずんだもん】
11:41
プログラマーずんだもん
Рет қаралды 2,2 М.
【ITエンジニアへの道 27話】家庭用ゲーム機に移植?【ずんだもん】
12:39
プログラマーずんだもん
Рет қаралды 2,4 М.
【ITエンジニアへの道 31話】らくがき機能に挑戦!?【ずんだもん】
15:03
プログラマーずんだもん
Рет қаралды 2,5 М.
【ITエンジニアへの道 32話】ネイル機の開発に挑戦!?【ずんだもん】
15:37
プログラマーずんだもん
Рет қаралды 2,3 М.
Sigma baby, you've conquered soap! 😲😮‍💨 LeoNata family #shorts
00:37