[過去ログ] 【オセロ,将棋】ボードゲーム Part2【囲碁,War】 (1002レス)
上下前次1-新
このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
562: 310 [sage] 2018/12/26(水) 03:07:45.74 ID:Rkthqh0l(2/2) AAS
あれれ。思ったほど速度が出ない…というか、単体の速度が半分どころか、
1/4くらいになっているイメージ…。深さが深いものほど遅いという事は、
置換表周りかなぁ。
棋譜作成する対象によって速度が結構変わるので、評価しづらい。
メモリー配置等の問題も考えないといかんような気がしてきた。
いかん。夜も更けていく…。
>>561なんか、フラッシュメモリー自体は書き込みが遅くて、SSDだとその辺を並列
化とかキャッシュとかで回避しているらしいです。USBメモリーは、その辺真面目
にやっているもの(高価)と、そうじゃないもの(安価)で差があるけど、それでも
SSDには敵わないとか。
563: 535 [sage] 2018/12/26(水) 21:06:48.31 ID:2Tvqp++w(4/4) AAS
明日か明後日あたりで棋譜10万局分溜まりそう
深層学習のプログラム、組みたいなぁ
でも難しいんだよなぁ
564: 310 [sage] 2018/12/27(木) 00:00:43.02 ID:APLuuq5f(1/3) AAS
悩ましい。
シングルmin-Maxの並列動作と、パラレルmin-Maxのシングル動作。
どうも速度的には大差ない感じ。
2倍くらい速度出ると思ったのに…。
スレッド数が増えたら差が出てくるのかなぁ。
565: 535 [sage] 2018/12/27(木) 20:54:08.52 ID:gYB4tQZF(1/3) AAS
10万局いきました。
566: 535 [sage] 2018/12/27(木) 21:18:27.23 ID:gYB4tQZF(2/3) AAS
多分俺が世界で一番囲連星LV3の計算を回した人だろうなw
567: 310 [sage] 2018/12/27(木) 22:00:15.50 ID:APLuuq5f(2/3) AAS
色々あがいた挙句、そこそこ時間がかかる26手空きを、それぞれで解いてみた。
並列探索で6分。シングル単独動作で12分。シングル4並列動作で18分。
やはり、シングルも4並列する事でなにがしかのオーバーヘッドがあるようです。
単純計算だと並列探索6分を4個で24分に対して、シングル18分で4つ解ける
事から33%の速度アップが見込める事になるけど、体感そこまでの効果が感じ
られないというか、時間がかかる問題では更に差が大きくなっていて、そいつらに
足を引っ張られている印象。
そのうえで、裏でゴソゴソやりながら計算させる時に色々弊害があるので、
CPUの増強を決断するまで放置しようかと思います。
色々あがいた結果か、並列探索ですこーし速度アップした感じ。
10%行くかいかないか。
568: 535 [sage] 2018/12/27(木) 22:05:17.88 ID:gYB4tQZF(3/3) AAS
よくわからんがハイパースレッディングって単純に性能2倍になるわけではないということではなくて?
569: 310 [sage] 2018/12/27(木) 23:06:53.59 ID:APLuuq5f(3/3) AAS
もちろんそうなんだけど、排他待ちを要するデータも、待ち合わせロスも
無いので、もうちょっと性能出るんじゃないかと思っていたのです。
あと、うまく説明できないけど、ノード数が多い探索は、ノード数比以上に
時間がかかっている気がしています。まだ感覚の話ですが。
570: 535 [sage] 2018/12/28(金) 20:37:08.10 ID:HWMCAOZD(1) AAS
LV3は強いんだけど詰み状態から詰みを逃してる棋譜が散見される。
直せるもんなら直したほうがいいんだろうけどかなり大変だろうな
571: 310 [sage] 2018/12/29(土) 09:40:46.33 ID:hnomLa8j(1) AAS
んー。シングル並列動作で6時間かかっても解けずに諦めた盤面とを見つけて、
パラレルで解いたら1時間40分だった。空きマス26だと通常1分程度なんだけど、
時々こういう時間がかかる盤面がある。今までテストが面倒なので、10分以内に
終わりそうな奴でテストしていたけど、もしかしたら探索ノードが多い奴ほど、
シングル並列動作での速度低下が大きいのかも知れない。
時間がかかる奴ほど、シングル・パラレル比が悪化するなら、今考えている大体
3倍程度ってのは成り立たなくなって、もっと悪い事になる。それなら感覚的に
合致する。普通に流れている時には、シングル並列で高速化できそうな手ごたえ
があるんだけど、時間がかかる盤面が来ると急速に逼塞していって、なかなか
回復しないという感じ。
パフォーマンスモニタにらみながら、unordered_mapのメモリアロケーションの方法
を想像してみた。初期確保件数指定(倍々で自動追加される)してみたけど、溢れて
もいないのにダラダラとメモリー使用量が増えていく。もしかしたらOSにメモリーを
貰いに行く動作が排他待ちになっているのかも知れない。どうやって検証しよう。
やっぱ自前置換表作るしかないのかなぁ。
572: 310 [sage] 2019/01/01(火) 10:13:37.88 ID:y24geaJt(1) AAS
あけおめです。
ヒープをダラダラと確保するのが気になったので、色々いじりました。
ordering用のvectorを、配列にしてスタックに。ついでにクラス化してメンテ性アップ。
少しだけ速度アップした気がする。
自前ハッシュテーブル型の置換表を作ってみた。
最初に大きく領域確保して、溢れた時以外領域確保しないようにした。
基本、余計な機能は実装していないので、処理は軽いはずなんだけど…
極ほんの少しだけ速度ダウンした感じ…
記譜作成はunordered_map版で実行しながら、改良をしてみたいと思います。
とはいえ、ソース的にはあんまり改良の余地がないんだよなぁ。
速度がそん色ないところまで行けたら、シングル版の並列での速度低下が
メモリー確保が原因か検証できるかなぁ。
573: 310 [sage] 2019/01/05(土) 09:07:42.68 ID:KwyVlHZX(1) AAS
チェーン型でハッシュを組んでましたが、テーブルがあふれると結局ダラダラと
メモリー獲得し始めるので、オープンアドレス型に変更して、まとめて領域を追加
するようにしました。
この辺、もう趣味の世界ですね。
何をしても、速度は上がりも下がりもしない(汗
やっぱり探索ノードを減らす工夫が重要ですね。
574: 535 [sage] 2019/01/05(土) 21:26:02.72 ID:TXR2vHHf(1) AAS
自己対戦のみで強くなるアルファゼロは理想ですが実装が難しそうなので
せっかく棋譜も集めてるので教師あり学習をやってみようかと思案中。
575: 535 [sage] 2019/01/06(日) 00:55:45.70 ID:6f3tqt5A(1/8) AAS
とりあえず、棋譜データからmin-max探索して黒有利の局面か白有利の局面かの2択を学習させようかな。とか思ってます。
そろそろ寝るか。。。
576: 535 [sage] 2019/01/06(日) 02:33:16.90 ID:6f3tqt5A(2/8) AAS
寝るタイミングを逸してしまったw
プログラミングってこれがあるから怖いよねw
577: 535 [sage] 2019/01/06(日) 02:46:46.55 ID:6f3tqt5A(3/8) AAS
なんか100兆局くらい棋譜を集めると序盤DBだけでもかなり押せるんじゃないかなぁ。
そんな感じ。
いかん、寝なければww
578(3): 名前は開発中のものです。 [sage] 2019/01/06(日) 03:01:38.94 ID:aGENq217(1) AAS
質の悪い棋譜ばかり100兆局集めてもあんまり強くならない気がするのですがどうなんでしょう
質のいい棋譜がそれだけ集まればいいですがそれはほぼ不可能ですし…
579: 535 [sage] 2019/01/06(日) 03:14:04.86 ID:6f3tqt5A(4/8) AAS
そうはいってもLV3の棋力はかなり高い。
囲碁将棋でいえばアマチュア3段くらいには相当するはず。
580: 535 [sage] 2019/01/06(日) 03:18:59.57 ID:6f3tqt5A(5/8) AAS
波があるからアマチュア3段は言い過ぎだったかなw
でもまあ強い時はかなり強い。
581: 310 [sage] 2019/01/06(日) 14:23:08.43 ID:a93oWf/5(1/3) AAS
置換表一時調子が良かったのですが、修正加えたら崩壊。
なんとなく読み取りが変な感じなんだけど、どこがおかしいのか全くわからず。
>>578
棋譜たくさん集めて序盤DB作ったら、その序盤DBのMax手順以外の手について
は、分岐した以後の盤面だけで学習させると序盤の穴が埋まるというか、間違った
盤面でぼやっとした学習するの避けられるかも。
今、序盤についてはそのやり方で学習させてます。
582(1): 535 [sage] 2019/01/06(日) 20:12:44.73 ID:6f3tqt5A(6/8) AAS
とりあえず、昔作ったTINY-DNNのプログラムを引っ張り出してきて学習プログラムを仮組したが絶望的に遅いorz
グラボ使えればちっとは違うんだろか?うーむ。
583: 310 [sage] 2019/01/06(日) 20:34:20.52 ID:a93oWf/5(2/3) AAS
オープンアドレスうまく動くようになりました。
ここに愚痴ると、直後に原因がわかる罠w
この数日の葛藤は何だったんだ。
584(1): 310 [sage] 2019/01/06(日) 20:36:40.74 ID:a93oWf/5(3/3) AAS
>>582
Tiny-DNNはGPU対応していないんじゃないかなぁ。
結局、DCNNはGPUで処理しないと無理っつー気がする。
585: 535 [sage] 2019/01/06(日) 20:44:29.63 ID:6f3tqt5A(7/8) AAS
>>584
あ〜やっぱそうなんですかねぇ。
GPUも結構いいの買ったのでぜひ活用したいところではあります。
586: 535 [sage] 2019/01/06(日) 22:23:00.36 ID:6f3tqt5A(8/8) AAS
明日は仕事なのでハマらないうちに切り上げようww
社会人として自制しなければwww
上下前次1-新書関写板覧索設栞歴
あと 416 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル
ぬこの手 ぬこTOP 0.030s