为通用x86 / 64和Xeon或其他版本编译的Linux内核之间有什么区别

彼得

在linux内核配置中,可以选择更改CPU系列,大多数预编译的内核是generic x86/64

我有一个Xeon E3 CPU,所以我想知道如果我选择Core duo/Newer Xeon那里会发生什么

这里到底有什么区别?为我的CPU系列而不是通用内核编译内核有什么意义吗?为Xeon优化的内核甚至可以在非Xeon CPU上运行吗?有人曾经衡量过性能差异吗?

迈奥

它将选择相应的配置选项(来自arch / x86 / Kconfig.cpu):

config MCORE2
     bool "Core 2/newer Xeon"

一般来说,CONFIG_MCORE2-mtune=core2在32位版本上启用编译器选项,并且-march=core2(可以在Makefilesarch/x86/Makefile和中找到arch/x86/Makefile_32.cpu)。

这些选项在GCC手册页中进行了说明:

-march=cpu-type

为计算机类型cpu-type生成指令。与-mtune = cpu-type(仅针对指定的cpu-type调整生成的代码)相反,-march = cpu-type允许GCC生成可能根本不在所示处理器上运行的代码。

指定-march = cpu-type意味着-mtune = cpu-type。

核心2

具有64位扩展,MMX,SSE,SSE2,SSE3和SSSE3指令集的Intel Core 2 CPU。

说到该编译选项对应用程序性能的总体影响,它应该相对较低:

  • 在内核中,总体架构很重要。即,争用锁很容易破坏性能,而无锁的数据结构有助于获得性能。它们不管编译器选项如何工作。
  • 内核中有少量操作需要通过该优化启用的SIMD操作(可能除外复制数组或字符串)。内核中很少有CPU密集型操作。但是对缓存行大小的优化可能效果很好。
  • 对于非内核绑定的应用程序,这些应用程序大部分时间都花在用户空间上,因此很少使用该优化的系统调用来调用内核也就是说,对于仅在内核上花费10%的应用,其内核性能可提高2%,您的整体性能只会提高0.2%。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类常见问题

Intel x86 Atom和Atom_64系统映像之间有什么区别?

来自分类Dev

x86和x64体系结构的汇编语言之间有什么区别?

来自分类Dev

x86和x64中的ret指令有什么区别?

来自分类Dev

使用Android NDK为x86编译FFmpeg 3.1.1

来自分类Dev

为ARM和x86构建Qt

来自分类Dev

x86 NOP和FNOP指令之间有什么区别?

来自分类Dev

wine(x86)和wine(amd64)有什么区别?

来自分类Dev

使用并行任务时,x86和x64中的数据类型有什么区别

来自分类Dev

使用并行任务时,x86和x64中的数据类型有什么区别

来自分类Dev

在x86中将字符串定义为字节(db)和将字符串定义为单词/双字(dw / dd)有什么区别

来自分类Dev

为x64和x86(并行安装)构建OpenSSL吗?

来自分类Dev

为 x86 和 x64 架构注册 .msi(安装项目)

来自分类Dev

i686和x86_64软件包之间有什么区别?

来自分类Dev

基准软件,x86和x64之间有区别吗?

来自分类Dev

X86程序集:.text.startup节和.text节有什么区别

来自分类Dev

为Android x86和x86_64体系结构编译ijkplayer x264,错误:未知类型名称'v4si'

来自分类Dev

有条件地为x86和mips构建go源码

来自分类Dev

CUDA的x64与x86

来自分类Dev

Office x86与x64

来自分类Dev

CUDA的x64与x86

来自分类Dev

ASM x86函数调用:保存EBP和通用寄存器(EAX,EBX等)的最佳方法

来自分类Dev

ASM x86函数调用:保存EBP和通用寄存器(EAX,EBX等)的最佳方法

来自分类Dev

英特尔x86原子系统映像与Google API(x86系统映像)之间有什么区别

来自分类Dev

Red Hat Enterprise Linux Server(3.10.0-514.e17.x86_64)7.3(Maipo)和`(0-rescue-bc0bxxxxx)`之间有什么区别?

来自分类Dev

x86:将操作注册为内存内容和内存地址?

来自分类Dev

AMD x86 和 Intel x86 之间的 MSR 差异是什么?

来自分类Dev

在同一构建事件中将“WPF 应用程序”构建为 x86 和 x64

来自分类Dev

跳远和跳远之间的区别(x86)

来自分类Dev

x86中DPL和RPL之间的区别

Related 相关文章

  1. 1

    Intel x86 Atom和Atom_64系统映像之间有什么区别?

  2. 2

    x86和x64体系结构的汇编语言之间有什么区别?

  3. 3

    x86和x64中的ret指令有什么区别?

  4. 4

    使用Android NDK为x86编译FFmpeg 3.1.1

  5. 5

    为ARM和x86构建Qt

  6. 6

    x86 NOP和FNOP指令之间有什么区别?

  7. 7

    wine(x86)和wine(amd64)有什么区别?

  8. 8

    使用并行任务时,x86和x64中的数据类型有什么区别

  9. 9

    使用并行任务时,x86和x64中的数据类型有什么区别

  10. 10

    在x86中将字符串定义为字节(db)和将字符串定义为单词/双字(dw / dd)有什么区别

  11. 11

    为x64和x86(并行安装)构建OpenSSL吗?

  12. 12

    为 x86 和 x64 架构注册 .msi(安装项目)

  13. 13

    i686和x86_64软件包之间有什么区别?

  14. 14

    基准软件,x86和x64之间有区别吗?

  15. 15

    X86程序集:.text.startup节和.text节有什么区别

  16. 16

    为Android x86和x86_64体系结构编译ijkplayer x264,错误:未知类型名称'v4si'

  17. 17

    有条件地为x86和mips构建go源码

  18. 18

    CUDA的x64与x86

  19. 19

    Office x86与x64

  20. 20

    CUDA的x64与x86

  21. 21

    ASM x86函数调用:保存EBP和通用寄存器(EAX,EBX等)的最佳方法

  22. 22

    ASM x86函数调用:保存EBP和通用寄存器(EAX,EBX等)的最佳方法

  23. 23

    英特尔x86原子系统映像与Google API(x86系统映像)之间有什么区别

  24. 24

    Red Hat Enterprise Linux Server(3.10.0-514.e17.x86_64)7.3(Maipo)和`(0-rescue-bc0bxxxxx)`之间有什么区别?

  25. 25

    x86:将操作注册为内存内容和内存地址?

  26. 26

    AMD x86 和 Intel x86 之间的 MSR 差异是什么?

  27. 27

    在同一构建事件中将“WPF 应用程序”构建为 x86 和 x64

  28. 28

    跳远和跳远之间的区别(x86)

  29. 29

    x86中DPL和RPL之间的区别

热门标签

归档