web-dev-qa-db-ja.com

32ビットを超えるVisual Studio Codeの64ビットの定量化可能な利点は何ですか

私はハードウェアの男ではありませんが、64ビットバージョンの問題のリクエストでVisual StudioがMicrosoftによって拒否され、64ビットバージョンではパフォーマンスが良くないと述べています。

私が明らかだと思う2つの間の2つの顕著な違いは、コードベースです。 1つは1997年に始まり、Visual Studio側の手荷物が増え、非常に最新のアプリケーションアーキテクチャとコードを使用する機会が少なくなり、32ビット以上のパフォーマンスを実現するのが難しくなる可能性があります理由は64ビットに適していませんか?知りません。

一方、Visual Studio Codeは最新のElectronアプリです。つまり、HTMLをコンパイルしただけです。 CSSとJavaScript。私は、Visual Studio Codeのバージョンに障害物をほとんど持たないように賭けています。パフォーマンスは本当に目立つものではないかもしれませんが、なぜですか。

P.S。

私はまだ、どの領域がパフォーマンスが改善される可能性があるか、そしてその改善が開発者にとって無視できるかどうかを理解したいと思います。あなたが知っているかもしれない追加の情報や楽しい事実は素晴らしいでしょう私は可能な限り多くの情報を持ちたいです、そして言及されていない私が発見した難しい事実で質問を更新します。

22
Eric Bishard

私はWindowsであまり作業していませんが、x86、x64、およびARM(32ビットおよび64ビットの両方の命令セットサイズ)プロセッサと対話しました。コードを書く前の経験に基づきます。 64ビット形式の場合:64ビットサイズの命令が本当に必要なのか?操作を32ビット以内で実行できる場合、なぜさらに32ビットが必要なのか?

次のように考えてください。64ビットアドレスと64ビットデータバス、および64ビットサイズのレジスタを備えたプロセッサがあります。プログラムのほとんどすべての命令には、最大32ビットが必要です。あなたは何をしますか?さて、私は今2つの方法があると思います:

  1. プログラムの64ビットバージョンを作成し、64ビットプロセッサですべての32ビット命令を実行します。 (各命令サイクルで32ビットまたはプロセッサを浪費し、プログラムカウンタを4バイト先のアドレスで埋めます)。 256 MBのRAMで実行された可能性のあるアプリケーション/プログラムは、512 MBを必要とします。これにより、RAM 。

  2. プログラム形式を32ビットのままにし、2つの32ビット命令を組み合わせて64ビットプロセッサにプッシュして実行します。

明らかに、2番目のアプローチは同じリソースでより高速に実行されます。

ただし、プログラムに実際に64ビットのサイズの命令がさらに含まれている場合は、そうです。例えば4Kビデオの処理(64ビット命令セットを備えた64ビットプロセッサ上で)または最大15桁の10進精度で浮動小数点演算を実行するなど。その後、64ビットプログラムファイルを作成することをお勧めします。

簡単に言えば、コンパクトなソフトウェアを作成し、ハードウェアを可能な限り活用するようにしてください。

これまでのところ、私が読んだもの HereHere および Here ; VSのコンポーネントのほとんどが32ビットの命令サイズしか必要としないことを知りました。

それが説明することを願っています。

ありがとう

2
Manoj