
FFmpeg、アセンブリ言語で書き直したところ94倍の高速化に成功😳

- 1
永野芽郁が登壇予定のイベントチケットが3分で完売 主演映画「かくかくしかじか」初日舞台あいさつ1 : 2025/05/12(月) 13:03:27.49 ID:3Nbv9QgS9 「週刊文春」で俳優の田中圭との不倫疑惑を報じられた女優の永野芽郁が主演する映画「かくかくしかじか」(関和亮監督、...
- 2
【外国の消費税の基本税率は日本より高い20%程度だ】石破首相 消費税減税について3点あげ否定的な考え示す 「基本税率が他国に比べて低い、財政状況は極めてよろしくない、高齢化がものすごく進んでいる」1 : 2025/05/12 12:28:01 ??? 【速報】石破首相 消費税減税について3点あげ否定的な考え示す「次の時代に責任を持つ。本当に困窮の方に手厚い措置する」 石破首相は12日、衆議院...
- 3
韓国・廃業支援金に申請殺到、わずか3カ月で年間目標の9割到達…韓国の貧困深刻化が浮き彫りに1 : 2025/05/12(月) 08:38:36.77 ID:8wJOhz9U0 https://news.yahoo.co.jp/articles/99964910f88828178d3de0...
- 4
「チ。地球の運動について」とかいう謎のアニメ、くっそ面白いのになんでお前ら教えてくれんかったん?1 : 2025/05/12(月) 12:31:53.35 ID:OLlUqi6y0 今6話やけど進撃の巨人以来やわこのワクワク感 2 : 2025/05/12(月) 12:32:40.71 ID:...
- 5
水道管の老朽化、ワースト1位は大阪、優勝1 : 2025/05/12(月) 12:44:24.26 ID:OaxfHnLo0 道路に水があふれ、朝の住宅街を騒然とさせた大阪市城東区の水道管の破裂。破損したのは約60年前に敷設され、一般に強...
- 6
【朝ドラ】河合優実、まさに「リアル北島マヤ」『あんぱん』でも“主役食い”「存在感が別格」ネット称賛 いずれ朝ドラヒロインに1 : 2025/05/12(月) 12:09:51.37 ID:kMCstWO39 https://news.livedoor.com/article/detail/28732609/ 2025年...
- 7
中川翔子さんに対するイメージ1 : 2025/05/12(月) 11:58:37.87 ID:3zqihWst0 どんな人? 2 : 2025/05/12(月) 11:59:56.52 ID:0h0ZVYOJ0 絵の上手い人 ...
- 8
古市憲寿氏 選択的夫婦別姓を批判している人は「本当に仕事ができない人なんだろうなあ…」1 : 2025/05/12 11:59:26 ??? 社会学者の古市憲寿氏(39)が12日までに自身のX(旧ツイッター)を更新。選択的夫婦別姓の議論について言及した。 古市氏は「選択的夫婦別姓に関...
- 9
一人っ子は 「性格悪い人いない」? SNSで議論勃発…「気持ちに余裕があって優しい」「自己中でワガママ」1 : 2025/05/12 11:11:41 ??? 家族における「きょうだい構成」は本人の性格形成に少なからず影響を与えると考える人は少なくないようですが、このたびSNSでは「一人っ子は性格がい...
- 10
韓国人窃盗団に盗まれた仏像、対馬の観音寺に到着 歓迎の法要へ1 : 2025/05/12(月) 12:07:36.72 ID:LF+dMPJ2 対馬市の寺から盗まれ、その後韓国で見つかった仏像が12日朝、所有元の寺に到着しました。 約13年ぶりに対馬市の観音...
- 11
大阪万博粘着界隈、やっぱり日教◯だった…1 : 2025/05/12(月) 12:04:47.02 ID:1kTCErlt0 https://hayabusa9.5ch.net/test/read.cgi/news 2 : 2025/05...
- 12
【小学生でテストの点が悪く親に叱られた】東京メトロで東大生ら切りつけ犯の男、新たな犯行動機供述へ1 : 2025/05/12(月) 12:10:39.41 ID:z4zHuVIC0 東京メトロ「東大前」駅で男子大学生が包丁で切りつけられた事件で、逮捕された男が「小学生の頃、テストの成績が悪く、...
- 13
岡野タケシ弁護士、文春の社風は「反権力」「反体制」。ところが今は、芸能人の不倫騒動追いかけ…もはや文春自体が「権力」となり暴走1 名前:匿名のゴリラ 投稿日時:2025/05/12(月) 12:20:30.91 ID:kMCstWO39 岡野タケシ弁護士【アトム法律グループ】@takeshibengo https://x....
- 14
ワイ自閉症スペクトラムなんやが怒りっぽいとこ以外は健常者と同じなんやが1 名前:匿名のゴリラ 投稿日時:2025/05/12(月) 12:12:37.29 ID:tXU4DOl60 これだけで障害年金ありがとうって感じ 必死がすごいのはニートで暇だからってだけで障害関...
- 15
誰も言わないけど「面接」って発達障害・精神障害を弾くためのシステムだよな1 名前:匿名のゴリラ 投稿日時:2025/05/12(月) 12:02:04.45 ID:vHa1zOmq0 https://itest.5ch.net/subback/poverty 2 名前:...
- 16
【韓国】6年生11人が公園で卒業アルバム撮影、4人が腹痛訴え病院へ…摘んで食べたサツキの花が原因だった1 : 2025/05/12(月) 08:36:17.48 ID:LF+dMPJ2 卒業アルバム用の写真を撮っていた小学生4人が、公園に咲いていたサツキの花を食べて病院で治療を受けるという事態が発生...

- 1 : 2024/11/11(月) 18:18:58.83 ID:t9CKUigHd1111
ビデオ・オーディオを扱うアプリの多くで採用されているオープンソースライブラリ「FFmpeg」で、驚くべきパフォーマンス向上が達成されました。
アセンブリ言語(assembly)を手書きすることで、94倍も処理速度が向上したとのこと。この試みが行われたのはAV1デコーダー「dav1d」においてですが、もともと約8%がアセンブリなのだそうです。
そのほかはC/C++言語のソースコードとして記述され、CPUが直接理解できる機械語にコンパイル(変換)された上で実行されています。しかし、コンパイラーによる変換に頼らず、人の手でアセンブリを記述し、最新CPUに搭載されている「SSSE3」「AVX2」「AVX-512」といった拡張命令を積極的に活用することで、思った以上の効率化が実現できたのだとか。
コンパイラーもそうした最新のCPU拡張命令を活用するオプションがあり、人手を介さなくてもかなりの最適化を行ってくれるはずですが、細部には改善の余地が多く残されているのかもしれません。
もしかすると、将来バージョンの「FFmpeg」はかなり速くなる……のかも。そうなれば、「FFmpeg」を採用するアプリにも恩恵は大きいでしょう。「FFmpeg」の開発チームは、近いうちにこのアプローチに関するチュートリアルを提供するとしています。
筆者の手には負えそうにありませんが、興味ある方はウォッチしてみるとよいでしょう。マルチメディアライブラリ「FFmpeg」がアセンブリ言語の手書きで爆速になったという報告
https://forest.watch.impress.co.jp/docs/serial/yajiuma/1638345.html- 2 : 2024/11/11(月) 18:20:42.01 ID:arKg2gHU01111
- インストールできるCPU限られるのか?
- 9 : 2024/11/11(月) 18:23:34.26 ID:MBavmrnT01111
- >>2
AVX512は最近のAMD64のCPUにはだいたいついてるだろ
ARM Neon用は別で書いてるだろうけど - 62 : 2024/11/11(月) 18:40:40.61 ID:Q9zAwzNj01111
- >>2
限られないんじゃね?
まだ中身見てないけど普通こういうのは全部のCPUで動くジェネリックな実装があって
特定の CPU 拡張が存在するとき個別のアセンブリ実装に切り替わる - 3 : 2024/11/11(月) 18:21:24.34 ID:arKg2gHU01111
- すべてのコアに対応したアセンブラって書けるの?
- 66 : 2024/11/11(月) 18:41:02.99 ID:Q9zAwzNj01111
- >>3
不可能
個別対応になる - 4 : 2024/11/11(月) 18:21:36.13 ID:UtY5uAwW01111
- コンパイラさん…どうして…
- 5 : 2024/11/11(月) 18:22:07.81 ID:UtY5uAwW01111
- お絵かきソフトのSAIはアセンブラで書かれてたんだよね
- 6 : 2024/11/11(月) 18:22:12.56 ID:aB83Ffv901111
- 天才の所業やな
- 7 : 2024/11/11(月) 18:22:28.32 ID:/LqusvjW01111
- アセンブリ言語ってなに?安倍晋三で例えて
- 10 : 2024/11/11(月) 18:23:35.99 ID:arKg2gHU01111
- >>7
心臓と晋三の間を埋める言語じゃないかな?よーわからんけどw - 44 : 2024/11/11(月) 18:35:57.89 ID:yBLqDHeb01111
- >>7
アベ言語「隠蔽というのはですね、隠蔽というのはー、隠蔽というのはじゃあ、わたくしが隠蔽したんですか」 - 8 : 2024/11/11(月) 18:23:13.13 ID:dIj8TwUGd1111
- っぱ時代はアセンブラよ😤
- 11 : 2024/11/11(月) 18:23:51.58 ID:9fUsHCjj01111
- 開始したら他の全ての処理が止まってマウスすら動かなくなったりしそう
- 12 : 2024/11/11(月) 18:24:25.79 ID:99jn2jtPa1111
- 人の手のぬくもりがあるほうが高速化できる
- 13 : 2024/11/11(月) 18:24:35.21 ID:moVrz2YS01111
- 動画編集ツール作ってるがこれ導入してえ
遅すぎるんよどれも - 17 : 2024/11/11(月) 18:27:09.10 ID:MBavmrnT01111
- >>13
たぶんAV1の動画を読みこむとこしか速くならんけどオープンソースだから使えるは使えると思う - 14 : 2024/11/11(月) 18:26:04.98 ID:8JvAKKUO01111
- Intel CPUはSIMD命令酷使して負荷かけるとクロック下がる欠陥設計なんでおすすめしません(´・ω・`)
- 15 : 2024/11/11(月) 18:26:12.24 ID:ZWqF/AOC01111
- 元々C/C++で書かれてたのをアセンブリ言語に書き直して94倍も速くなるんなら、たぶんコンパイル時の最適化オプションが間違ってただけだと思う。
- 22 : 2024/11/11(月) 18:27:51.59 ID:MBavmrnT01111
- >>15
SIMDの使い方でしょ - 35 : 2024/11/11(月) 18:31:57.80 ID:9t7piVGL01111
- >>15
拡張命令は特殊すぎてコンパイラで最適化できない - 16 : 2024/11/11(月) 18:26:26.95 ID:zZdRyE//01111
- メンテナビリティやばそう
- 18 : 2024/11/11(月) 18:27:12.61 ID:PBgqqz3001111
- 携帯動画変換君とかでお世話になった気がする🤔
- 19 : 2024/11/11(月) 18:27:29.35 ID:MVZU1WB201111
- デコーダかよ高速化して欲しいのはAV1のエンコーダの方なんだけど
- 20 : 2024/11/11(月) 18:27:32.62 ID:MpWy/pFH01111
- 12世代CoreだとPコアはAVX-512に対応できるんだけどEコアが対応してない
そのせいでCPUとしては無効になってる - 21 : 2024/11/11(月) 18:27:38.52 ID:ZWqF/AOC01111
- それか、最適化が下手なコンパイラ使ってたか。
その場合はコンパイラをまともなのに変更すれば解決するだろ。 - 23 : 2024/11/11(月) 18:28:13.83 ID:GFRFZPsz01111
- ベクトル化するだけなら別に難しくないぞ
avx512は並び替えとか柔軟にやってくれる命令が沢山追加されてだいぶやりやすくなってる(面白みも減ったが) - 25 : 2024/11/11(月) 18:29:15.36 ID:MBavmrnT01111
- >>23
とはいえ頭が混乱する感じはあるな俺の場合 - 24 : 2024/11/11(月) 18:29:10.58 ID:s7qGqJpc01111
- まだまだあると思うよ、こういうの
効率化でビジネスのスピードしか優先されてない結果だよ - 26 : 2024/11/11(月) 18:29:20.43 ID:CtfLCisV01111
- コンパイラが信用できんのは今も昔も同じか
- 27 : 2024/11/11(月) 18:29:36.93 ID:lAk9samVH1111
- コボラーおじさんの中に混じってるアセンブリ爺さんの魅力
- 28 : 2024/11/11(月) 18:29:37.29 ID:A9DDTbp001111
- コンパイラの最適も万能ではなくて
ベクトル演算とか複素数演算はハンドアセンブルまでいかなくても
intrinsic使うだけでもかなり早くなるんだよな
メモリアライメントにシビアだからコンパイラ最適化では対応できない場面が多い - 29 : 2024/11/11(月) 18:30:09.03 ID:J/cMqph/H1111
- AVX-512って日本語wikipediaページ無いのかよ
- 30 : 2024/11/11(月) 18:30:10.71 ID:ZWqF/AOC01111
- もしコンパイラの問題だとしたら、たぶん最近の拡張命令にコンパイラのバージョンアップが追いついてないだけだから、アセンブリ言語に書き直すよりもコンパイラのバージョンアップを気長に待ってた方がいいと思う。
- 31 : 2024/11/11(月) 18:30:11.97 ID:Q5UqbqfQ01111
- そりやコンパイラの最適化はどんなソースも変換する前提で冗長度の高い機械語命令を出してフロー最適化とか節穴最適化とか汎用的な最適化をする物だから
仮に効率の良い特定の命令を出力できるとしても、それ専用のソース書き換えが必要だから、アセンブリ言語でパズルするよりは効率悪くて当然だろ - 83 : 2024/11/11(月) 18:46:31.70 ID:W154C/8Zr1111
- >>31
コンピューター・サイエンスの学位持ってるの? - 32 : 2024/11/11(月) 18:30:18.73 ID:UY2kF3Jz01111
- dav1dって強いの?
- 33 : 2024/11/11(月) 18:31:28.37 ID:xaWrjqbY01111
- コンパイラという足かせ。
- 34 : 2024/11/11(月) 18:31:56.18 ID:Q5UqbqfQ01111
- コンパイラのバージョンアップがあっても
特定の機械語の使用条件やCPU内部動作を意識したソースを書かないと冗長になるよね - 36 : 2024/11/11(月) 18:32:06.07 ID:Dp2whBXm01111
- アーキテクチャを設計できるレベルの知能と知識が無いとコンパイラより効率的にするなんて無理でしょ
- 38 : 2024/11/11(月) 18:32:56.79 ID:J/cMqph/H1111
- youtubeの中で再エンコードやってる人とかバリバリに自社製作してるんだろうな
- 39 : 2024/11/11(月) 18:33:25.97 ID:bbjiWwYlH1111
- この手のPC関連スレに必ずやってくる名物の話通じないおっさん今日も来るかな?
- 43 : 2024/11/11(月) 18:35:54.65 ID:99jn2jtPa1111
- >>39
山形大学が~ - 41 : 2024/11/11(月) 18:33:47.94 ID:BFVftqgg01111
- AV1の動画が軽くなるんか?
再生支援無くても再生できる? - 42 : 2024/11/11(月) 18:33:51.57 ID:Im5s/7c501111
- 業務アプリでおんなじ事やったら死後も棺桶に変更依頼書入れられそうで怖いよな
- 51 : 2024/11/11(月) 18:36:37.98 ID:bbjiWwYlH1111
- >>42
本人はエスプリの効いたジョークだと思ってるけど実際にはクソつまらないパソコンの大先生お得意のクソ寒発言やめろ - 46 : 2024/11/11(月) 18:36:15.10 ID:MVZU1WB201111
- ffmpegはgccかclangでコンパイルして使うことを主に想定してるからな
Intelの有償のコンパイラのようにはいかない - 47 : 2024/11/11(月) 18:36:21.10 ID:ZCB2FZ5S01111
- コンパイラさえしっかり作ればすべての言語がチップ性能無駄なく使えるはずなんだけどな
ビルゲイツがなにかやってたはず - 48 : 2024/11/11(月) 18:36:22.98 ID:uS2zrwyY01111
- つまりどういうことだってばよ?
- 49 : 2024/11/11(月) 18:36:26.72 ID:jZs3fpya01111
- とんでもないコストじゃないか
- 50 : 2024/11/11(月) 18:36:27.18 ID:K57/GEXG01111
- でその書き直した版のソフトはどこにあるの?
- 52 : 2024/11/11(月) 18:36:40.95 ID:lBYvoufCM1111
- ダンプリスト松本
- 53 : 2024/11/11(月) 18:37:37.55 ID:zY0gQvVAH1111
- こんなのこそAIにやらせろよ
- 54 : 2024/11/11(月) 18:37:43.54 ID:Q5UqbqfQ01111
- 業務アプリでアセンブリ言語使うって、ハードとソフトの限界まで使うような極端な制約は少ないだろ
FAとか宇宙開発とかチップの世代とか消費電力とかメモリフットプリントとかタイミングがクリティカルなら組むだろうけど、どっちかというと理系の科学技術系分野だろうね - 55 : 2024/11/11(月) 18:37:44.80 ID:cnFUNAld01111
- 要はメモ帳に01の並び何マンと書けば全部できるの?
- 56 : 2024/11/11(月) 18:37:52.96 ID:w8DcWCCjr1111
- 昔の組み込みだとcでタイミングがきついところは
インラインアセンブラで書いたりするな - 57 : 2024/11/11(月) 18:38:30.15 ID:lyMIoT9j01111
- コンパイラーってAIなんかでごりごりに詰めていけば最終的にアセンブリに近づいていったりするのかな将来的には
- 58 : 2024/11/11(月) 18:38:35.74 ID:Oh10JAMH01111
- つまり94秒かかってたのが1秒で終わるってこと?
- 59 : 2024/11/11(月) 18:39:14.78 ID:99jn2jtPa1111
- アセンブリ言語を使った最適化のコンテストに参加したことあるけど
人によって性能に差がめちゃくちゃあるぞ
コンパイラじゃ細かいところが無理だよ - 67 : 2024/11/11(月) 18:41:46.02 ID:JRNBrDCo01111
- >>59
うん
アセンブラ使えばどんなプログラミング言語よりも速い
ただそれだけしか知らずそれだけしか言えないこのスレのアホ共をもっと説教してやってくれ - 71 : 2024/11/11(月) 18:43:08.59 ID:++GQddoT01111
- >>59
凄え
並べ替えるしかわからん - 61 : 2024/11/11(月) 18:40:19.03 ID:J/cMqph/H1111
- 水の女にストーカーしてるおじさんか
- 69 : 2024/11/11(月) 18:42:28.43 ID:Q5UqbqfQ01111
- >>61
キミの言う水の女がストーキングハラスメントで通報されている犯罪常習者だねン!わざわざ毎回幼稚な繰り言を書いて、頭が空っぽすぎる
- 63 : 2024/11/11(月) 18:40:44.57 ID:erCqOnb101111
- アセンブラで直接叩くとか久しぶりに聞いた
ファミコン時代とかはそれでカツカツに処理力を上げてた - 64 : 2024/11/11(月) 18:40:51.77 ID:UY2kF3Jz01111
- みんなパイプラインの動きが頭の中で完全に再現できてるか?
- 65 : 2024/11/11(月) 18:40:59.74 ID:Q5UqbqfQ01111
- なんか嫌儲で職場名や自身の苗字を毎回書いている人の
知能とメンタルが幼稚過ぎて呆れ返るよねまともな雑談もできない幼稚な障碍者
- 68 : 2024/11/11(月) 18:42:08.46 ID:Dp2whBXm01111
- C言語でさえメモリの取り扱いで危険だらけなのに
アセンブリ言語手打ちで脆弱性とか大丈夫なんかね - 76 : 2024/11/11(月) 18:44:54.24 ID:Q9zAwzNj01111
- >>68
もちろん大丈夫ではないし
C で書くより遥かにミスし易い - 70 : 2024/11/11(月) 18:42:35.26 ID:CeWmhiYJ01111
- ytdlpおじさん「いいなこれ」
- 73 : 2024/11/11(月) 18:43:35.80 ID:W154C/8Zr1111
- 何で君達そんなにコンピューターに詳しいの?
CS degree 持ってるの? - 74 : 2024/11/11(月) 18:44:09.92 ID:29iONLkd01111
- オプティマイザーがタコなんだろう
- 75 : 2024/11/11(月) 18:44:10.25 ID:Rm1hZVr801111
- 変態かよw
- 77 : 2024/11/11(月) 18:44:55.85 ID:UY2kF3Jz01111
- キャッシュヒット率とか考えてデータ構造設計してくれよ
- 78 : 2024/11/11(月) 18:45:08.74 ID:Qbq47IrS01111
- OpenCVにも使われてんのかこれ
- 79 : 2024/11/11(月) 18:45:15.98 ID:Q5UqbqfQ01111
- >59
キチガ●ジ本人やん
暗黒通信団のπの人ならその手のコンテスト経験があるだろうけど
トンボの人はプログラムが苦手で学位論文研究未完のまま学位を要求したポンコツでしょ虚言に具体性もなく小学生レベル
- 80 : 2024/11/11(月) 18:45:47.02 ID:pr9gdvAd01111
- 全部とは言わず演算の重いところだけでもアセンブラに切り替えたら早くなりそうよね。絶対やりたくないし出来ないけど
- 81 : 2024/11/11(月) 18:45:52.70 ID:MpWy/pFH01111
- 頭の中でレジスタと演算とパイプラインとキャッシュのシミュレーションができる人間ならコンパイラに勝てる
- 84 : 2024/11/11(月) 18:47:15.12 ID:/O2zLxu701111
- アセンブリ記述で94倍の性能向上ができたということは、元のコードが悪かっただけ。
並列化できるように書いてないとか、キャッシュ構造を理解してないとか、コンパイラのチューニングが悪いとか。 - 85 : 2024/11/11(月) 18:47:22.80 ID:Q9zAwzNj01111
- なんかスレに関係ない人物名とか出して暴れてる奴が居るけど
これ何? - 89 : 2024/11/11(月) 18:48:20.62 ID:A9DDTbp001111
- >>85
皆スルーしてるよ
アカデミックな話題になると涌いてくる私怨拗らせた可哀想な人 - 94 : 2024/11/11(月) 18:49:37.45 ID:W154C/8Zr1111
- >>89
コンピューター・サイエンスの学位持ってるの? - 87 : 2024/11/11(月) 18:47:25.59 ID:bP7BBLrj01111
- av1遅すぎてエンコできない問題解決したの
- 90 : 2024/11/11(月) 18:48:28.87 ID:Q9zAwzNj01111
- >>87
それについては続報を聞かないな
まだじゃないか? - 88 : 2024/11/11(月) 18:48:11.47 ID:3N6xY5g/H1111
- 今どきのアセンブラも命令入れ替えてペアリングとかしてるの?
もはやロストテクニックなのでは - 91 : 2024/11/11(月) 18:48:41.86 ID:erCqOnb101111
- こういう職人芸はパソコンならx68kゲームならPS1が最後か?
- 92 : 2024/11/11(月) 18:49:09.83 ID:6la48I9M01111
- 30年くらい前には16進数の文字の羅列をチラっと眺めて問題点指摘出来る天才がいたってNRIに居た時に聞いたが本当か?
- 93 : 2024/11/11(月) 18:49:10.81 ID:99jn2jtPa1111
- 俺は知らなかったが有名な話で
モジュラー演算はコンパイラで最適化すると
割ってなくてシフト演算してるんだってさ
知ってた?w
コメント