タグ

ブックマーク / tkng.org (2)

  • なぜcuDNNのConvolutionは高速なのか | 射撃しつつ前転

    cuDNNはNVIDIAが公開しているDeep Learning用のライブラリである。このライブラリを使うとCaffeやChainerなどのDeep Learning用のソフトウェアの速度が向上する。 この速度向上に寄与している最も大きな部分がConvolutionの高速化である。 個人的には、CPUでどこまで高速にConvolutionが実現できるのかに興味がある。記事は、その準備段階として、どういう高速化戦略がありえるのかを調べたものである。 ConvolutionとはConvolutionは、日語では畳み込みと呼ばれる操作である。畳み込み操作自体は何次元のデータ構造に対しても定義できるが、以下では、画像処理でよく使われる、二次元のConvolutionのみを考える。 何も考えずに普通にConvolutionを実装すると、以下の擬似コードのようになるだろう。ただし、簡単のため、境界

  • 最近の仮想化界隈を知る:VMWareからCoreOSまで | 射撃しつつ前転

    仮想化の分野はどんどんと新しいものが出てくる。全部を実際に試すことは出来なくても、筋が良さそうなものについては、どういうものなのかある程度把握しておきたい。最近はちょっと忙しくてあまり情報収集ができてなかったので、追いつこうと思ってちょっと調べてみた。 ハイパーバイザ型仮想化とコンテナ型仮想化 仮想マシンの歴史をたどると、メインフレームの方では随分と昔から使われている技術である、と出てくる。一方で、x86の世界ではそれほど歴史は長くなく、1999年にリリースされたVMwareがおそらく実用的な初の仮想マシン技術だろう。 VMWareはハイパーバイザ型仮想化と呼ばれる技術で、上に乗るOS(ゲストと呼ばれる)に対して仮想的なハードウェアを提供する。ハイパーバイザ型も、どのレイヤで仮想的なハードウェアを提供するかで更に細分化されるらしいが、よく知らないので、ここではそこまでは踏み入らない。ハイパ

  • 1