1 名前: ◆MERIKEN4.k [2012/09/25(火) 18:24:38.09 ID:BDWiD/680] こちらはMERIKEN's Tripcode Finderの本スレです。動作報告・質問・要望等は こちらでどうぞ。 MERIKEN's Tripcode Finder(旧CUDA SHA-1 Tripper MERIKEN's Branch)は 2012年9月現在で最速の12桁トリップ検索プログラムです(最高速の記録は 1689.88M tripcodes/s)。CPUのみでも検索できますが、NVIDIA GeForce シリーズのビデオカードを使用すれば非常に高速に検索を行うことが できます。特徴は以下の通りです。 ・ビデオカードのGPUによる高速検索(CPU検索にも対応)。 ・GUIによる簡単な操作(コマンドラインからの使用も可能)。 ・正規表現によるターゲットの指定。 ・漢字等のShift-JIS文字を含むキーの探索。 ・ヒット率、ヒットまでの平均時間等のさまざまな情報の表示。 ・ターゲットの数の制限の撤廃。 ・10桁トリップ検索への暫定的対応。 ・検索速度の実行時の最適化。 ・GPLv3で公開されたソースコード。 ■入手先 www.meriken2ch.com/programming/merikens-tripcode-finder ■前スレ anago.2ch.net/test/read.cgi/software/1311428038/
669 名前:前スレ927 ◆JouJaku.HzIz mailto:sage [2012/11/16(金) 23:39:50.31 ID:SdQXCd/P0] 電源が届くのを待ちきれなくて、無理矢理繋げて実行していました。 電力不足でこんな挙動をするとは初体験で全然知らず。お恥ずかしい限りです。 素直に電源届くまで待っています。
670 名前: ◆MERIKEN4.k mailto:sage [2012/11/17(土) 09:52:44.80 ID:Kz7friKn0] >>669 そりゃそこにカードがあれば試したくなりますよね。 その気持、わかりますw 電源が届いたらまたぜひ報告して下さい。
671 名前: ◆MERIKEN4.k mailto:sage [2012/11/17(土) 10:07:54.25 ID:Kz7friKn0] OpenCLの10桁検索の出力が腐っていた問題ですが、カーネルをすこしづつ削って 原因を探ったところ、結果を書き込む__globalの配列へのアクセスの前後に barrier()を入れてやると問題が出なくなることが分かりました。 Bitslice DES用の一時変数を__privateに置いても直らなかったし、 CUDA版やOpenCLの12桁検索では全く問題がなかった部分なので、 AMDのOpenCLの実装のバグの可能性が非常に高いです。 AMDの実装は性能は出るのにいちいち造りが甘くて非常にもったいない 感じがします。ここらへんもCUDAのほうが任期がある理由なんでしょうねえ。
672 名前: ◆MERIKEN4.k mailto:sage [2012/11/17(土) 12:33:38.78 ID:Kz7friKn0] この件でコードをロールバックした時に気がついたのですが、 Bitslice DESの一時変数を__private空間においても割と速度が出ることが わかりました。こっちのほうが__localよりもベクトル化しやすいので、 このまま__localを使わずに最適化をすすめることにします。 Bitslice DESの深さを32bitから128bitにして速度も4倍といきたい ところですが…
673 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/11/17(土) 12:53:15.66 ID:CDs2gwHh0] >>672 >ベクトル化 よく知らないのですが、GPUってベクトル演算なんですか……? ベクトル化の意味は知っているのですが、なぜか「昔のスパコン」ってイメージが……w
674 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/11/17(土) 17:05:57.82 ID:RbPdKj5Y0] GPUはベクトル演算の極地だし、今のスパコンはほぼ全てベクトル演算ですが
675 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/11/17(土) 17:08:42.00 ID:lv9DVzeD0] もの自体がベクタプロセッサの集合体
676 名前: ◆MERIKEN4.k mailto:sage [2012/11/18(日) 01:33:23.65 ID:7lmxdB8G0] >>673 そこがGPGPUの一番美味しいところですw 性能を引き出すのはなかなか難しいですけどね〜
677 名前: ◆MERIKEN4.k mailto:sage [2012/11/18(日) 01:59:41.80 ID:7lmxdB8G0] あの後色々調べてみたんですけど、単純にDES_Vectorをuint2やuint4で置き換えて やれば性能が出るというわけでもないようで、もうちょっと調べる必要が あるみたいです。 あと、localなメモリに書き込んだ後は必ずbarrier()を呼び出さないと、 ちゃんとメモリ操作の結果が反映されないようです。おかしいなと思って OpenCLの仕様書を見ると確かにこう書いてあります。 > The barrier function also queues a memory fence (reads and writes) to > ensure correct ordering of memory operations to local or global memory. www.khronos.org/registry/cl/sdk/1.1/docs/man/xhtml/barrier.html CUDAの場合は動機が必要なところで__syncthreads()を呼び出してやれば 後はなにも考えずに共有メモリとグローバルメモリに読み書きできたのですが、 どうも勝手が違うようです。
678 名前: ◆MERIKEN4.k mailto:sage [2012/11/18(日) 12:44:30.93 ID:7lmxdB8G0] OpenCLでの10桁検索の話の続きです。 >>545 の案を実際に実装してメモリの使用量を半分に抑えることで、 速度を50%ほど向上させることができました。キーを動的に生成することに よるペナルティが割と大きく2倍とはいきませんでしたが、 まあそれでもかなりの進歩です。Kernel Occupancyはこんな感じです。 www.meriken2ch.com/files/2012-11-17-AMD-APP-profiler.jpg ローカルメモリを使うと出力が化けまくるので、とりあえず Bitslice DES用の一時変数はすべてレジスタ上においています。 このままレジスタの数を削ってOccupancyを上げてもいいし、 またローカルメモリに戻してみてもいいし、これでようやく先がすこし 見えてきた感じです。
679 名前: ◆MERIKEN4.k mailto:sage [2012/11/18(日) 13:50:23.81 ID:7lmxdB8G0] 一応ローカルメモリに戻して速度を測ってみたのですが、 思ったほど速度は出ませんでした。というわけで 一時変数はこのまま__private空間においたまま 最適化をすすめることにします。 カーネルをなるべく簡単にして、キーの生成の準備をすべて CPU側で行うことにします。 またレジスタの数を削る日々がはじまるお…
680 名前: ◆MERIKEN4.k mailto:sage [2012/11/18(日) 18:56:32.90 ID:7lmxdB8G0] あの後ちょこちょことカーネルをいじっていたんですけど、 適当なところにbarrier()を入れるとレジスタ数が減ったり スピードが上がったりと不思議なことの連続でした。 色々実験してみるもんですね。こんなことは流石にマニュアルには 書いてあるわけないしw
681 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/11/18(日) 19:05:57.54 ID:hHNMwY9r0] 奇妙すぎる仕様だ……
682 名前: ◆MERIKEN4.k mailto:sage [2012/11/18(日) 19:11:47.92 ID:7lmxdB8G0] これは4日前に公開されたばかりのRadeon用のアセンブラです。 GCN ISA Assembler devgurus.amd.com/message/1285111 HetPas realhet.wordpress.com/2012/11/14/hello-world/ GCNの命令セットについてなかなか面白いことが書いてありました。 こういうので最適化したらものすごい速度が出るんでしょうねえ。 JtRのAlexsander氏は動的にコードを生成しろなんて言ってたけど…
683 名前: ◆MERIKEN4.k mailto:sage [2012/11/19(月) 16:30:19.77 ID:FRx7NJvu0] >>681 まったく謎だらけですw カーネルアナライザを使えばもうちょっと詳しく 分かるんでしょうけど、goto文を使っているとエラーが出て動かないんですよね…
684 名前: ◆MERIKEN4.k mailto:sage [2012/11/19(月) 16:36:30.60 ID:FRx7NJvu0] 気分転換で、前から欲しかったトリップの自動保存と自動検索実行の機能を つけてみました。ブレーカーが落ちるたびにうんざりしながら検索君1号を 立ち上げなおしていたのですが、これで再起動もボタンを押すだけで済んで 検索結果が失われることもなくなりました。この機能は次の開発版から 利用できるようになる予定です。
685 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/11/19(月) 19:13:07.00 ID:rYPhWgPq0] >>684 そんなにブレーカーが落ちる環境だったとは…… (開発以外)休んでも、いいのよ?
686 名前:名無しさん@お腹いっぱい。 [2012/11/20(火) 07:59:44.51 ID:8BgQYrDr0] 海を越えると電気も日本みたいに高品質じゃないんだよ
687 名前: ◆MERIKEN4.k mailto:sage [2012/11/20(火) 14:37:37.34 ID:TS/gXHXx0] >>685-686 グラボ4枚で検索するようになってから急に落ちるようになりました。 ブレーカーがどうも古いみたいで、大家さんに言ったんですけど ちっとも変えてくれません。まあでも消費電力に常に気を付けるように したら大分ましになりました。
688 名前: ◆MERIKEN4.k mailto:sage [2012/11/20(火) 14:48:46.83 ID:TS/gXHXx0] レジスタ数を107から90まで頑張って減らしました。 目標の84まであともうちょっとなんですけど、 コンパイラの挙動が全く予想できないのでなかなか難しいです。
689 名前: ◆MERIKEN4.k mailto:sage [2012/11/21(水) 12:12:44.49 ID:eiBTExc50] カーネルアナライザが動かなくてカーネルのILとISAが見られなかったん ですが、次のページを参考にしてようやく見れるようになりました。 カーネルをビルドするときにオプションで"-save-temps=[prefix]"と していしてやればビルド時の一時ファイルが保存されます。 Looking for specific details of GPU_DUMP_DEVICE_KERNEL devgurus.amd.com/thread/159168 Kernelanalyzer refuses to compile anything devgurus.amd.com/thread/159924 最近のドライバではカーネルアナライザは動かないそうで… AMDにはもうちょっと頑張ってもらいたいものです。
690 名前: ◆MERIKEN4.k mailto:sage [2012/11/23(金) 14:34:10.31 ID:ctiDd+QK0] あの後レジスタ数を減らすためにいろいろと試してみたのですが、 どうやっても90から更に減らすことはできませんでした。 どうも本気でレジスタ数の割付を最適化するためには GCNのコードを直接書く以外ないようです。 仕方が無いので、割と時間がかかっているカーネルへの入出力の処理を 効率よく行うようにするための作業にとりかかりました。 とりあえずオーバーヘッドの大きいclEnqueueWriteBufferを1つにまとめたら、 なぜか未だに完全に消えてなかった出力が化けるバグが綺麗さっぱり なくなりました。やれやれです。
691 名前: ◆MERIKEN4.k mailto:sage [2012/11/23(金) 15:32:19.14 ID:ctiDd+QK0] さっきjohn-devの11月のポストを読んでたんですけど、 何か問題が起きるとすぐにAMDのOpenCLドライバのバグが疑われてて 笑ってしまいましたw これは相当評判が悪いみたいですね… > > All my accusations about driver bugs were... well they were based > > on statistics, what can I say? :-) > > > > magnum > We saw some craziness that justify our accusations. www.openwall.com/lists/john-dev/2012/11/22/5
692 名前: ◆MERIKEN4.k mailto:sage [2012/11/23(金) 15:44:36.45 ID:ctiDd+QK0] なんにせよドライバのバグを華麗に避けつつOpenCLの10桁検索を使い物に するには相当時間がかかりそうなので、とりあえず12桁検索のほうを 先に仕上げてしまうことにしました。今週末に次の開発版を公開する予定です。
693 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/11/23(金) 15:52:23.16 ID:21daIx+z0] >>691 ドライバの完成度の問題ですか、厳しいですねえ・・・
694 名前:名無しさん@お腹いっぱい。 [2012/11/23(金) 19:01:10.75 ID:ixPLPIhe0] 鳥屋は凄腕だな。
695 名前: ◆MERIKEN4.k mailto:sage [2012/11/23(金) 20:06:39.28 ID:ctiDd+QK0] 鳥屋氏が凄腕なのは間違い無いですね。mtyのGPU版の速度は異常です。 ただCAL ILで書かれたmtyと同じ速度をOpenCLで出すのも無理な気がしますけどね〜 JtRの20M c/sは論外にしても、Hashcatですら7970で79M c/sしか出せていない ですからねえ。もうちょっとJtRのSayantan氏に頑張ってもらいたいものですけど、 メーリングリストのやり取りを見ている限りではとても期待できそうにありませんorz
696 名前: ◆MERIKEN4.k mailto:sage [2012/11/23(金) 21:53:30.00 ID:ctiDd+QK0] なにか10桁検索の参考にならないかと思ってJtRのソースを眺めていたら、 全然関係ない12桁検索の高速化のネタを見つけましたw といってもハッシュ作成の際にbitselect()とrotate()を使うというだけの 話なんですけど、効果は抜群でOCした7970単体で1600M TPSを軽く超える 速度が出ています。いまだにこんなおいしいネタが転がっていたとは驚きです。
697 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/11/23(金) 23:24:15.72 ID:6zLs77TA0] >>695-696 ということは12桁最高記録が300M/s以上増えることに!? ところでmtyGPU版の10桁最高記録ってどれほどなのでしょう? 自分で(2chソースを)ググって分かったのは237M/s(1枚で)、枚数差しても〜750M/sぐらいだったのですが……
698 名前:ののたん ◆KiwamonoL. mailto:sage [2012/11/23(金) 23:33:28.75 ID:34hnWziW0 BE:276537427-DIA(289888)] >>697 スレチだな。w こっちいけ。 yy43.60.kg/test/read.cgi/tripageruo/1274911652/
699 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/11/23(金) 23:40:53.47 ID:6zLs77TA0] >>698 後半荒らされ放題じゃないですか………‥ なるほど、少なくとも>>79 で714M/sという記録が出ていたんですね。失礼しました
700 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/11/23(金) 23:46:32.74 ID:NBSrQskj0] 最大公約数的なプログラミングじゃなくて、自分の持ってるカードに絞ってゴリゴリ書いていけばいいんじゃないの? その方が速度も出ると思うんだけど
701 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/11/24(土) 01:55:09.02 ID:gl+pZhPfP] MERIKENさんってTOEIC満点とれる超人だったんですね・・・
702 名前: ◆MERIKEN4.k mailto:sage [2012/11/24(土) 05:00:21.29 ID:Npt3JpjG0] >>697 今でも3.5G TPSあたりなら堅いでしょう。いろいろ弾を仕込んでいる最中なので、 次に記録を狙うときには目標は4.5〜5G TPSあたりになると思います。
703 名前: ◆MERIKEN4.k mailto:sage [2012/11/24(土) 05:02:22.68 ID:Npt3JpjG0] >>700 最大公約数的なプログラミングはとっくの昔に諦めて7970にターゲットを絞って ますけど、それでもなかなか難しいです。
704 名前: ◆MERIKEN4.k mailto:sage [2012/11/24(土) 05:04:48.04 ID:Npt3JpjG0] >>701 私は大学からアメリカなのであれはいろんな意味で「おまけ」なのですw
705 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/11/24(土) 07:00:28.07 ID:d1lnl00J0] 1台のPCに積載できるGPUの量には限りがありますし、 そのうちサーバプログラム用意して検索条件の配布、検索結果の集計みたいな疎結合クラスタになりますん?
706 名前: ◆MERIKEN4.k mailto:sage [2012/11/24(土) 08:25:58.55 ID:Npt3JpjG0] >>705 そのうちそうなるでしょうねえ。スタンドアロンでの性能がちゃんと出るようになって からということになるので相当先の話だと思いますけど…
707 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/11/24(土) 10:09:34.84 ID:E4ne9Ljb0] >>705 トリップ検索クラスタ(物理)か…… GPUが絡まないと有り難みが薄いですねw
708 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/11/24(土) 11:01:21.01 ID:NFbcJaLE0] トリップ検索p2pネットワークか‥胸熱
709 名前:名無しさん@お腹いっぱい。 [2012/11/24(土) 19:19:01.23 ID:TYsqoQfh0] >>698 スレチと、言ってるののたんに (はぁはぁ
710 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/11/24(土) 19:43:27.54 ID:d1lnl00J0] >>708 個人でクラスタするのは有りだけど、 参加フリーでみんなの検索条件を合算するようになると生成されたトリップの判定にパワー食っちゃって……
711 名前: ◆MERIKEN4.k mailto:sage [2012/11/25(日) 02:30:46.54 ID:tDxdpeED0 BE:3591054296-2BP(12)] サーバーから検索条件をダウンロードしてみんなで12連とかのレアトリップを 探すというのも面白いかもしれませんねw
712 名前: ◆MERIKEN4.k mailto:sage [2012/11/25(日) 02:38:56.68 ID:tDxdpeED0] 10桁検索のほうはAlexander氏の言っていた、動的にカーネルを書き換えて DESのexpansion functionをソースに埋め込むという方法で以前に比べると 大分速くなりました。が、それと同時にドライバのバグによる出力が化ける問題が 再発生した模様。まったく地雷原を歩いているようです。
713 名前: ◆MERIKEN4.k mailto:sage [2012/11/25(日) 09:08:59.10 ID:tDxdpeED0] 出力が化ける問題はなんとか解決できました。いや〜、まいったまいった。 というわけで実行時のカーネルの書き換えでようやくHashcatとほぼ同じ速度が 出るようになりました。Tripcode FinderのCUDA版の10桁検索はHashcatよりも ちょっと速いぐらいなので、もうそろそろ限界のような気もしないでも ないです。あとはGCNのコードを手書きしてS-Boxを最適化して レジスタ数を削るぐらいしか思いつきません。とりあえず10桁検索は しばらく置いておいて、次の開発版を用意することにします。
714 名前: ◆MERIKEN4.k mailto:sage [2012/11/25(日) 22:50:54.20 ID:tDxdpeED0] 2週間ぶりの開発版です。 MERIKEN's Tripcode Finder 0.07 Alpha 7 www.meriken2ch.com/programming/merikens-tripcode-finder Alpha 6からの変更点は以下になります。 ・OpenGLの12桁トリップ検索の高速化。 ・検索スレッドと検索プロセスの数を指定するオプションの追加。 ・検索の自動実行と検索結果の自動保存を行うオプションの追加。 ・様々なバグの修正。 検索スレッドと検索プロセスの数を増やすことによって、 複数のGPUを使用する場合のGPUの使用率を増やすことができます。 おいしいです(^q^)
715 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/11/25(日) 23:37:10.26 ID:wZsqacQO0] おつおつ 回してみるべ
716 名前:482 mailto:sage [2012/11/25(日) 23:54:26.46 ID:wZsqacQO0] この構成であるふぁ7 www.dotup.org/uploda/www.dotup.org3665284.png
717 名前: ◆MERIKEN4.k mailto:sage [2012/11/25(日) 23:57:46.50 ID:tDxdpeED0] Alpha 7用の新しい報告用のテンプレです。 【GPU】 【CPU】 【OS】 【バージョン】MERIKEN's Tripcode Finder 0.07 Alpha 7 【トリップの種類】12桁・10桁 【1SMあたりのブロックの数(CUDA)】 【1CUあたりのワークアイテムの数(OpenCL)】 【1WGあたりのワークアイテムの数(OpenCL)】 【1GPUあたりの検索プロセスの数(OpenCL)】 【1検索プロセスあたりの検索スレッドの数(OpenCL)】 【その他のオプション】 【Display Driver】 【10分間の平均速度】 tripcodes/s 【GPUの平均速度】 tripcodes/s 【CPUの平均速度】 tripcodes/s 【GPUの使用率】 【GPUの温度】 【その他】
718 名前: ◆MERIKEN4.k mailto:sage [2012/11/25(日) 23:58:37.50 ID:tDxdpeED0] >>715 ぜひ色々試してみてくださいw
719 名前: ◆MERIKEN4.k mailto:sage [2012/11/26(月) 00:02:11.37 ID:ICZhOGh80] >>716 これは1枚ですか? かなり出てますね〜
720 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/11/26(月) 00:07:18.79 ID:SipgVuQ10] 書き忘れー 解凍したまんまで GPUの温度は室温20度で41度まで上がった、負荷は100% 水冷だしこんなもんだね、ゲームだと36度くらいしか上がんないからいかにGPUが仕事してるかわかるw
721 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/11/26(月) 00:08:15.66 ID:SipgVuQ10] >>719 ですよー、リファの7970
722 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/11/26(月) 00:12:39.54 ID:AQz+o+st0] 唐突だけどコマンドラインオプションの私的まとめ(☆はデフォルトでは自動設定される項目): --redirection ? -f [inputfile] 入力ファイル名 -r [inputfile] 入力ファイル名(正規表現) -o [outputfile] 出力ファイル名 -l [length] 検索するトリップ長(12 or 10) -g 検索にGPUを使用 (デフォルト) -d [device] CUDAデバイス番号(0〜) (デフォルトは全て使用) -x [block/SM] ブロック/SM(CUDA) ☆ -y [workgroup] ワークグループ/CU(OpenCL) ☆ -z [workitem] ワークアイテム/WG(OpenCL) ☆ ※workgroup mod workitem=0、workitem mod 8=0とすること -c 検索にCPUを使用(-gと併用可) -t [threads] CPUにおける検索スレッドの数 ☆ -a [threads] 1つのAMDのGPUに対する検索スレッドの数(OpenCL) ☆(〜0.07Alpha6) 1検索プロセスあたりの検索スレッドの数(OpenCL) ☆(0.07Alpha7〜) -b [processes] 1GPUあたりの検索プロセスの数(0.07Alpha7〜) -m MutexForMERIKENsTripcodeFinder-4648 GUI版とCUI版が通信するときに使うおまじない(〜0.07Alpha6) -m MutexForMER GUI版とCUI版が通信するときに使うおまじない(0.07Alpha7〜) -i 2ちゃんねるで直接使用できないトリップを16進形式で出力 -w 検索スピードの急激な低下を警告
723 名前: ◆MERIKEN4.k mailto:sage [2012/11/26(月) 00:18:40.01 ID:ICZhOGh80] >>722 あ、-yは「ワークグループ」じゃなくて「ワークアイテム」です。 最初に書いたときに間違えちゃったんですよね〜
724 名前: ◆MERIKEN4.k mailto:sage [2012/11/26(月) 00:22:36.54 ID:ICZhOGh80] >>721 う〜ん、水冷は素晴らしいですね。空冷での温度を見慣れていると 別世界のようですw
725 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/11/26(月) 00:34:50.17 ID:AQz+o+st0] >>723 つまりこうですね、分かります。 >-y [workitem1]ワークグループ/CU(OpenCL)(デフォルトは自動設定) >-z [workitem2]ワークアイテム/WG(OpenCL)(デフォルトは自動設定) >※workitem1 mod workitem2=0、workitem2 mod 8=0とすること ところで--redirectionって何をリダイレクトしているんですか?
726 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/11/26(月) 00:37:16.39 ID:AQz+o+st0] 俺おっちょこちょいの素質あるのかな…… >-y [workitem1]ワークアイテム/CU(OpenCL)(デフォルトは自動設定) >-z [workitem2]ワークアイテム/WG(OpenCL)(デフォルトは自動設定) >※workitem1 mod workitem2=0、workitem2 mod 8=0とすること 次のVerからはREADMEに訂正が必要なようですね……>MERIKENさん
727 名前: ◆MERIKEN4.k mailto:sage [2012/11/26(月) 00:43:33.42 ID:ICZhOGh80] >>725-726 リダイレクトしているのは標準出力です。 訂正はもう入ってますよ。
728 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/11/26(月) 00:43:54.12 ID:SipgVuQ10] 【GPU】Xeon E5-2687W×2 【CPU】HD6990×2 【OS】Windows8 Pro 【バージョン】MERIKEN's Tripcode Finder 0.07 Alpha 7 【トリップの種類】12桁 【1SMあたりのブロックの数(CUDA)】- 【1CUあたりのワークアイテムの数(OpenCL)】解凍時のまま 【1WGあたりのワークアイテムの数(OpenCL)】解凍時のまま 【1GPUあたりの検索プロセスの数(OpenCL)】解凍時のまま 【1検索プロセスあたりの検索スレッドの数(OpenCL)】解凍時のまま 【その他のオプション】- 【Display Driver】Catalyst12.11β 【5分間の平均速度】 4816.85tripcodes/s 【GPUの平均速度】 4711.99tripcodes/s 【CPUの平均速度】 104.86tripcodes/s 【GPUの使用率】100% 【GPUの温度】一番高いコアで46℃ 【その他】GPUはTDP450Wモード定格 www.dotup.org/uploda/www.dotup.org3665573.png これはもしやメインも仕事してくれるのではと思ったら案の定 時間ないんでどちらも5分でスマヌ
729 名前: ◆MERIKEN4.k mailto:sage [2012/11/26(月) 01:03:17.64 ID:ICZhOGh80] >>728 これは最高速の記録ですね。素晴らしいです。 私も次に記録を狙うときにはもうちょっと弾を揃えないと…
730 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/11/26(月) 01:12:41.03 ID:AQz+o+st0] >>728 脳内での 最 速 記 録 が 塗 り 替 え ら れ た 瞬間であった 期待できないけどノートで回してくるー
731 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/11/26(月) 01:20:20.30 ID:SipgVuQ10] 因みにこれで1160W前後の消費電力
732 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/11/26(月) 01:30:34.82 ID:Scm6xI9q0] >>569 です。Alpha7公開お疲れ様です。 【GPU】SAPPHIRE VAPOR-X HD5770 1G (OC: GPU 960MHz MEM 1265MHz) 【CPU】Intel Core i7-3770(無印) 【OS】Microsoft Windows 7 64bit SP1 【バージョン】MERIKEN's Tripcode Finder 0.07 Alpha 7 【トリップの種類】12桁 【1CUあたりのワークアイテムの数(OpenCL)】3200 【1WGあたりのワークアイテムの数(OpenCL)】64 【1GPUあたりの検索プロセスの数(OpenCL)】1 【その他のオプション】 【Display Driver】Catalyst 12.10 【10分間の平均速度】586.05M tripcodes/s 【GPUの平均速度】550.44M tripcodes/s 【CPUの平均速度】35.62M tripcodes/s 【GPU使用率】99% 【GPUの温度】72℃ (室温22℃) 【その他】テスト時間10分08秒、7完1タゲ
733 名前: ◆MERIKEN4.k mailto:sage [2012/11/26(月) 01:30:58.70 ID:ICZhOGh80] >>731 450W x 2 + αですか。こりゃすごいw
734 名前: ◆MERIKEN4.k mailto:sage [2012/11/26(月) 01:34:21.82 ID:ICZhOGh80] >>732 5770でもかなり速度が出てますね。 今回はかなり内部をいじったので、ちゃんと動いているようでほっとしました。
735 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/11/26(月) 02:46:46.01 ID:qf13XQqh0] 【GPU】HD7970 CFX 2GPUs @1150MHz 【CPU】FX-8350 @5GHz 【OS】Windows7 64bit 【バージョン】MERIKEN's Tripcode Finder 0.07 Alpha 7 【トリップの種類】12桁 【1SMあたりのブロックの数(CUDA)】 【1CUあたりのワークアイテムの数(OpenCL)】960 【1WGあたりのワークアイテムの数(OpenCL)】64 【1GPUあたりの検索プロセスの数(OpenCL)】default 【1検索プロセスあたりの検索スレッドの数(OpenCL)】default 【その他のオプション】-g -c -t 6 【Display Driver】Catalyst12.11 beta6 【10分間の平均速度】5277.77 tripcodes/s 【GPUの平均速度】5243.39 tripcodes/s 【CPUの平均速度】34.39 tripcodes/s 【GPUの使用率】99% 【GPUの温度】76℃ 【その他】7完1タゲ 効率が上がったためか-t 6で回したら強制シャットダウン、恐らく冷却不足か電源容量不足 とりま、ぬるい設定で解凍したまま ※今までは検索始めるとマウスカーソルがカクカクになり、USB音源を見失っていましたが、そういった現象はなくなりました www.rupan.net/uploader/download/1353865513.png
736 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/11/26(月) 02:47:44.61 ID:qf13XQqh0] あ、-t 4 の間違いです
737 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/11/26(月) 03:26:15.30 ID:AQz+o+st0] ノーパソから計測実験。デスクトップでグラボぶん回すのと比べると雑魚レベルだが許してくれ。 【GPU】NVIDIA GeForce 610M(、Intel HD Graphics 4000) 【CPU】Intel Core i5-3210M 【OS】Windows Vista Home Ultimate SP1 64bit 【その他のオプション】-g -c -l 10か-g -c -l 12での計測(速度が安定した時点で記録) 【Display Driver】見方を教えて下さい…… ↑の条件で、ソフトのVerと桁数を変更しながら計算するとこうなった↓ 0.07Alpha6 0.07Alpha6 0.07Alpha7 0.07Alpha7 10桁 12桁 10桁 12桁 ---------------------------------------------- 使用不可 160 使用不可 128 ←blocks/SM 使用不可 64 使用不可 使用不可 ←items/CU 使用不可 32 使用不可 使用不可 ←items/WG 4 2 3 3 ←CPU演算スレッド数 使用不可 48.9M/s 3.54M/s 48.96M/s ←速度(CUDA) 使用不可 4.9M/s 使用不可 使用不可 ←速度(OpenCL) 使用不可 9.66M/s 4.03M/s 10.91M/s ←速度(CPU) 5.27/s 63.43M/s 7.57M/s 59.87M/s ←合計速度 ---------------------------------------------- 確かに改良は効いているが、な ぜ ア ホ の 子 を 外 し た し
738 名前: ◆MERIKEN4.k mailto:sage [2012/11/26(月) 09:08:45.23 ID:ICZhOGh80] >>735 これはすごい数字ですねえ。いくらなんでも速すぎだろうと思って Catalyst 12.11 Beta 8を試してみたら、うちの7970 1枚でも2497M TPS 出てて吹きましたw 12.9 Betaではここまでのスピードは出なかったので、 ここ2ヶ月でAMDのドライバにかなり手が入ってますね〜
739 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/11/26(月) 10:37:04.72 ID:7cZ4LG5Ni] 7970の4wayやれば10Gか… コンセントの端子が熱くなるな
740 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/11/26(月) 18:30:45.89 ID:AQz+o+st0] 公式サイト(www.meriken2ch.com/programming/merikens-tripcode-finder )とか見ていると OpenGLとOpenCLが脳内でごっちゃになりそうなのでまとめ: OpenGL……シリコングラフィックスが開発していたクロスプラットフォームな3DグラフィックスのAPI。 ハードウェアに近い低水準な機能も使えるので高速だが、文字列描画が苦手。 GPGPUの利用法は、OpenCLよりもグラフィックス寄り。 OpenCL……アップルのKhronos Groupが開発した、クロスプラットフォームな並列コンピューティング用のAPI。 要するに、「CPUやGPUなどの計算資源を、並列演算用にまとめて扱えるようにするよ!」 といったもの。GPGPUの利用法は、OpenGLよりは演算寄り。
741 名前: ◆MERIKEN4.k mailto:sage [2012/11/26(月) 19:27:18.93 ID:ICZhOGh80] >>740 あ、あれはOpenCLの間違いで、OpenGLは一切関係ないですw ご自分用のまとめはここに書き込まないでいただけると有難いです。
742 名前: ◆MERIKEN4.k mailto:sage [2012/11/26(月) 19:36:47.88 ID:ICZhOGh80] >>737 OpenCL以外の検索ルーチンはいじってないので速度は変わっていないはずです。 Intelのはドライバのバージョンによってアプリケーションが落ちるろいう報告が あったのでやむなしです。
743 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/11/26(月) 19:56:04.00 ID:AQz+o+st0] >>741 了解しました。 >>742 そうだったんですか……。チェックボックス対応でも、というのは無茶でしょうか。 10桁の演算速度が上がっているのは確実な気がするのですが、 単に自環境ではAlpha6でGPU演算が使えなかっただけ(デバイスが対応していない) なのかもしれません。次買うのはRadeonGPU搭載PCにするかな…‥
744 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/11/26(月) 20:09:11.33 ID:gXr4FeWs0] >>740 geforce君はもう書き込まないでくれるかな?
745 名前: ◆MERIKEN4.k mailto:sage [2012/11/26(月) 20:44:41.34 ID:ICZhOGh80] >>743 Intelのはドライバの出来がイマイチで性能が全く出ないのに メンテの手間だけかかって、おいしいところが全くないんですよね。 Intel対応はXeon Phiが消費者向けに発売されたら考えますw
746 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/11/26(月) 20:49:46.82 ID:AQz+o+st0] >>745 確かに、グラボが出す速度を考えたらIntelのは誤差の範囲ですよねw もうその件については触れないことにします。回答ありがとうございました。
747 名前: ◆MERIKEN4.k mailto:sage [2012/11/26(月) 21:13:07.19 ID:ICZhOGh80] ドライバといえば、Catalystの新しいβ版で10桁検索を試してみたら、 速度が1/3になっていましたorz CUDAでもそうでしたけど、 GPGPUは開発環境やドライバによってアプリケーションの性能が 乱高下する傾向がありますねえ。ドライバの次のバージョンアップで 直っているといいんですけど…
748 名前: ◆MERIKEN4.k mailto:sage [2012/11/27(火) 01:57:27.60 ID:qHzcgcY70] 新しいAMDのドライバで12桁トリップ検索のプロファイリングを行って見たのですが、 ベクターレジスタ(VGPR)の数が40まで減っていて、Occupancyが10から60にまで 上がっていました。どうりで検索速度が上がっているわけです。 どうやらAMDのコンパイラの最適化のアルゴリズムが、命令の数を増やしてでもレジスタ数を 減らすことを優先するものに変更されているようで、それが12桁の場合はうまく働いたけど 10桁の場合は完全に裏目に出ている、ということらしいです。やっぱり本気で10桁トリップ検索で 性能を出そうと思ったらILかGCNのコードを自分で書くしかないみたいですが、とりあえず 以前のドライバでOpenCLバイナリを生成して、実行時にはそれを使うように変えておくことにします。
749 名前: ◆MERIKEN4.k mailto:sage [2012/11/27(火) 03:59:49.95 ID:qHzcgcY70] AMDのOpenCLドライバをAMD APP 2.7のものにロールバックしたら ようやく10桁検索の速度が元に戻りました。次のファイルは ドライバのアンインストールでは削除されずに直接手で削除する 必要がありました。 SlotMaximizerBe.dll SlotMaximizerAg.dll amdocl.dll OpenVideo.dll OVDecode.dll これがわかるまでエラく手間取りましたが、これでようやくOpenCLバイナリの 作成に取り掛かれます。
750 名前: ◆MERIKEN4.k mailto:sage [2012/11/27(火) 06:43:01.11 ID:qHzcgcY70] 10桁トリップ検索のコードですが、なんとCatalyst 12.8以前のドライバでは 出力が化けることが判明しました。ドライバのバクにしても いくらなんでもひどすぎるorz
751 名前: ◆MERIKEN4.k mailto:sage [2012/11/27(火) 19:01:37.31 ID:qHzcgcY70] >>746 手間がかからないならサポートしてもいいんですけど、テストの量が倍以上に なりますからねえ。残念です。
752 名前: ◆MERIKEN4.k mailto:sage [2012/11/27(火) 19:18:07.56 ID:qHzcgcY70] >>739 これ2枚積めば10G TPS超できそうです。TDP 500Wの化物だけど、 普通に検索君1号に2枚収まりそうなんだけど、流石に20万は払えないよな… あぶないあぶないw Radeon最上位のデュアルGPU版「HD 7990」発売、重さを支える支柱付き カードは弩級 akiba-pc.watch.impress.co.jp/hotline/20121124/etc_club3d.html Club 3D Radeon HD 7990 Dual GPU www.club-3d.com/index.php/products/reader.en/product/radeon-hd-7990-dual-gpu.html
753 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/11/27(火) 19:19:19.94 ID:hGvQPEA10] >>752 そんなに電源虐めたいかww
754 名前: ◆MERIKEN4.k mailto:sage [2012/11/27(火) 19:34:03.64 ID:qHzcgcY70] >>753 そこにハードウエアがあれば限界まで性能を出したくなるのが 男のさがというものですw
755 名前: ◆supernova.rT mailto:sage [2012/11/27(火) 19:36:20.84 ID:3f/efQ6N0 BE:5355599279-DIA(123422)] 10桁酉が割られる日も近いな…ゴクリ
756 名前: ◆MERIKEN4.k mailto:sage [2012/11/27(火) 19:38:49.66 ID:qHzcgcY70] 10桁検索ですけど、crypt()のseedの値に基づいてカーネルを動的に 書き換えていたことをすっかり忘れていましたw これって実行時にOpenCLバイナリを書き換えるか、seedの数だけバイナリを 用意しなきゃいけないってことだよな…
757 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/11/27(火) 19:59:40.97 ID:oOatxZVu0] >>756 最適化スゲェ…… でも、10桁のシード(ソルト)って確か2バイト分(最大256^2=65536通り)あるんじゃ
758 名前: ◆MERIKEN4.k mailto:sage [2012/11/27(火) 20:35:03.96 ID:qHzcgcY70] >>757 実際には2chの仕様のせいで65^2=4225通りなんですけど、 それでも結構な数です。とりあえず実験的に作ってみますけど、 さすがにこれを配布パッケージに含めるのは考えちゃいますねw
759 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/11/27(火) 20:39:00.84 ID:oOatxZVu0] >>758 単純に考えて、3.5MB×2×4225≒30GBかぁ…… 動的書き換えでお願いします(切望)
760 名前: ◆MERIKEN4.k mailto:sage [2012/11/27(火) 21:00:31.98 ID:qHzcgcY70] >>759 書き換えが必要なのはOpenCLのカーネルのバイナリだけなので そこまでひどくはならないですw せいぜい数十MBのオーダーでしょう。 圧縮がかなり効くはずなので配布パッケージ自体はそこまで大きくならない はずですけど、こればっかりは試してみないとわかりません。
761 名前: ◆MERIKEN4.k mailto:sage [2012/11/27(火) 22:03:05.43 ID:qHzcgcY70] 新しいドライバで10桁検索をプロファイリングしてみたのですが、 SALBusyが80.84%なのに比べてVALUBusyが28.91%と妙に低いのに 気づきました。MemUnitBusyが66.81%とかなり高いのも気になります。 これは実際にS-Boxで費やされている実行時間は全体の3割程度ということで、 かなり効率が悪いことになります。ちょっとドライバのバージョンを落として 比較してみます。
762 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/11/27(火) 22:41:52.20 ID:X0Buxy760] >>747-748 バージョンによって最適化がかなり違うのですか、面倒ですねえ。 >>756 saltに応じてカーネルの動的書き換えとかできるのですか。 できるにしても実際にやるのが凄いですw >>758 crypt(3)の仕様で64^2=4096通りではないのですか?
763 名前: ◆MERIKEN4.k mailto:sage [2012/11/27(火) 23:10:13.31 ID:qHzcgcY70] >>762 あれれ、そうでしたっけ? もうちょっと調べてみます。
764 名前: ◆MERIKEN4.k mailto:sage [2012/11/27(火) 23:17:19.40 ID:qHzcgcY70] >>762 CUDAでも開発環境のバージョンによってかなり速度差が出てましたけど、 OpenCLではドライバのバージョンで違ってくるので頭が痛いです。 HashcatはカーネルをLLVM IRで配布してるみたいですけど、 似たようなことをしたほうがいいのかもしれません。
765 名前: ◆MERIKEN4.k mailto:sage [2012/11/28(水) 00:08:01.45 ID:v1ASRvbE0] Catalyst 12.9 Betaに戻してみたら、こんな感じでした。 VALUBusy: 28.91% -> 36.15% SALUBusy: 80.84% -> 113.88% MemUnitBusy: 66.81% -> 63.67% VALUBusyがちょっと上がっただけで速度は3倍になってるので、 ベクターユニットが遊んでいるせいで7970は相当余力を残している ことになります。かなりの性能向上が期待できそうなので、 OpenCLの実装が一段落したら、自分でGCNのコードをいじってみようかな…
766 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/11/28(水) 00:12:07.31 ID:JI44h4XK0] >>765 > SALUBusy: 80.84% -> 113.88% 100%越えってどゆことー?
767 名前: ◆MERIKEN4.k mailto:sage [2012/11/28(水) 05:40:16.34 ID:v1ASRvbE0] >>766 それはまったく謎ですw
768 名前: ◆MERIKEN4.k mailto:sage [2012/11/28(水) 06:28:09.26 ID:v1ASRvbE0] >>762 調べてみましたけど、2chのトリップ生成でのsaltの扱いはcrypt (3)の仕様から ずれているので、やっぱり4225通りであってました。 2ch トリップ仕様 sourceforge.jp/projects/naniya/wiki/2chtrip 最初に10桁トリップ検索の実装をした時にも思ったことですが、 見れば見るほどひどい仕様ですw
769 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/11/28(水) 08:12:30.61 ID:ttD8PkvV0] >>768 面妖な! ……ひょっとして10桁検索がどうしても遅くなるのはここにも理由があるんじゃ