95705


Windows7などの当時環境用に開発されたアプリケーションなどをWin10やWin11で実行する場合、総じて動作が重くなるものでしょうか。

どのソフトは重くなるなど、名指しではなく一般論としてお伺いします。

CPUの処理速度などは向上しているので重くなるイメージがありませんがいかがでしょうか。

追記：具体的なソフトについて  
ゲームソフトになりますが、機動戦士ガンダムバトルオペレーション2のSteam版が5月頃にリリースされ、手元の旧PCで実行したところ、実測値4FPSと非常にレンダリングを中心にシステムが非常に重く、新PCに切り替えるまで使えたものではありませんでした。

操作設定メニュー内などの描画負荷が軽いはずの項目でさえFPSの改善が見られず、疑問に思った次第です。（バックグラウンドで描画し続けている？のが原因か）

公式が推奨する最低スペックを少し上回る程度の性能の旧PCですが、公式は最低スペックで30FPSが出力できると書いており、色々と調べてみたところ、PS3版？などの旧環境のプログラムをSteamへ移植をしただけの疑いが強いようです。

もちろんPlayStation版に最適化されているプログラムを完全にPC版へ最適化できていないのが原因とは思いますが、EscapeFromTarkovなどのより負荷の高いゲームは普通に動作します。ガンダムよりも描画品質を上げた状態で45FPSは出力できており、PCの性能不足と考えるにはやや疑問が残ります。

そう考えると正しい環境ではない状態でソフトウェアを互換で実行しているだけだと考えられますが、重い原因は他に考えられるでしょうか。

ガンダムの公式システム要件  
最低:  
64 ビットプロセッサとオペレーティングシステムが必要です  
OS: Windows 10 64-bit  
プロセッサー: Intel Core i5-3470 / AMD Ryzen 3 1200  
メモリー: 8 GB RAM  
グラフィック: NVIDIA GeForce GTX 1050 Ti / Radeon R9 280X  
DirectX: Version 11  
追記事項: グラフィック「低」設定で、1080p／30fpsのゲームプレイが可能。

推奨:  
64 ビットプロセッサとオペレーティングシステムが必要です  
OS: Windows 10 64-bit  
プロセッサー: Intel Core i5-3470 / AMD Ryzen 3 1200  
メモリー: 8 GB RAM  
グラフィック: NVIDIA GeForce GTX 780 / Radeon RX 570  
DirectX: Version 11  
追記事項: グラフィック設定「高」で、1080p／30fps安定でのゲームプレイが可能。FPSの上限設定なし。

私の旧PCのシステム  
OS：Win11 64bit  
CPU：i7-12000番台  
RAM：32GB  
グラボ：GTX1060Ti  
アプリデータはSSD保管  
のゲーミングノート型PC  
描画設定最低＋最小ウィンドウサイズで実行時4FPS


CC BY-SA 4.0
2023-07-20T06:34:18.293
95704
2023-07-20T08:46:55.110
2023-07-20T07:58:22.203
3060
51823
question
windows
古いアプリを互換モードで新環境上で動作させると動作は重くなる？


※回答者は有識者ではありません。回答に間違いを含んでいる可能性があります。  
※オフトピックかもしれませんが、興味のある内容なのでリビジョン1に合わせて回答しました。

一般論として、総じて動作が軽くなる傾向にあるという認識です。  
なぜならOS自体も.NETランタイムも通常のアプリケーションに対して速度向上と後方互角性の確保を意識しながらバージョンアップを行っているからです。

アプリケーションの速度に影響を与える要因として、OS自体の他にどのランタイムを使っているのかも挙げられます。  
Win32APIを直接コールするC++やアセンブラ言語などのプログラムは今や主流でなく、多くのプログラムにはC#やJavaなどの中間言語を使ったランタイムが用いられています。  
OSのバージョンアップに伴ってWindowsに組み込まれている.NETも自動的にバージョンが上がりますし、Javaなどのサードパーティー製ランタイムも新しいOSには新しいバージョンのランタイムを入れることが一般的です。

同一のアプリケーションを異なるランタイムで動作させた場合、通常は新しいランタイムで動作させた方が速くなることが多いです。  
DirectXなどの描画フレームワークも同様です。

  * [.NET 6と.NET Framework 4.8でパフォーマンスを比較してみる（SPREAD for Windows Forms）](https://devlog.grapecity.co.jp/spread-windows-forms-dotnet6-performance/)
  * [How much faster is Java 17?](https://logico-jp.io/2021/10/04/how-much-faster-is-java-17/)
  * [Python3.11が高速化しているかベンチマークしてみた](https://dev.classmethod.jp/articles/benchmark-test-python3-11/)
  * [Direct3D12 vs Direct3D9/11 速度比較](https://barepixel.co.jp/?p=1580)

このことから冒頭の認識で通常は問題ないと思います。  
CPUやメモリも視野に入れると際限ありませんが、スペック向上がボトルネックで速度が低下することは考えにくいです。

もしも古いアプリケーションの体感速度が大幅に下がる場合は下記の原因が考えられるかもしれませんが、一般論は対策としてほとんど役に立たないので作成元に確認するかサポート期限切れの古いOSを
**オフラインで** 使うことを検討するのが手っ取り早いと思います。

  * 新OSの潜在バグを踏んで目に見えない例外処理が発生している 
    * バージョンアップで改善されるかも
  * 従来のスペックに合わせてガチガチに最適化されている 
    * ソースコードがあるなら新OSでビルドしなおすと速くなるかも
  * 期待ほど速くなっていないけれど実は速くなっている 
    * 使い続けて慣れれば解決するかも
  * DB接続やネットワークなどのDLLを用いた通信が新規格に対応しておらずボトルネックになっている 
    * あきらめる。もしくは **多大なリスク** を承知でDLLを入れ替えて祈る


CC BY-SA 4.0
2023-07-20T07:47:06.037
95705
2023-07-20T07:47:06.037
9820
95704
answer


最近のアップデートで高レポートレートのマウスのための調整をしているらしいので、その影響かもしれません。


CC BY-SA 4.0
2023-07-20T08:46:55.110
95706
2023-07-20T08:46:55.110
50767
95704
answer