【オセロ,将棋】ボードゲーム【囲碁,War】 at GAMEDEV【オセロ,将棋】ボードゲーム【囲碁,War】 - 暇つぶし2ch■コピペモード□スレを通常表示□オプションモード□このスレッドのURL■項目テキスト389:310 16/01/16 09:10:45.76 mjTPCiWE.net PPLはMicrosoftのDeveloper Networkくらいしか情報が無いので、ひたすらリンクを たどって情報収集してますが、ほとんど機械翻訳で、結局カーソルあてて英文読ま ないと意味が分からないという・・・ で、排他制御とかいい加減にしていたノード数カウントなどをきちんとして、ソースの見易さ と効率を上げようと色々と細かく修正。combinableとかcritical_sectionとかInterlockedとか。 と・・・思ったら・・・中盤探索で確率10%程度で違う答えが返ってくる・・・ 並列探査のバグはわかりにくくて時間を食ったのですが、どうもcombinableの動作が変。 期待した動作をしていない。でも、情報が無さすぎで、どこを直せば良いのかわからず、 結局同等の機能を動的配列にしてしまった。 390:310 16/01/16 11:37:48.70 mjTPCiWE.net 中盤探索を1万回程度回して、違った答えが返ってこない事を確認できました。 ノード数カウントはInterlockedIncrementを使っているんだけど、やはり排他待ちロスが 大きいようで、ノードカウントありだと0.8秒前後、無しだと0.7秒前後になる。 使えなかったcombinableみたいな形にして、一つの再帰関数内はローカル変数で加算 して、最後にまとめて1か所で排他加算するようにしてみようかな。 並列タスクの起動順で、探索ノード数が違ってくる関係で、実行時間のバラつきが±0.5 秒くらいになっている。 次ページ最新レス表示レスジャンプ類似スレ一覧スレッドの検索話題のニュースおまかせリストオプションしおりを挟むスレッドに書込スレッドの一覧暇つぶし2ch