スポンサード リンク

T.Ishii's Software Library

HTML5 レトロ風ゲーム館

無料ブログはココログ

« 2010年7月 | トップページ | 2010年9月 »

2010年8月

通常読みも高速化

ここのところ、MRSolverの並列演算の高速化についての話題が続いていたのだが、これは全て完全読みについてのものだった。しかし、MasterReversiでは通常読みと勝敗読みについても並列演算を行っている。なので、これらの高速化も今回の変更で行っておく。

続きを読む "通常読みも高速化" »

小容量キャッシュにも対応

土曜日に書いたように、現状のMasterReversiでは、並列演算時にキャッシュサイズが小さいと性能が出ない。しかし、ちょっと性能が出なさ過ぎるので、チューニングを変更した。その結果、キャッシュサイズがデフォルトの64MB時にも、それなりの性能が出るようになった。

続きを読む "小容量キャッシュにも対応" »

ハッシュの優先度制御

MasterReversiの並列演算方式の場合、殆ど独立した局面を探索する各タスクが同時にハッシュテーブルを利用する。なので、普通の方法でハッシュテーブルにアクセスすると容量がタスク分は欲しくなる。なので、優先度制御を入れることで、この問題を軽減している。

続きを読む "ハッシュの優先度制御" »

今回はこの辺にしておく

ここ二週間くらいはMRSolver、というか、MasterReversiの並列演算性能を向上させるために色々と改良を行っていたのだが、十分な成果があった。まだ、Edaxとの比較では、二割程度は劣っているのだが、今回はこの辺にしておく。やはり、キャッシュのヒット率の差が大きいようだ。

続きを読む "今回はこの辺にしておく" »

まだ速くなった

MRSolverの並列演算性能の向上については、作者としては、ほぼ満足な所まで来たのだが、FFO40-59の総合性能では、まだEdaxに負けている。なので、しぶとく、また少し弄ってみたのだが、まだ速くなった。既に現行バージョンと比べると別物というくらい速いのだが。

続きを読む "まだ速くなった" »

評価データは無変更

今回の変更では新しい評価データも作っているのだが、とりあえず、現行の評価データをそのまま使い続けることにした。これは、新しい評価データが、パッとしないこともあるのだが、評価データの精度が低い問題は、枝刈りルーチンの変更である程度対応できたからだ。

続きを読む "評価データは無変更" »

さらに少し改良

MRSolverの並列演算性能は、とりあえず満足できる程度にまで上がったのだが、まだ少しやれる改良があったので、やってみた。具体的には、仮探索のやり方を少し変えたのと、仮探索での最善手進行を並列演算用のタスク生成時に強制的に利用するようにした。

続きを読む "さらに少し改良" »

劇的に速くなったので

MasterReversiの並列演算性能がEdaxに負けていたので、Edaxを真似てYBWCアルゴリズムを導入しようかと思っていたのだが、現行方式を改良すると劇的に速くなり、テスト項目によってはEdaxを凌駕するものも出てきたため、現行方式を継続することにした。

続きを読む "劇的に速くなったので" »

複合要因のようだ

MasterReversiの並列演算性能がEdaxよりも劣っている問題について、色々と検討してみたのだが、どうも、複合要因のようだ。キャッシュのヒット率が重要な問題となることは間違いないのだが、数日前に書いた問題は、現行バージョンが遅い理由にはならない。

続きを読む "複合要因のようだ" »

今週で何とかなる?

先週は新しい評価データを作成しつつ、並列演算の方式と、その他の部分の変更の必要性を検討していたのだが、一応、何とかなりそうな感触は掴めた。なので、今週はそれらを適用していく。上手く行けば、今週中にもMasterReversiの変更作業に入れるかもしれない。

続きを読む "今週で何とかなる?" »

木を見て森を見ず

現在開発中のMRSolverの並列演算ルーチンの性能が期待したほど出ていない原因が判ったような気がする。並列演算時にはキャッシュによる性能向上率が低下するのが直接的な原因だ。これは実測で確認できた。で、その理由は、気がつけば、当然の事かもしれない。

続きを読む "木を見て森を見ず" »

問題点を把握した

MRSolverの並列演算性能がEdaxに敵わないため、今週は並列演算の方式をEdax相当のものに変更しようとしてみたのだが、タスクのコントロール方式が根本的に異なるため、同様の形に変更するのは大変そうだった。なので、とりあえず、現状の問題点を把握してみた。

続きを読む "問題点を把握した" »

謎が解けた

今週は並列演算の改良と、評価データの作成を並行して行う、と、書いていた割には、それらの話題は無い。これは、作者がEdaxとの比較から他にも変更の必要がある箇所は無いかを確認する作業に注力していたからだ。結論として、上記以外の変更は必要無いようだ。

続きを読む "謎が解けた" »

ハッシュテーブルの効果

現在はMasterReversiのバージョンアップ開発の一環として、同じ思考ルーチンを使っているMRSolverの変更を行っているのだが、重要な事を一つ書き忘れていた。なので、今日はそれについて書いてみることにする。表題にある通り、ハッシュテーブルの効果についてだ。

続きを読む "ハッシュテーブルの効果" »

並列探索の方式

局面の探索を並列に行う方式の事を一般には並列探索と呼んでいるようなのだが、MasterReversiでは並列演算という言葉を使っている。これは、趣味の問題もあるのだが、印象的には、MasterReversiの並列処理では探索は行っていないからでもある。

続きを読む "並列探索の方式" »

学習用の教師データ

今週はMRSolverの評価データの作成と平行して並列演算の処理方式を変更する予定なのだが、今日のところは、評価データの作成作業で手一杯だった。評価データの作成作業には多くのCPUタイムが必要になるため、準備にもそれなりの時間をかける必要があるのだ。

続きを読む "学習用の教師データ" »

今週は並列演算の変更

MRSolverの評価精度の向上のためには、現状は4手毎の評価パラメータを1手毎にし、先手と後手の石が入れ替わった場合の評価値の扱いを変えた上で、評価データを作り直せば良い事が判った。ただし、微調整には時間がかかりそうなので、今週は並列演算を変更する。

続きを読む "今週は並列演算の変更" »

評価関数のパラメータ数

現在、MRSolverの評価精度を上げるために新しい評価データを作成してみているのだが、やたらと時間がかかる。2週間前に話題にした強い将棋ソフトにはパラメータが50万個あるらしいのだが、強いリバーシソフのパラメータ数はその何倍もあるからだ。

続きを読む "評価関数のパラメータ数" »

やっぱり評価データだ

昨日は評価データを変えても代わり映えしなかった、と、書いたのだが、Edaxの評価ルーチンで得られる評価値と、MasterReversi用に移行した評価データで得られる値には違いがあることが判った。その理由は、MasterReversiが評価データの対称性を意識しているからだ。

続きを読む "やっぱり評価データだ" »

残ったのは枝刈り

色々と作った新しい評価データを使ってみても代わり映えしなかったため、今日はEdaxのソースコードにあるルーチンを使って、Edaxの評価データを直接読み込み、MRSolverの評価関数の代わりをさせてみたのだが、結局、代わり映えはしなかった。残ったのは枝刈りだ。

続きを読む "残ったのは枝刈り" »

違いの影響を調べた

今週は、MRSolver、というか、MasterReversiの評価精度を向上させるために色々とやってみているのだが、今日は、Edaxのソースコードを変更しつつ、ビルドしたバイナリを動作させ、MasterReversiと違う部分がどの程度の影響力を持っているのかを検証してみた。

続きを読む "違いの影響を調べた" »

さすがに結構違う

今週はMRSolverの評価精度を上げるために色々とやるつもりなのだが、好都合な事に、評価精度がMRSolverよりも高いと思われるEdaxのソースコードが公開されている。なので、まず、今日はそれを読んでみた。理解度はまだ80%程度なのだが、結構違うのは判った。

続きを読む "さすがに結構違う" »

開発中バージョンをUPした

MasterReversiのHPにMRSolver Ver1.0.7の開発中バージョンをアップした。まだ、ちゃんとした評価は行っていないので、不具合もあるかもしれないのだが、とりあえず、64Bit化による性能向上を確認して欲しい。ただし、32Bit版も速くなったので、アドバンテージは5%程度だ。

続きを読む "開発中バージョンをUPした" »

今後の予定

今回のMasterReversiのバージョンアップ開発では、本体の64Bit化は行っておくつもりだ。また、少しだけ性能が上げられそうなので、Windows7対応の意味からも32Bit版についても更新しておく事になるだろう。しかし、その他の項目については、今のところ未定だ。

続きを読む "今後の予定" »

公知ネタの特許は無効

今日、ネットを見ていると、「Appleが出願中のトラベルサービスアプリ特許、論議呼ぶ」という記事を見かけた。AppleがAppストアに登録された他社製アプリのアイデアをApple社の特許として申請したらしいのだが、特許は公知のアイデアには認められない。

続きを読む "公知ネタの特許は無効" »

多分32Bit版も更新する

現在は、MasterReversiの64Bit化を行っているのだが、思ったよりも64Bit版では性能向上が大きい。これは、64Bitモードへの最適化もあるのだが、ついでに性能向上用の変更も行ったからだ。なので、この変更を32Bit版にも適用して32Bit版も同時更新しようかと思っている。

続きを読む "多分32Bit版も更新する" »

出遅れてしまったらしい

現在、MRSolverの64Bit化を行っているのだが、比較相手を探そうと、久しぶりに主だったソフトのページを見てみたところ、殆どのソフトは未更新だったのだが、Edaxだけは更新されていた。64Bit化と並列演算に対応したようなので、MasterReversiは出遅れてしまった格好だ。

続きを読む "出遅れてしまったらしい" »

どんどん速くなる

現在は、64Bit版のMRSolverをチューニングしているのだが、予想以上に速くなってきている。既に、現行の32Bit版と比べると15%は高速化されたのだが、まだ伸び代がある。もっとも、高速化の要因は64Bitモードへの最適化だけではなく、力技による部分もあるのだが。

続きを読む "どんどん速くなる" »

64Bit版の方が高速

現在はMasterReversiの64Bit化に向けて、まず、同じ思考ルーチンを使用しているMRSolverを64Bit化してみている。単純に64Bit化した時点では、32Bit版よりも5%程度遅くなったのだが、64Bitモードへの最適化を行い、現時点では、32Bit版よりも5%程度速くなっている。

続きを読む "64Bit版の方が高速" »

先読みの効果

現在は、MasterReversiの64Bit化に向け、MMX命令が使えなくなるために劣化する性能を補償するための改良案を何点か試しているのだが、今日はまだ詳細を書ける段階ではない。なので、思考ルーチンについて、作者が常々不思議に思っていることを書いてみる。

続きを読む "先読みの効果" »

95%勝つらしい

MasterReversiの64Bit化では、まだブログのネタになりそうな内容が無いため、苦労しているのだが、今日、ITmediaを見ていると、「プロ棋士並み」コンピュータ、女流王将に挑む 「機械学習」と「合議制」組み合わせ」という記事があった。今日はこの記事をネタにしてみる。

続きを読む "95%勝つらしい" »

« 2010年7月 | トップページ | 2010年9月 »

2017年6月
        1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30  

広告

プライバシーポリシー

  • 当サイトでは、第三者配信による広告(Google Adsense)サービスを利用しています。

    Google を含む第三者配信事業者は、Cookie を使用して、ユーザーのウェブサイトでの閲覧履歴に基づく広告を配信します。 Google 広告 Cookie を使用することにより、Google や Google のパートナーは当サイトや他のサイトへのアクセス情報に基づく広告をユーザーに表示できます。

    Cookieを無効にする設定およびAdsenseに関する詳細については、以下のリンクを参照下さい。

    広告 - ポリシーと規約 - Google