『ムーアの法則』に囚われない、Googleの飽くなき挑戦

『ムーアの法則』に囚われない、Googleの飽くなき挑戦

『ムーアの法則』をネットワークアーキテクチャで変える

『ムーアの法則』では、“集積回路上のトランジスタ数は「18カ月(=1.5年)ごとに倍になる」”としている。
<参照:Wikipedia『ムーアの法則』
しかし、現在では引用元にあるような当初の意味合いとは異なり、コンピュータの処理速度が2倍になるという意味で使われ始めている。

ゴードン・ムーア(米インテル創業者)自身がのちに、「この法則は集積回路のプロセスが原子レベルに到達し、理論的限界を迎えるだろう」と語っているように、まさに2020年を目前にして、インテル社はこの壁の突破に苦慮している。

さて、他力本願が大嫌いなGoogleは社是でもある『遅いより速いほうがいい。』を実践すべく、『ムーアの法則』を早々に見切りをつけ、すべてのハードとソフト、そしてネットワークを「自社製」にするべく邁進してきた。

その代表格としてにわかに注目を浴びたのが「AlphaGo」に使用された『TPU(Tensor Processing Unit)』である。
『TPU』はディープラーニング専用のプロセッサであり、Googleは2015年のGoogle I/O発表まで極秘で開発を進めていたという。
<参考:EE Times Japan『GoogleからAI用プロセッサ「TPU」が登場』>

ソフトパワーでハードウェアの能力をフルに活かす

さて、ここからが本題。
最近、ベトナムにいる弊社メンバーとGoogleチャットをする機会があった。国内でのコミュニケーションと、まったく変わらない速度で応対ができている。それはGmailや他の製品群(Google Suite/Docsなど)においても、物理的な距離による遅延はまったく感じさせるものではなかった。

「AlphaGo」のようなテスト的なアプローチならともかく、日常で用いられる一般的なサービスにおいて、恐ろしく高速に動いているのは非常に気になる。

どういった設備なら、この速度が実現できるのだろうか?
それは一体、どんなテクノロジーなのだろうか?
素朴な好奇心から調べてみた。

その答えは「2015 Open Network Summit」のGoogle講演にあった。
http://googlecloudplatform-japan.blogspot.jp/2015/06/google-jupiter.html

“現在の Jupiter ファブリックは二分割帯域幅で1ペタビット/秒を超えています。これだけの能力があれば、10万台のサーバがそれぞれ10Gb/秒で情報を交換でき、アメリカ国会図書館所蔵図書のスキャンしたコンテンツ全体を1/10秒未満の時間で読み込むことができるでしょう。”

1つのデータセンターには現時点で8万台ほどのGoogle謹製サーバが動作している。
しかし、JupiterネットワークとAndromeda Cloud Platformのおかげで、各製品のプログラムエンジニアは8万台あるいは全世界に散った100万台以上(※)のサーバをほとんど意識することなく開発ができるという。
(※注釈:推定値です。1データセンター8万台×12センターで96万台。クラウドにおけるGoogle最大の敵「Amazon」が400万台と言われているので、実際にははるかに大きい可能性がある)

ちなみにGoogleは全世界のサーバの10%以上とのこと。その規模感を考えれば、効率や電力などにこだわりたくなるのも当然と言えば当然だ。

もし、1つのハード、1つのネットワークスイッチ、1台のバランシング、1つのデータセンターに拘った開発をしてきていたのであれば、これらの成果は得られなかったことだろう。

遅いより速いほうがいい。
ただ、これだけの言葉で既成概念を壊してきたGoogleはやはりスゴい。それも、ネット検索というハード能力の要求が大きいジャンルで鍛え上げられてきた、Googleならではの感性なのではないだろうか。

あなたにおすすめ

仮想環境で『Ansible』を使ってサーバ構築... 最近、サーバ構築を実施する必要がありました。 まずは仮想環境を作り、サーバ構築を……と思ったのですが、私はインフラ周りの経験が浅く、色々困ったことが頻出してしまいました。 今回の記事では、私と同じような “サーバ構築ビギナー” ...
内線電話用の番号検索|Slack APPで作ってみた... ショーケース・ティービーではメール誤送信防止という観点から、社内連絡ではチャットツールを使用しています。 現在使用しているツールは「HipChat」。 <bitWave関連記事『情報漏えいしないための決定打!”Hip Chat”』>...
Amazon EC2|Red Hat Linux 7.3で“Muninインストール“や“パッケージ導... ナマステ~! 私はナラヤンです! 今回が初投稿になるのですが、実はこれまで何度か本bitWave上でも登場していました。 <bitWave関連記事『おもてなしの企業の社員が、ネパール人をおもてなししてみた!』> <bitWave関...
継続的インテグレーションツール『Jenkins』を触ってみた... こんにちは。M.Sです。 現在、『Jenkins』からSeleniumを実行するお題に取り組んでいます。 『Jenkins』ってなに? 身近な継続的インテグレーションとは 『Jenkins』はjavaで実装されたオープンソー...