C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

Re[3]: Any CPU, x86, x64の違い


(過去ログ 40 を表示中)

[トピック内 4 記事 (1 - 4 表示)]  << 0 >>

■20921 / inTopicNo.1)  Any CPU, x86, x64の違い
  
□投稿者/ めろぱん (1回)-(2008/06/19(Thu) 22:04:44)

分類:[C#] 

開発環境:Visual Studio 2008
言語:Visual C#

はじめまして。めろぱんと申します。
早速ですが、質問させてください。

Visual C#で64bitOS用アプリを作成しようと思っています。
構成マネージャのプラットフォーム指定により
x86:32bit用
x64:64bit用
Any CPU:32bit/64bit汎用
となり、x64またはAny CPUにすればよさそう、
という所まではたどり着けました。
(32bitアプリをWOW64上で動かすのはここでは対象外としています)

ここで質問なのですが、
x64指定で64bit用として作成された実行ファイルと、
Any CPU指定で32bit/64bit汎用として作成された実行ファイルで、
実行ファイルのサイズ、64bitOS上での処理速度やメモリの消費量、
その他パフォーマンスの面で何か違いがあるのでしょうか?
単純に考えると
32bit/64bit汎用=汎用性を持たせるための冗長処理あり=パフォーマンス劣る
と考えてしまうのですが、
プラットフォームの違いはすべて.NET Frameworkが吸収するならば
両者にパフォーマンスの違いはほぼ無い、という考えもできます。
どちらが正しいのでしょうか?

その他、32bit/64bit汎用にしたことによるデメリットや制限事項があれば
ご教示いただきたく思います。

よろしくお願いします。

引用返信 編集キー/
■20922 / inTopicNo.2)  Re[1]: Any CPU, x86, x64の違い
□投稿者/ Jitta (487回)-(2008/06/19(Thu) 22:35:47)
Jitta さんの Web サイト
No20921 (めろぱん さん) に返信
> ここで質問なのですが、
> x64指定で64bit用として作成された実行ファイルと、
> Any CPU指定で32bit/64bit汎用として作成された実行ファイルで、
> 実行ファイルのサイズ、64bitOS上での処理速度やメモリの消費量、
> その他パフォーマンスの面で何か違いがあるのでしょうか?

 実行時にコンパイルされます。
http://search.live.com/results.aspx?q=JIT+%E3%82%B3%E3%83%B3%E3%83%91%E3%82%A4%E3%83%AB&go=&form=QBRE
引用返信 編集キー/
■20926 / inTopicNo.3)  Re[2]: Any CPU, x86, x64の違い
□投稿者/ めろぱん (2回)-(2008/06/19(Thu) 23:35:37)
No20922 (Jitta さん) に返信

Jittaさん、ご回答ありがとうございます。

恥ずかしながら、基本が抜けておりました。
ということは、64bitOS上で最終的に展開される機械語は
x64:64bit用もAny CPU:32bit/64bit汎用も同じということですね。
ありがとうございました。
解決済み
引用返信 編集キー/
■20930 / inTopicNo.4)  Re[3]: Any CPU, x86, x64の違い
□投稿者/ Jitta on the way (117回)-(2008/06/20(Fri) 07:44:55)
No20926 (めろぱん さん) に返信
> ■No20922 (Jitta さん) に返信
>
> Jittaさん、ご回答ありがとうございます。
>
> 恥ずかしながら、基本が抜けておりました。
> ということは、64bitOS上で最終的に展開される機械語は
> x64:64bit用もAny CPU:32bit/64bit汎用も同じということですね。
> ありがとうございました。

確認の方法ですが、IsWow64 とかいう API があります(調べてね)。こいつを P/Invoke してみましょう。64bit 環境で false になれば、64bit コードが出来ています。
解決済み
引用返信 編集キー/


トピック内ページ移動 / << 0 >>

このトピックに書きこむ

過去ログには書き込み不可

管理者用

- Child Tree -