最近の気になったニュース 2017/02/27
プロセッサ関係
AMDのRyzen 7 CPUのベンチマークが公表,出荷間近
西川善司の3DGE:「RyzenはCore i7よりこれだけ速い」――AMDが披露したベンチマーク結果をチェックする - 4Gamer.net
AMDの新世代CPUであるRyzen 7のベンチマークスコアが発表され話題になっています. Intelの同価格帯の製品と比べて大幅な消費電力と価格性能比の向上を達成しているということです.AMDはしばらくハイエンドの市場では姿が見えず,APU等によって別市場の戦いを挑んでいた印象でしたが(Playstation 4とか),ハイエンドのCPU+ディスクリートGPUという戦いの市場に戻ってきたようです.
Deep Learningの隆盛によって,Intel CPU + NVIDIA GPUという鉄板コンビにガチンコで喧嘩を仕掛けにいくということでしょうか.NVIDIAにはPowerアーキテクチャのIBMというパートナーもいるので,AMD単体でハイエンド市場でどれくらい戦えるのか注目です.AMDがしばらく席を外している間にNVIDIAはNVLINK等のエコシステムを着実に育てつつあるのでAMDが食い込めるでしょうか.
7月までにサーバー用のシリーズも発売されるということなので,もしかしたらその頃にはRyzen CPUを大規模に搭載したスパコンが登場して2017 NovのTop500に登場するのかもしれません.
HPC関係
スパコンのメモリ構成の将来
スパコンのメモリ構成について論じている2つの記事があったので興味深く読みました.
3D Memory Sparks New Thinking in HPC System Design
Hopping the flash stepping stones to DIMM future • The Register
前者The next platformの記事では,従来のDIMMメモリと3Dスタックのメモリの優劣とトレードオフについて論じています.伝統的なHPL(High Performance Linkpack)ベンチマークでは,コアあたり2GB程度のメモリがベストであるのに対して,HPCG(High Performance Conjuagte Gradient:共益勾配法)ベンチマークではコアあたり0.5GB程度が最適だとしています.このような違いにより,容量増加が容易であるDIMMメモリと,容量増加が難しいが要領に比例した高速なアクセスを提供できる3Dメモリの適・不敵が決まってきます.単純な優劣ではなく,アプリに応じたトレードオフが重要だということです.
一方,後者のThe Registerの記事では,NVM(Non-volatile memory:不揮発性メモリ)とDRAMの組み合わせや階層化によって,それぞれの長所を活かした最適化が可能であると論じています.新しい技術を使って構築されるSCM(Storage class memory)や,DIMMとNVRAMを組み合わせて実現されるNVDIMMなどが,大容量と高速アクセスを両立しアプリケーションを大幅にスピードアップできるとしています.またそのためには,OSを始めとするソフトェアレイヤの適応の必要不可欠です.
実際,3D stacked memoryはNVIDIA P100 GPUを始めとするアクセラレーターにも搭載されており,これらはホストのメインメモリ(DIMM)との間である種の階層的なメモリ構造を構成しているということもできます.
AI・機械学習関係
Tensorflow 1.0 リリース
Research Blog: Announcing TensorFlow 1.0
Googleがリリースしている機械学習フレームワークのTensorflowの1.0リリースがアナウンスされました.詳細は各所で書かれていますが,速度の向上・柔軟性の向上に加えて,APIの安定化が盛り込まれているのが大きいと思います.Deep learningの開発競争と性能の向上はこれからも続くのでしょうが,APIの安定化というのは1つの大きな節目であり,業界が新しいステージに進んでいくことの象徴のように思います.
Allreduce操作をカスタマイズしてDLを高速化
Propelling Deep Learning at Scale at Baidu AI Lab
BaiduのSillicon Valley AI Laboratoryで,OpenMPIのring allreduceという技術を使ってTensorflowにパッチを当てて高速化を行っているそうです. MPIでは,通信のパターンが抽象化されてAPIとなっているので,その実装には様々なパターンが有りえます.特にOpen MPIは拡張性が高い設計となっているので,内部のコンポーネントを取り替えることでカスタマイズが可能な設計になっています.
Allreduceというのは,全体で値を集約(reduce)したあと,さらに結果の値を全プロセスに配信するという操作です.これは機械学習系の実装ではよく出てくる話で,各プロセスが分散して学習した結果の行列を互いに送信しあって同期するために使われます.
具体的な中身としては,GPU上に存在するデータに対してAllreduceをする際に,まず各GPU内でreduceを行い,それをさらにノード内(CPUメモリ)でreduceし,最終的にそれらをネットワーク越しにallreducするという実装のようです.こうすると,GPUからCPUへのメモリコピーを省略できるので高速化が図れるということです.
その他
Google Online Security Blog: Announcing the first SHA1 collision
SHA-1のハッシュ衝突を実用的な時間で達成したとGoogleが発表しています.ハッシュ関数は一方向性関数と呼ばれ,任意の長さのデータを短いビット数へと変換する関数です.重要な特徴として「ハッシュ化された結果から元のデータを推測できない」および「同じハッシュ値を持つことなるデータを発見するのは実用上不可能」という性質が有ります.今回の発表では,SHA-1というハッシュ関数において,同じハッシュ値を持つデータを意図的に生成することができ,結果として同じハッシュ値を持つ異なる2つのPDFファイルを生成することに成功したそうです.
サイボウズ・ラボの光成さんが解説スライドを上げられています.
気になったHPC・AI関係のニュース 2017/02/20
HPC関係
Tokyo Tech's TSUBAME3.0 Will Be First HPE-SGI Super
一番のニュースは,東工大のTSUBAME3.0スパコンの受注者と詳細スペックが決まったというニュースでしょう.受注者はHPE(Hewlett Packard Enterprise)で,厳密には日本法人のSGI Japanとなっています.同じ松岡教授が指揮する産総研のABCIの先行モデルとなると思われます.
ハードウェアスペックとしては,14コアのBroadwell CPU ×2(計28コア) +NVIDIAのP100GPUが4機 + メモリはDDR4 256GB + ノードあたりのローカルストレージとしてSSDが2TBという超ファットノードのマシンで,Intel Omni Pathで接続されています.
全体では,倍精度演算性能12.5PFlops,NVIDIA P100 GPUを2160機となっています.
ノード構成としては,スペック的にはモンスターマシンであるものの,構成としては標準技術と既存技術の組み合わせです.冷却さえきちんとされれば安定した稼働が期待できそうです.
ポイントは,GPU同士のRDMA(Remote Direct Memory Access)がIntel Omni Pathで動くのかというところでしょうか.東大のOakleaf-PACSではOmni Pathが採用されていますがノードはXeon Phiで,ReedbushではP100 GPUが採用されていますがインターコネクトはInfinibandです.Omni Path + P100 GPUを組み合わせた大規模マシンは世界で初めてではないかと思います.
なお,ストレージはDDNです(いつもの)
現在と将来の OpenMP* API 仕様 | iSUS
OpenMP5.0の機能に関するまとめ.
Taskベースのプログラミングは,Intel TBBをはじめ,長らくライブラリとして提供されてきました.旧来のforループの並列化をベースとする機能では不十分な場面が多く,不規則な並列性が必要とされる場面ではタスクベースの並列化ライブラリは重宝します.
様々な機能がOpneMPに集約されていくのは良いことですね.おそらく,OpenACCとして定義されているアクセラレータ向けプログラミングも統合されていく流れになるでしょうから,そうなればOpenMPで様々な並列環境でのプログラミングが統一的に書けるようになるのかもしれません.
insideHPC Research Report Are FPGAs the answer to the “Compute Gap?” - insideHPC
InsideHPCによる,FPGAに関するWhite paper.読むためには 個人情報の送信が必要ですが.
6ページほどの文書で,長すぎず短すぎず,良い分量だと思います.メインとなる部分は「5 Myths About FPGAs」ということで,FPGAに関する誤解を解説するというスタイルで,残りの部分はIntelのFPGA(Arria 10)のスペック説明と宣伝となっています.
Intersect360 Offers Topside View of HPC Market | TOP500 Supercomputer Sites
HPCシステムの市場調査のまとめ.調査対象となったHPCシステムのベンダー別の受注割合がまとめられています.一位から順にDell EMC, HPE, Lenovo, SGIとなっています.本文にも書かれていますが,SGIはHPEの一部なので,これを合算するとHPEがダントツ一位という結果になりそうです.
インターコネクトはMellanoxのInfinibandが現状では多数を占めていますが,IntelのOmni Pathがこれからどの程度食い込んでくるでしょうか
なおストレージはDNN無双の模様
John Gustafson presents: Beyond Floating Point - Next Generation Computer Arithmetic - insideHPC
シンガポール国立大学のJohn Gustafson教授が,既存のIEEE754の浮動小数点に変わる新しい “posit” という演算フォーマットを提案しています.
まだ詳細を理解していないので中身については解説できないのですが,低精度でも十分な機械学習が隆盛を見せている今,浮動小数点についても考え直すいい機会なのかもしれません.
機械学習・AI関係
Chinese Firms Racing to the Front of the AI Revolution | TOP500 Supercomputer Sites
現在,人工知能技術(AI)を牽引しているのはGoogle, Facebook, Microsoftなどのアメリカ企業ですが,Baidu, Alibaba, Tencentなどの中国企業も猛烈にキャッチアップしているという記事です.
現在,AIはノウハウの蓄積+計算パワーの戦いとなっており,HPCシステムで膨大な計算能力を持つ中国が本腰を入れると脅威となると思われます.中国は,技術の方向性が定まったあとの力技による猛追には定評がありますので,日本は頑張りたいところです
HPC分野における中国の躍進については Rise of China, Real-World Benchmarks Top Supercomputing Agenda がよいまとめとなっています.
ChainerMN による分散深層学習の性能について | Preferred Research
Prefered Networksが,MPIを利用した分散版 Chainerについて発表しています. 128GPUまで,ほぼ線形にスケールしているということなので,これから構築されるであろう産総研ABCI等での活用も期待されますね.
担当者である秋葉氏による動画の解説もあります
Deep learningフレームワークとMPIの関係については Pushing MPI into the Deep Learning Training Stack によくまとめられています.
その他
なぜこれが差別なの? Cultural Appropriationとは? 日本人女性の格好で撮影したモデルが謝罪 - Togetterまとめ
白人の女優が着物を着て日本文化をテーマにした写真を撮影したところ,それが差別にあたるとなって問題となった事案です.普通の日本人にとって(私も含む)これは直感的には理解しがたいことが多いと思いますが,これはCultral appropriationと呼ばれる問題と,representation(whitewashing)と呼ばれる問題の2つの見方があるそうです.解説は私の手に余りますが,以下に挙げる記事およびshrioさんの解説が参考になりました.
当事者不在ではなく実際にアジア系モデル/俳優から非難の声が出てる。これは国籍ではなくエスニシティの問題で、エスニックグループとしてアジア系がunderrepresentedであるという文脈の上に起きた騒動なので、日本民族がマジョリティである社会では理解されにくいかも。 https://t.co/hcFTbjLUlt
— Kilo Kawai (@anohana) 2017年2月16日
X高校に進学する生徒の大半は街にあるA中出身だが山間の小さなB中出身者もいる。このたびX高校では各地域の暮らしを織り込んだ演劇を上演することになった。ところがB中の地域出身という設定の役にもA中出身者が配役される。観客も街の人が多く知り合いの多いA中出身者の方が受けるから。続)
— Kilo Kawai (@anohana) 2017年2月16日
毎年毎年ずっとそう。なるほど脚本ではB中の地域のことはよく調べてあるし、配役された生徒も地域を訪れるなどして地域の文化を尊重している。でも、B中出身者が自分の地域を語る機会は与えられない。ケースバイケースでどっちがどっちをやってもいいんだけど、ずっと固定化してるのはおかしいんじゃ
— Kilo Kawai (@anohana) 2017年2月16日
文化は人が作るものなのに、衣装やら建築やら文化の形は珍重されるけれどその文化を作っている当事者がまるで存在していないかのように扱われる、っていうのがunderrepresentationってことなんだと思う。
— Kilo Kawai (@anohana) 2017年2月16日
気になったHPC・AI関係のニュース 2017/02/12
最近忙しさにかまけて情報収集がおろそかだなあと思ったところ、インプットのためにはアウトプットをするのが良しと言われるので気になったニュースをまとめて記事にすることにしました。ブログもしばらく放置状態だったので一石二鳥で。
プロセッサ関係
【後藤弘茂のWeekly海外ニュース】NVIDIAのTegraを採用する任天堂の新ゲーム機「Nintendo Switch」 - PC Watch
各所で話題になっていますが、Nintendo SwitchがNVIDIA Tegra X1だというニュース。Deep Learning向けのGPUが調子いいですが、しばらくNVIDIAのウハウハ状態は続くのでしょうか。
後藤さんは、プロセス世代については16nm FinFETではないかと書かれていますが、確かに元のTegra X1だと20nmなのでさすがに古いのではないかという話。Snapdragon835は10nm世代突入ですし。
Intelなどの他社に先駆けて10nmプロセスで製造されるというSnapdraton835が発表されたというニュース。現時点でIntelのKabyLake世代が14nm+のプロセスで、Cannon Lake世代が2017年末に10nmで投入ということなので、だいぶ先を行っているようです。
HPC
Best Practice Guide - Knights Landing, January 2017 - PRACE Research Infrastructure (InsideHPC 経由)
Intel Xeon Phi(Knights Landing)のチューニング方法のまとめ
Putting ARM-Based Microservers Through The Paces
クラウドとHPC環境へ、ARMベースのプロセッサがメインストリームとして導入されるかどうかに関するまとめ
マイクロアーキテクチャーのトップダウン解析法を使用してアプリケーションをチューニングする | iSUS
ちゃんと書かれたチューニング系の記事は、実質上プロセッサの内部構造に関するドキュメントでもあるので勉強になります
Orchestrating HPC Engineering in the Cloud
ちょっとANSYSの提灯記事っぽいですが、Cloud環境でのHPCを採用する最大の障害は、実は技術ではなくライセンス体系だという点を指摘した記事。
プログラミング関係
Bartek's coding blog: C++ 17 Features
C++17の新機能のまとめ。