假设你有一个长字符串,并且希望每 72 个字符插入一个换行符。如…
分类: Daniel Lemire
处理器越来越宽
我们的处理器基于时钟执行指令。因此,4 GHz 处理器每秒执行 …
在 macOS 下使用 Visual Studio Code 调试 C++
我最喜欢的文本编辑器是 Visual Studio Code。我…
可预测的内存访问速度更快
从内存加载数据通常需要几纳秒。在处理器等待数据期间,它可能被迫等…
我们为什么需要 SIMD 指令?
上周,我和一位学生聊天,解释了什么是 SIMD 指令。我强调的是…
未对齐数据的点积
我一直以来最受欢迎的博客文章之一是“数据对齐提升速度:神话还是现…
为什么衡量生产力很困难
研究生产力很有挑战性。大约15到20年前,我对自己生产力非常痴迷…
内存级并行性:Apple M2 与 Apple M4
2022 年推出的 Apple M2 和 2024 年推出的 A…
探索 C++26 的编译时反射
Herb Sutter 刚刚宣布结论:C++26,即 C++ 的…
加拿大各省男性的预期寿命
在北美,我的家乡魁北克省的预期寿命略高于全国其他地区。但它同时也…
梅特卡夫定律与布鲁克斯定律
Python 的创始人 Guido van Rossum 最近表…
使用 z3 进行快速字符分类
我们经常需要快速对字符进行分类。例如,考虑如何将通过电子邮件发送…
使用 z3 快速进行字符分类
我们经常需要快速对字符进行分类。例如,考虑如何将通过电子邮件发送…
软件开发人员的就业市场正在崩溃吗?
人们一直担心人工智能 (AI) 可能会淘汰软件开发人员,尤其是在…
模型和科学
古希腊人构建了非凡的模型,至今仍引起人们的共鸣。例如,托勒密的地…
将数组划分为适当大小的块
假设你有一个包含 N 个元素的数组,你想将其分成 M 个块。例如…
从 C++ 中的函数返回多个值(C++23 版)
许多编程语言(例如 Go 编程语言)都旨在轻松地从函数一次返回多…
使用 C++ 和 AI 随时随地生成有用的命令
几周前,我参加了一个软件工程研讨会,重点讨论大型语言模型在编程中…
C++20 更好的编译器错误概念
在 C++ 中,模板允许函数和类在不牺牲类型安全的情况下操作不同…
简化迭代:探索 C++20 中的键和值
在软件中,我们经常使用键值数据结构,其中每个键都是唯一的并映射到…