发布时间:2026/8/19 1:01:03
Win32核心编程 读书笔记三 高速缓存行 是做一个整天If else的码农还是做一个real coder区别就在于后者掌握更多的基础原理和细节实现能力。高速缓存行的使用优化是正对多CPU而言的但是如今还有什么东西不是多CPU了呢。当一个C P U从内存读取一个字节时它不只是取出一个字节它要取出足够的字节来填入高速缓存行。高速缓存行由3 2或6 4个字节组成视C P U而定并且始终在第3 2个字节或第6 4个字节的边界上对齐。高速缓存行的作用是为了提高C P U运行的性能。通常情况下应用程序只能对一组相邻的字节进行处理。如果这些字节在高速缓存中那么C P U就不必访问内存总线而访问内存总线需要多得多的时间。注很显然CPU从内存取数据是一个物理行为取的字数不受软件控制的。注所以我们最好把同一时间需要读写的数据放在同一个缓存行中避免频繁的更新高速缓存行在多CPU系统中数据的同步也是个问题。如果一个数据每个CPU的高速缓存都存有该数据的副本如果一个CPU改变了该值那么就会出现一个问题其他的CPU哪怕没有用该数据也要重新读取缓存行。所以我们要尽量避免不相关的数据在一起。原书中的例子现场好的描述了这个问题我在稍加注释贴出来糟糕的代码方式 我们大部分新手都是这么写的吧哈哈struct CUSTINFO { DWORD dwCustomerID; //Mostly read-only int nBalanceDue; //Read-write char szName[100]; //Mostly read-only FILETIME ftLastOrderDate; //Read-write };上面只读的数据和读写的数据交错排序。上文说了不相关的数据不放一起只读的数据和读写数据也不放在一起为了一个读写数据的改变而频繁的读取只读数据是不划算的。优秀的代码#ifdef _X86_ #define CACHE_ALIGN 32 #endif #ifdef _ALPHA_ #define CACHE_ALIGN 64 #endif #ifdef _IA64_ #define CACHE_ALIGN ?? #endif #define CACHE_PAD(Name, BytesSoFar) \ BYTE Name[CACHE_ALIGN - ((BytesSoFar) % CACHE_ALIGN)] struct CUSTINFO { DWORD dwCustomerID; // Mostly read-only char szName[100]; // Mostly read-only //Force the following members to be in a different cache line. CACHE_PAD(bPad1, sizeof(DWORD) 100); int nBalanceDue; // Read-write FILETIME ftLastOrderDate; // Read-write //Force the following structure to be in a different cache line. CACHE_PAD(bPad2, sizeof(int) sizeof(FILETIME)); };CACHE_PAD的作用就是填充高速缓存行让不相关的数据存在下一个高速缓存中。所以如果我们编码多注意这些细节代码的质量就会更高谢谢你的阅读

相关新闻

2026/8/19 1:01:03

可穿戴电磁场检测设备Fany Watch:从传感器选型到用户体验设计

1. 项目概述:当可穿戴设备成为“电磁感知”的延伸几年前,我还在为一个智能家居项目做电磁兼容性(EMC)测试,那会儿需要扛着笨重的频谱分析仪和近场探头,在实验室里一点点扫描电路板,寻找那个导致…

2026/8/19 1:01:03

Vmware虚拟机三种网络模式详解

前言 由于Linux目前很热门,越来越多的人在学习linux,但是买一台服务放家里来学习,实在是很浪费。那么如何解决这个问题?虚拟机软件是很好的选择,常用的虚拟机软件有vmware workstations和virtual box等。在使用虚拟机…

2026/8/19 1:01:03

可穿戴电磁环境监测手表设计:从多频段感知到低功耗实现

1. 项目概述:当可穿戴设备成为你的“电磁雷达”几年前,我身边一位从事精密电子研发的朋友,因为长期头痛和失眠跑遍了各大医院,最终所有生理指标都显示正常。直到一次偶然的机会,他避开所有电子设备去山里住了几天&…

2026/8/19 2:01:06

C++动态规划空间优化:滚动数组原理与实战详解

1. 从“空间换时间”到“时间换空间”的思维转变动态规划(Dynamic Programming, DP)是算法竞赛和面试中的常客,也是很多开发者又爱又恨的话题。爱的是,一旦掌握了其核心的“状态”与“转移”思想,很多复杂问题都能迎刃…

2026/8/19 2:01:06

构建工具 构建优化与工程规范治理:性能数据怎样看才不误判

构建工具 构建优化与工程规范治理:性能数据怎样看才不误判 构建变慢可能来自转译、依赖图、缓存或 CI 环境。先保存 profile、模块体积和环境信息,再比较单项改动的影响。 本文中的命令和数据格式用于说明采集流程,不代表某个项目的构建结果。…

2026/8/19 2:01:06

测试CS5550 双通道24bit ADC, 该芯片已经停产

CS5550 用于电子秤应用的2通道,低成本ADC AD\Test\2026\August\testcs5550ciu32F003.SchDoc 01 【测试CS5550】 一、设计背景 手边还有很多这个便宜的 24比特的 ADC转换器,  他的型号为 CS5550 , 现在已经停产了。 后面需要利用它制作一个…

2026/8/19 2:01:06

全栈开发从原型到上线的完整闭环:从最小方案开始验证

全栈开发从原型到上线的完整闭环:从最小方案开始验证 全栈项目的第一版需要避免两种极端:过早引入难以维护的基础设施,或省略输入校验、错误处理等基本边界。 本文给出最小可用方案的组成,并把后续扩展条件写清楚。1. 最小方案的边…

2026/8/19 2:01:06

前端工程化与微前端架构方案落地:版本升级时容易漏掉哪些检查

前端工程化与微前端架构方案落地:版本升级时容易漏掉哪些检查 微前端基座升级时,要检查共享依赖的单例约束、样式作用域和沙箱边界。应用隔离不意味着 React 等运行时依赖可以任意组合。 本文用 shared 配置举例说明排查方向;错误信息和版本号…

2026/8/19 1:56:05

基于nRF52840与DS18B20的低功耗蓝牙温度监测系统设计与实现

1. 项目概述:为什么我们需要一个“会思考”的葡萄酒温度传感器?如果你是一个葡萄酒爱好者,或者经营着一家小型的葡萄酒吧、餐厅,你肯定知道温度对葡萄酒意味着什么。一瓶顶级的赤霞珠,如果储存在超过20度的环境里&…

2026/8/17 10:49:52

工业通信系统底层逻辑:04 反射——高频能量撞墙之后会发生什么?

第四篇:反射——高频能量撞墙之后会发生什么? —— 你以为信号已经过去了,其实它正在回来打你 老Q的现场笔记 第五季,我们正式进入工业神经系统层。这里不再是单个设备的战斗,而是整个工厂“经脉”层面的秩序之战。从这一篇开始,你将第一次看清:看似简单的信号传播,背…

2026/8/18 6:58:27

工业传感器与变送器详解:序章 从物理世界到工业数据

序章 从物理世界到工业数据 ——重新认识工业传感器与变送器 工业自动化系统正变得日益复杂。今天的工业现场早已不是简单的控制回路,而是由多层技术共同构成的立体体系:PLC、DCS、SCADA、MES、工业互联网、边缘计算与人工智能。控制系统可以执行复杂算法,工业网络可以实现…

2026/8/19 0:00:35

【单片机课程设计/毕业设计】基于 STM32 与 WiFi 模块的室内通风智能管控系统设计 基于 STM32 的人体存在感知自适应风扇控制系统设计(018503)

博主介绍:✌️码农一枚 ,专注于大学生项目实战开发、讲解和毕业🚢文撰写修改等。全栈领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于嵌入式单片机,Java、小程序技术领域和毕业项目实战 ✌️…

2026/8/19 0:00:35

AI如何驱动数学猜想生成:从大语言模型到自动化数学发现

1. 项目概述:当AI开始“猜”数学定理 最近在AI研究圈里,一个名为“Moonshine”的项目引起了不小的讨论。这名字本身就挺有意思,直译是“月光”,但在数学史上,它特指一个神秘而美丽的联系——魔群月光猜想,连…

2026/8/19 0:00:36

Agentic Web:构建智能体原生网络的基础设施挑战与四大支柱

1. 从“被动网络”到“能动网络”:一个正在发生的范式转移 如果你最近关注AI和Web技术的前沿动态,可能会频繁听到“Agentic Web”这个词。它不像“Web3”那样带着浓厚的金融色彩,也不像“元宇宙”那样充满科幻感,但它所描绘的未来…

2026/8/18 18:23:10

实测才敢推 AI论文网站 2026最新测评与推荐

2026年真正好用的AI论文网站,核心看生成的论文质量、低AI味、格式正确、学术适配四大指标。综合实测,千笔AI、ThouPen、豆包、DeepSeek、Grammarly 是当前最值得推荐的梯队,覆盖从免费到付费、从中文到英文、从文科到理工的全场景需求。一、综…

2026/8/17 17:27:06

2026必备!AI论文网站测评:最新推荐与深度对比

2026年真正好用的AI论文网站,核心看生成的论文质量、低AI味、格式正确、学术适配四大指标。综合实测,千笔AI、ThouPen、豆包、DeepSeek、Grammarly 是当前最值得推荐的梯队,覆盖从免费到付费、从中文到英文、从文科到理工的全场景需求。 一、…

2026/8/18 7:12:40

摆脱论文困扰!盘点2026年全网爆红的的AI论文写作工具

一天写完毕业论文在2026年已不再是天方夜谭。2026年最炸裂、实测能大幅提速的AI论文写作工具,覆盖选题构思、文献整理、内容生成、格式排版等核心场景,真正帮你高效搞定论文难题。 一、全流程王者:一站式搞定论文全链路(一天定稿首…