我很好奇,新编译器是否使用新 CPU 中内置的一些额外功能,例如 MMX SSE、3DNow!所以?
我的意思是,在最初的 8086 中甚至没有 FPU,所以旧的编译器甚至不能使用它,但是新的编译器可以,因为 FPU 是每个新 CPU 的一部分。那么,新的编译器是否使用了 CPU 的新特性?
或者,更应该问的是,新的 C/C++ 标准库函数是否使用了新特性?
感谢您的回答。
编辑:
好的,所以,如果我让你们所有人都说对了,即使是一些标准操作,尤其是浮点数,也可以使用 SSE 更快地完成。
为了使用它,我必须在我的编译器中启用这个特性,如果它支持的话。如果是这样,我必须确保目标平台支持该功能。
对于某些需要顶级性能的系统库,如OpenGL、DirectX等,系统可能会支持这种支持。
默认情况下,出于兼容性原因,编译器不支持它,但您可以使用 Intel 等提供的特殊 C 函数添加此支持。这应该是最好的方式,因为您可以直接控制天气,当您使用所需平台的特殊功能时,可以编写支持多 CPU 的应用程序。