Python
Java
PHP
IOS
Android
Nodejs
JavaScript
Html5
Windows
Ubuntu
Linux
“机器硬件”和“硬件平台”的区别
我的 Linux 机器报告 uname a 输出如下 root tom i386 uname a Linux tom 2 6 9 89 ELsmp 1 SMP Mon Apr 20 10 34 33 EDT 2009 i686 i686 i
Linux
hardware
cpuarchitecture
为什么64位cpu不存在高端内存?
当我试图了解 32 位 cpu 和 Linux 的高内存问题时 为什么没有高内存问题 https en wikipedia org wiki High memory对于64位CPU 特别是 虚拟内存分为内核空间和用户空间的划分是如何改变的
Linux
cpuarchitecture
virtualmemory
当执行 uop 计数不是处理器宽度倍数的循环时,性能是否会降低?
我想知道不同大小的循环在最新的 x86 处理器上如何执行 作为 uop 数量的函数 这里引用 Peter Cordes 的一段话 他在 中 中提出了非 4 倍数的问题另一个问题 https stackoverflow com a 31027
performance
Assembly
x86
cpuarchitecture
microoptimization
长延迟指令
I would like a long latency single uop x861 instruction in order to create long dependency chains as part of testing mic
Optimization
x86
cpuarchitecture
microoptimization
microbenchmark
Skylake 中干净缓存行的写回?
我观察到 Skylake SP 在真实硬件上对干净的缓存行进行写回 Leeor 对这篇文章的回答对于 Intel Core i3 i7 数据从缓存集中逐出后的去向 https stackoverflow com questions 1941
x86
intel
cpuarchitecture
cpucache
gcc 优化标志 -O3 使代码比 -O2 慢
我找到这个话题为什么处理排序数组比处理未排序数组更快 https stackoverflow com questions 11227809 why is processing a sorted array faster than an un
c
gcc
Optimization
cpuarchitecture
compileroptimization
为什么较长的管道会导致单个延迟槽不够用?
我在 Patterson Hennessy 的文章中读到了以下声明计算机组织与设计教科书 随着处理器使用更长的管道并在每个时钟周期发出多个指令 分支延迟变得更长 并且单个延迟槽是不够的 我可以理解为什么 每个时钟周期发出多个指令 会使单个延
cpuarchitecture
现代 x86 CPU 使用什么缓存一致性解决方案?
我对缓存一致性系统在现代多核 CPU 中的功能有些困惑 我已经看到基于侦听的协议 例如基于 MESIF MOESI 侦听的协议 已在 Intel 和 AMD 处理器中使用 另一方面 基于目录的协议对于多核来说似乎更加高效 因为它们不广播而是
x86
computerscience
cpuarchitecture
cpucache
MESI
L2 逐出时从 L1 缓存逐出缓存
我有一个关于内存系统遵循的策略的基本问题 考虑具有私有 L1 和 L2 缓存的核心 在二级缓存之后 我们有一个总线 一致性流量在该总线上运行 现在 如果地址 X 的缓存线从二级缓存中逐出 是否有必要从一级缓存中逐出该地址 驱逐的原因可能是它
caching
cpuarchitecture
memorysize
如何将数据直接写入显存?
程序员有什么办法可以直接将数据写入显存吗 我知道操作系统对此非常严格 但是某些类型的应用程序 例如视频播放器或电脑游戏 如何将其数据直接写入视频内存 我知道有很多知名的库 例如 OpenGL 但它们毕竟只是普通的库 它们和我和你写的程序没有
operatingsystem
videoprocessing
cpuarchitecture
计算三级缓存的实际/有效CPI
a 给定一个具有两级高速缓存 L1 和 L2 的内存系统 以下是规格 L1缓存命中时间 2个时钟周期 一级缓存命中率 92 L2 缓存的未命中惩罚 L2 的命中时间 8 个时钟周期 二级缓存命中率 86 主存丢失惩罚 37 个时钟周期 暂时
caching
cpuarchitecture
cpucache
Intel x86 与 AMD x86 CPU 上的访问性能不一致
我已经实现了一个带有结构内存布局数组的简单线性探测哈希图 该结构包含键 值和指示条目是否有效的标志 默认情况下 该结构体由编译器填充 因为键和值是 64 位整数 但该条目仅占用 8 个布尔值 因此 我也尝试以未对齐访问为代价来打包结构 由于
x8664
intel
cpuarchitecture
memoryalignment
amdprocessor
虚拟化页表的工作原理
阅读有关虚拟化页表概念的内容 其中部分页表放入虚拟内存中 维基百科 https en wikipedia org wiki Page table Virtualized page table以及 Patterson 和 Hennessy 页
cpuarchitecture
virtualmemory
在 Linux 上以编程方式获取准确的 CPU 缓存层次结构信息
我试图获得 Linux 上当前 CPU 的数据缓存层次结构的准确描述 不仅是各个 L1 L2 L3 可能还有 L4 数据缓存的大小 还包括它们在不同系统之间分割或共享的方式核心 例如 在我的 CPU AMD Ryzen Threadripp
c
Linux
cpuarchitecture
cpucache
为什么指令高速缓存对齐可以提高组相联高速缓存实现的性能?
我有一个关于指令缓存对齐的问题 我听说 对于微优化 对齐循环使其适合缓存行可以稍微提高性能 我不明白为什么那会有什么作用 我了解缓存命中的概念及其对计算速度的重要性 但似乎在组关联缓存中 相邻的代码块不会映射到同一个缓存组 因此 如果循环跨
cpuarchitecture
memoryalignment
cpucache
microoptimization
核心和处理器之间的区别
核心和处理器有什么区别 我已经在谷歌上寻找过它 但我只得到了多核和多处理器的定义 这不是我正在寻找的 核心通常是 CPU 的基本计算单元 它可以运行单个程序上下文 如果支持硬件线程 例如 Intel CPU 上的超线程 则可以运行多个程序上
CPU
Core
cpuarchitecture
驱动程序如何使用 MONITOR 指令(_mm_monitor 内在函数)?
我正在探索使用MONITOR指令 或等效的内在指令 mm monitor 尽管我找到了描述它们的文献 但我找不到任何关于如何使用它的具体示例 样本 任何人都可以分享如何在驱动程序中使用该指令 内在的示例吗 本质上 我想用它来观察内存范围 T
x86
Driver
cpuarchitecture
SMP
.csproj 的平台特定 ItemGroup 适用于程序集引用,但不适用于内容包含?
由于我们有三个显式 x86 和 x64 版本的程序集 因此我编辑了相应的 csproj 文件以使用 例如 如下所示的块
NET
assemblies
cpuarchitecture
屏障/栅栏以及获取、释放语义是如何在微架构上实现的?
很多问题以及文章 书籍 例如https mirrors edge kernel org pub linux kernel people paulmck perfbook perfbook 2018 12 08a pdf https mirr
x86
x8664
cpuarchitecture
memorybarriers
microarchitecture
CPU 和数据对齐
如果您觉得这个问题已经被回答了很多次 请原谅我 但我需要以下问题的答案 为什么数据必须对齐 在 2 字节 4 字节 8 字节边界上 这里我的疑问是 当CPU有地址线Ax Ax 1 Ax 2 A2 A1 A0时 很有可能按顺序寻址内存位置 那
c
Alignment
cpuarchitecture
processor
«
1
2
3
4
5
6
...13
»