Visual C++ 优化器对可用内存量敏感吗?

问题描述 投票:0回答:1

事实证明,当使用完全相同的编译器/环境/任何设置重新编译相同的程序时,C++ 编译器发出不同的机器代码是完全有效的。这意味着编译器优化器可以根据各种因素(包括可用内存量)来决定优化的“深度”。

有谁有证据证明 Visual C++ 是否根据可用内存量执行不同的优化?

c++ optimization visual-c++
1个回答
1
投票

如果您问“当我在具有 1Gb RAM 的计算机和具有 4Gb RAM 的计算机上运行编译器本身时,MSVC 会发出不同的输出吗?”答案是理论上“可以”,但根据我们的经验,事实并非如此。我们对应用程序中代码生成的小细节非常敏感,因此我们测试了 MSVC 在各种不同配置(从 1Gb WinXP 计算机到 8Gb Win7 计算机)下的行为。据我们所知,MSVC 会根据需要分配尽可能多的内存,如果内存用完,就会崩溃。

© www.soinside.com 2019 - 2024. All rights reserved.