Architecture 为什么不是';有没有一种格式像fat二进制文件一样,允许一个可执行文件在同一体系结构上使用不同的指令集运行?

Architecture 为什么不是';有没有一种格式像fat二进制文件一样,允许一个可执行文件在同一体系结构上使用不同的指令集运行?,architecture,compiler-construction,format,executable,file-format,Architecture,Compiler Construction,Format,Executable,File Format,这将使为多个处理器优化二进制文件成为可能 如果做得好,它甚至不需要复制太多数据。如果我答对了问题,你所问的格式是针对同一系列的不同CPU优化的构建 这样做的缺点是需要更多的测试。你不太可能找到任何东西,但是如果你的最终构建错误地包含了错误版本的代码,那就太尴尬了 这些好处也可能不是很好:通常编译器会进行优化,以避免常见CPU体系结构的已知性能问题。您可能会争辩说,您的软件将受益于新硬件上的SSE指令,但如果您的应用程序要求太高,以至于即使在最新的硬件上也需要SSE指令,那么您的软件将几乎无法在旧

这将使为多个处理器优化二进制文件成为可能


如果做得好,它甚至不需要复制太多数据。

如果我答对了问题,你所问的格式是针对同一系列的不同CPU优化的构建

这样做的缺点是需要更多的测试。你不太可能找到任何东西,但是如果你的最终构建错误地包含了错误版本的代码,那就太尴尬了


这些好处也可能不是很好:通常编译器会进行优化,以避免常见CPU体系结构的已知性能问题。您可能会争辩说,您的软件将受益于新硬件上的SSE指令,但如果您的应用程序要求太高,以至于即使在最新的硬件上也需要SSE指令,那么您的软件将几乎无法在旧CPU上使用。

有些尝试,例如FatELF:这是针对不同的体系结构,不一样的拱门有不同的说明。我的假设是增加了5-10%。这通常不足以引起注意。不管怎么说,我的论点是,像我这样的许多人看不到什么好处,所以需求很少,所以没有格式。它试图回答这个问题。你希望从哪里得到什么样的答案?这并不是因为技术上不可能或其他原因。