投稿者
 メール
  題名
  内容 入力補助動画検索画像・ファイル<IMG><OBJECT>タグが利用可能です。(詳細)
    
  ファイル1
  ファイル2
  ファイル3
アップロード可能な形式(各1MB以内):
画像(gif,png,jpg,bmp) 音楽(mmf,mld) 動画(amc,3gp,3g2)

 URL
[ ケータイで使う ] [ BBSティッカー ] [ 書込み通知 ] [ teacup.コミュニティ ] [ 検索 ]

投稿募集! スレッド一覧

スレッド作成 他のスレッドを探す

[PR] バイト高額 グアムツアー 岩手の求人・転職 seo対策 GMO SEO
teacup. ] [ 無料掲示板 ] [ プレミアム掲示板 ] [ teacup.コミュニティ ] [ ブログ ] [ チャット ]

全100件の内、新着の記事から10件ずつ表示します。 1  2  3  4  5  6  7  8  9  10  |  《前のページ |  次のページ》 

王位戦第七局

 投稿者:都万  投稿日:2009年 9月29日(火)09時41分59秒
  ちょっと、理由はわかりませんが、棋譜のアクセスが不能になっていて局面図もダウンロードできません。(;_;)
ただ、棋譜ファイルは下記だと思います。

http://topics.hokkaido-np.co.jp/50oui-7/2009oui7.kif
 

サイド バイ サイド

 投稿者:都万  投稿日:2009年 9月28日(月)08時50分39秒
編集済
  どうも原因らしきものがわかりました。
お城将棋が同じ日(2009/08/22)にリンクしたのに、Releaseバージョンで起きなくて、Debugバージョンで起こる変な現象があったので、この違いを検討しました。
その結果、「スタティックライブラリでMFCを使う。」(Release)、「共有DLLでMFCを使う。」(Debug)の違いがあって、どうもスタティックライブラリを使用するにしたら、起きなくなるようです。
だから、らの問題じゃなくて、マイクロソフトの問題でWinodws 7 Enterprise版 RC版が未完成でMFCライブラリに互換性がない状態なのでこれが起こっていると推測します。
したがって、何の手もうちません。
なお、これは32bitOSでコンパイルして、64bitOS(RC版)に持っていったときに起こって、64bitOS(RC版)でコンパイル、実行の場合は起きないようです。
しかも最近のリンクに限る感じがあります。
 

Re:64bit OSの問題点

 投稿者:都万  投稿日:2009年 9月28日(月)05時19分54秒
  ちょっと、この件については調査中。
現象は、下記エラーメッセージが出て起動しない。
どうも、CSA将棋でも起きるバージョンと起きないバージョンがあって原因不明。
また、隠岐も起きるバージョンと起きないバージョンがる。
ソースが同じなのにこの現象が出るので調査中。
SPEARとかK-Shogi等の他の人が作ったソフトは正常に動いてます。
 

Re: 64bit OSの問題点

 投稿者:かず@なのは  投稿日:2009年 9月27日(日)17時57分34秒
  なのはのGUIはCSA将棋改なのですが、64bit用にコンパイルしてWindowsXP(x64)で動いています。
素のCSA将棋(32bit)もWindowsXP(x64)で動いています。

Windows7(64bit)で何か制約があるのかも?(DLLのパスとかユーザー権限とか)

64bit用にコンパイルすると遅いのはよくわかりません。
うちのWindowsXP(x64)/AMD Athlon64だと速くなっています。
Core2だと32bitではマクロヒュージョンとかマイクロヒュージョンが有効に働くのが、64bitだと無効になってしまうため実行効率が悪くなるという話を聞いたとこがあり、そのため遅くなっているのかも知れません。
それでも、Core2 で32bit⇒64bitで速くなっている例はあるので、プログラムの性質とかCPUの性質とかいろいろあるので、自分のプログラムがどういう条件で一番速く動作するのかはやってみないとわからないですね…。

http://vivio.blog.shinobi.jp

 

64bit OSの問題点

 投稿者:都万  投稿日:2009年 9月27日(日)17時42分22秒
  どうも、64bit OSにすると、32bit OSでコンパイルした隠岐やCSA将棋が動かなくなりますね。
AMDでは、テスト出来ないですが、近いうちに64bit OSでコンパイルした隠岐、CSA将棋、お城将棋をアップする部屋を作ろうと思います。
 

実験結果2

 投稿者:都万  投稿日:2009年 9月27日(日)13時32分45秒
  隠岐でも同じような傾向がありました。
x64でのコンパイルは、ダメなのですが、x86でのコンパイルでWindows Vista(32bit)、Windows 7(64bit)の同じマシンでコンパイルリンクして走らせると、5%程度Windows 7の方が消費時間が短くなっている感じです。
原因はよくわかりませんが、VC++2005 proのx64コンパイルは使わない方が賢いようです。
 

実験結果

 投稿者:都万  投稿日:2009年 9月27日(日)09時36分38秒
  蜜の味を使って処理速度を測定しました。
             A        B
X-64(7)      1分19秒  1分24秒
X-86(Vista)  1分24秒
A---VC++2005でx86コンパイル B---VC++2005でx64コンパイル

本当は、隠岐を使って測定したかったのですが、隠岐が詰将棋部分にアセンブラを使っているので、x64でコンパイル出来ない問題があって、蜜の味で測定しました。
蜜の味の方もアセンブラを使っていてx64ではコンパイル出来なかったのですが、アセンブラの部分のソースを外すには、容易だったので蜜の味をテストプログラムとして採用しました。
結果は、不思議な結果で、ご覧のようにx86でコンパイルした方がx64OSで動作させると速かったです。(常識的には逆の結果が出ると思っていたのですが、・・・・)
だから、VC++2005 Proの場合、Win32でコンパイルしてx64OSで動かした方が5%程度有利になるみたいです。

なお、これはあくまでも蜜の味の実験結果、将棋ソフトの場合、どうなるかはわかりません。
ただ、どっちにせよ、あまり差はありません。
また、Windows 7を採用するとインターネットに接続できないとか、I/Oデータのテレビチューナーが動作しないとか、メモリステック、SD等が全くアクセスできないとかハードの面で障害がありました。
これは、未完成なOSでテストしてる問題があって、Windows 7正規バージョン発売になると序じょに各ハードメーカーが対応すると予測されます。
 

64bitの引数

 投稿者:かず@なのは  投稿日:2009年 9月26日(土)18時49分10秒
  整数なら最初の四つはrcx, rex, r8, r9で五つ目以降はスタックに積みます。
実数ならXMMレジスタを使います。
ドキュメントに記載されています
 

Re:64bit

 投稿者:都万  投稿日:2009年 9月26日(土)15時40分20秒
  なんとか、できました。
ありがとうございました。
いろいろ落とし穴があって、先ずなのはさんの指摘の通りでインストールのときに64ビットはVCにインストールするチェックボックスが落ちていました。
それと、Win32のプラットフォームをx64に切り替える必要があるんですね。
これがわからなくてWp64からヘルプファイルをたどっていってようやくわかりました。

なんとか、下記レジスターの状態を確認しました。

RAX = 0000000000000001 RBX = 000000000012FD50 RCX = 0000000000230208 RDX = 0000000000000000
RSI = 0000000000000001 RDI = 000000000023A1B8 R8  = 0000000000008000 R9  = 00000000000000FE
R10 = 0000000000000088 R11 = 000000000012EC58 R12 = 0000000000000000 R13 = 0000000000000110
R14 = 0000000000000000 R15 = 00000000001702D2 RIP = 0000000000401269 RSP = 000000000012F1A0
RBP = 0000000000000001 EFL = 00000202

それにしても、レジスターがたくさんありますね。
これが、見たかったのです。
PS2をやったときに、あちらはレジスターが32個あって、しかも通常は32ビットなのですが、128ビットとしても使えます。
まっ、それはおいといて、このレジスターの数に興味があるんです。
x86は、引数渡しにメモリプッシュポップなのですが、レジスターが多いシステムはレジスター渡しができるはずなのでそれがどうコンパイルされているか、知りたかったんです。
PS2でフーリエ変換するときに、アセンブラでレジスターを大量に使ってやってましたから。
まっ、とにかく、ありがとうございました。
 

Wp64

 投稿者:かず@なのは  投稿日:2009年 9月26日(土)01時04分40秒
  Wp64は64bitオプションではなく64ビット移植性の問題の検出をするためのオプションです。
64bit用にコンパイルしたときに問題となるような記述を検出するためのオプションです。

重要!:Wp64を指定しても64bitのコードは生成しません。

MSは効果がないと判断しているわけでなく、今後はこのオプションを有効にするには64bit用コンパイラを使ってね、ということのようですよ。

http://vivio.blog.shinobi.jp

 

以上は、新着順91番目から100番目までの記事です。
これ以下の記事はありません。
1  2  3  4  5  6  7  8  9  10  |  《前のページ |  次のページ》 
/10 


[PR] アンチエイジング