ROCmおじさんおおいにキレるの巻

自作自演と呼ばないで。 深夜@kz_lil_fox氏が検索で見つけた発言に垣間見られる技術的な誤解やら何やらをまとめました
0

きっかけはこんな投稿に噛み付いたところから

こぎつねまる@c103は未定 @kz_lil_fox

twitter.com/dcominottim/st… What makes you say "AMD is years behind"? If you means you said because "tensorflow-gpu cannot run on AMD gpu!", the time ammending the gap would never comes unless the assembly API on AMD becomes exactly the same as the NV's ptx…

2020-02-13 23:02:10
Danilo "18pF flip-flop" @dcominottim

@TooHTP @Underfox3 Meanwhile, the official tensorflow-gpu builds (Linux & Windows) and Conda packages are entirely CUDA-based and have been around for years. It isn't trolling when people say AMD is years behind NVIDIA in SW support, quite literally and unfortunately.

2020-02-12 07:54:48

ROCmおじさん、キレだすの巻

こぎつねまる@c103は未定 @kz_lil_fox

(こういう人たちの言う、years behind ってどこまでやれば良いんだろう…pipでインストールできる段階では不十分なの?

2020-02-13 22:47:51
こぎつねまる@c103は未定 @kz_lil_fox

tensorflow-gpuというPython packageにおいて、gpuのシンタックスシュガーが付いたものがnvidia ハードウェア+CUDA APIでコンパイルされてる以上、gpu向けのコードは完全にnv用の機械語としてコンパイルされているわけであってなぁ

2020-02-13 22:51:06
こぎつねまる@c103は未定 @kz_lil_fox

と言う事は、ここで言うyears behindが埋まる事なんて機械語単位か、あるいはアセンブラ単位の命令でnv ptxとaMD spir-vが互換とならない限り「一生来ない」事だろうに

2020-02-13 22:53:21
こぎつねまる@c103は未定 @kz_lil_fox

なんと言うか、先行を褒め後続を腐すにしてももう少し「フェア」にやりません?となる

2020-02-13 22:54:35
こぎつねまる@c103は未定 @kz_lil_fox

外国人ニキに「tensorflow-gpuがAMDで動かないのは、機械語アセンブラレベルのところでNV向けにコンパイルしているからであってAMDのせいじゃねぇ、それをAMDが劣ってる理由にされても困る」と言っても全然通じないで困る…

2020-02-13 23:34:07
こぎつねまる@c103は未定 @kz_lil_fox

なんで「tensorflow-gpuインストールしてもlinuxのAMDgpuで動かんの」と言われても、そりゃそのパッケージが提供してるのはPythonのAPIだけでは無くてstreamexecuterやXLAといったSIMD命令実行環境輪やJITコンパイラも提供しているが、それは既に指定されたCUDA APK向けの機械語へコンパイル済みで…

2020-02-13 23:53:15
こぎつねまる@c103は未定 @kz_lil_fox

「オフィシャルのPIPYパッケージで走らないから劣ってる」論理が通じるなら、CSBのみで提供しているMKLやpower向けも、更には当該TFが実行できないCUDAのバージョンまでも劣っているという理屈になるんだけど、わかっているのだろうか?

2020-02-13 23:56:01
こぎつねまる@c103は未定 @kz_lil_fox

つうか、tensorflowのstreamexecuter/gpuにしろXLA/gpuにしろ基本的にgpuの抽象クラスからは一種類を排他にしか扱えないから、gpuのデバイスメーカーおよびドライバのAPIについては決め打ちしか出来ない仕様なところな訳で、それをAMDが劣っている理由にするか?

2020-02-14 00:14:45
こぎつねまる@c103は未定 @kz_lil_fox

何だろう、PYPIでのtensorflow-gpuがCUDAのマイナーバージョンすら吸収できないの「AMDのGPUでtensorflow-gpuが動かないからAMDはクソだ、遅れてる!」と言われてもお前何言ってるんだよ、という気持ちとともに怒りが鬼なるよね?

2020-02-14 00:31:49

x吸収できないの→○吸収できないのに、

こぎつねまる@c103は未定 @kz_lil_fox

それは tensorflowのGPUアブストラクションか PYPIの仕様が クソなんだろ?

2020-02-14 00:32:48
こぎつねまる@c103は未定 @kz_lil_fox

「何に怒っているの?」とコンピュータ分からない家族に聞かれたら「対応電圧、電流が同じ家電でコンセントの規格が違う点で『劣ってる』というもの」と答えた

2020-02-14 08:08:51
こぎつねまる@c103は未定 @kz_lil_fox

術的に正しい事で批判するならそりゃ良いけどさ。「疎行列遅いからRNNとかCUDAよりおせぇ」とか

2020-02-14 08:11:40
こぎつねまる@c103は未定 @kz_lil_fox

(ユーザーから見えているAPIは同じでも、コンピュータ側から見えてるInstruction Setは別だし、それをコンパイル後スイッチ出来ないのなんてAMD側の咎でも何でも無いじゃん…

2020-02-14 08:55:23
こぎつねまる@c103は未定 @kz_lil_fox

Cudaがデファクトだから、それに対応できないAMDは遅れてる」っていうなら、Cudaがデファクトになって更に差を開けられたくないからこそCuda 8.0方言の言語を作ってほぼ同等の開発環境を提供しようとしている訳だし、Cuda向けにコンパイルされたものが動かないのは命令セットの仕様上当然じゃん…

2020-02-14 08:57:44
こぎつねまる@c103は未定 @kz_lil_fox

「なんでCPUだとAMDはIntel互換(実態は64ビットに関しては逆)なのにGPUでそれができないんだ」と言われてもCudaの出力する命令セットは基本PTXだしな・・・ライセンスの問題で、それにAMD側が合わせるなんて出来るんかい?

2020-02-14 08:59:59
こぎつねまる@c103は未定 @kz_lil_fox

(AMDもTensorflow-gpuでアクセスできるようにすることを誰も妨げてない、とは言うけれどStreamexecuter/gpuにしろXLA/gpuにしろアブストラクションの先のデバイスインターフェイスについて排他なのはGoogle側の仕様であり、それに対して破壊的な改修をする事はGoogleのTFチームが拒否した記憶が

2020-02-14 09:11:15
こぎつねまる@c103は未定 @kz_lil_fox

(それを変えるって、つまりはまるまる一つ新しいフレームワークを作りなおすって事になる訳だけれど、それって誰も得しないよね?

2020-02-14 09:16:58
こぎつねまる@c103は未定 @kz_lil_fox

(CudaがデファクトになったからAMDは遅れてる、まで言うのだったらそれは噴飯ものっていうかそれは「生まれた時からNV様の陰に生きる運命なんだ」的なアレよね

2020-02-14 09:19:45
こぎつねまる@c103は未定 @kz_lil_fox

(ついでに言うとInternallyにはHIPに既に完全に対応しているわけで。Tensorflow-gpuのプレビルドパッケージの仕様上、StreamExecuterやXLAが特定のCudaバージョンでコンパイルされている故に使えないだけで

2020-02-14 09:51:04
こぎつねまる@c103は未定 @kz_lil_fox

なんと言うか ・Tensorflow-GPUでAMDが使えないのはAMDの後進性だ!>GPUデバイス抽象から排他で一つのGPUドライババージョンしか使えないTFの仕様です ・AMDのソースコードってTFに入ってないじゃん>入ってます。PyPIのはCudaでビルドしてるからアクセスできないだけで ・Condaにない!>Pip使え

2020-02-14 10:40:53