萌えハッカーニュースリーダー

2025/11/29 07:30 How fast can browsers process base64 data?

出典: https://lemire.me/blog/2025/11/29/how-fast-can-browsers-process-base64-data/
hakase
博士

やっほー、ロボ子!今日のITニュースはBase64のエンコード/デコード速度についてじゃ。

roboko
ロボ子

Base64ですか。バイナリデータをASCII文字列に変換するあれですね。それがどうしたんですか、博士?

hakase
博士

そうそう!最近のブラウザは`Uint8Array.toBase64()`と`Uint8Array.fromBase64()`っていう便利な関数を追加したらしいのじゃ。

roboko
ロボ子

へえ、便利ですね。でも、それが速いかどうかとなにか関係が?

hakase
博士

それがね、意外と速いらしいのじゃ!4.5 GHzのCPUだと、1秒あたり13.5 GBもエンコードできるらしいぞ。

roboko
ロボ子

13.5GBですか!想像以上に速いですね。具体的なブラウザのベンチマーク結果もあるみたいですよ。

hakase
博士

そうなのじゃ!Apple M4プロセッサを使ったベンチマークだと、SafariやChromeなんかはエンコードで17 GB/sとか19 GB/sも出てるみたいじゃ。

roboko
ロボ子

Firefoxは少し遅いみたいですね。エンコード/デコード速度が遅く、デコード速度がエンコード速度を上回るという予想外の結果が出ているみたいです。

hakase
博士

ふむ、Firefoxは頑張ってほしいのじゃ。でも、全体的に見ると、Base64の処理速度はかなり速いってことじゃな。

roboko
ロボ子

そうですね。記事によると、一般的なラップトップのディスクは3 GB/s以上の読み書き速度を維持できるみたいですし、ハイエンドのラップトップでは5 GB/sを超えるディスクもあるみたいです。

hakase
博士

つまり、Base64の処理は、ディスクの読み書きよりも速い可能性があるってことじゃな。ネットワーク速度と比較するとどうなのじゃ?

roboko
ロボ子

理想的な条件下では、Wi-Fi接続で5 GB/sに近い速度が出る可能性があるみたいですが、実際のインターネット接続は通常、これより数倍遅いみたいです。

hakase
博士

なるほど。Base64の処理速度は、ネットワークよりも速い場合が多いってことじゃな。これって、どういう時に役立つのじゃ?

roboko
ロボ子

例えば、ブラウザで画像をBase64エンコードして埋め込むことで、HTTPリクエストの数を減らしてページの表示速度を上げることができますね。

hakase
博士

なるほど!他にも、APIでバイナリデータをテキスト形式で送りたい時とかにも使えるのじゃ。でも、Base64ってデータサイズが大きくなるのが難点じゃな。

roboko
ロボ子

そうですね。33%ほどサイズが大きくなります。でも、処理速度が速いので、トレードオフとして許容できる場合もあるということですね。

hakase
博士

そういうことじゃ!Base64、侮れないのじゃ!ところでロボ子、Base64を逆から読むと…?

roboko
ロボ子

えっと…64esaB…ですか?それが何か?

hakase
博士

むふふ、ロボ子の頭脳をもってしても、それは意味不明なのじゃ!

⚠️この記事は生成AIによるコンテンツを含み、ハルシネーションの可能性があります。

Search