From 73 items, 13 important content pieces were selected
- Dan Luu 呼吁开发者打造更具野心的软件 ⭐️ 8.0/10
- Sebastian Raschka 发布 11 小时推理模型构建视频课程 ⭐️ 8.0/10
- C++26 标准在国家机构投票中被否决,堪称史无前例的挫折 ⭐️ 8.0/10
- 十年前的 Inception v3 卷积网络在皮肤癌诊断上胜过前沿大模型 ⭐️ 7.0/10
- OpenAI 与 Anthropic 大幅下调大模型 API 价格,降幅最高达 80% ⭐️ 7.0/10
- 俄勒冈警方为一名警员的记录开出 250 万美元、相当于 21 年工时的报价 ⭐️ 7.0/10
- 三星电视 root shell 与机器学习追踪传闻引发 Hacker News 激烈质疑 ⭐️ 7.0/10
- React 19.3 新增 browser() API,让“仅客户端渲染”成为一等公民 ⭐️ 7.0/10
- 2021 年 glibc 更新如何意外破坏 Chromium 音频 ⭐️ 7.0/10
- 博客探讨在 2 美元 ESP32-S3 上用 SIMD 加速计算机视觉 ⭐️ 7.0/10
- 如何在 12.5 MHz 处理器上运行城市建造游戏 ⭐️ 7.0/10
- 印度政府网站被曝仍在使用已吊销的 eMudhra 证书 ⭐️ 7.0/10
- 文章探讨 SIMD 技术在 Go 中的应用方式 ⭐️ 7.0/10
Dan Luu 呼吁开发者打造更具野心的软件 ⭐️ 8.0/10
Dan Luu 发表了新文章《We should be more ambitious with the software we build》,认为借助 AI 编程工具,过去被认为规模过大、成本过高的项目如今对个人开发者而言已变得可行。该文登上 Hacker News 首页,获得约 749 分和近 695 条评论,围绕 AI 生成代码、可维护性与差异化展开讨论。 这篇文章反驳了当下流行的小步快跑、增量式项目文化,呼吁开发者在 AI 降低构建成本之后重新思考什么才值得去做。由于 Luu 是拥有大量读者的工程评论者,他的论点直接介入了业界关于 AI 编程助手究竟是提升产出质量还是仅仅提升产出数量的争论。 Luu 的核心主张是有条件的,并非对 AI 的一味背书:评论者特别引用他的观点,即用 AI 加速某个流程可能产出混乱、过拟合的代码,这类代码泛化能力差且日后难以维护。讨论还强调,诸如更快的 ripgrep 或 Postgres 之类的纯性能提升只是手段而非目的,本身并不构成野心。
hackernews · ltratt · Oct 24, 21:47 · 社区讨论
背景: Dan Luu 是一位软件工程师兼长期博客作者,以在 danluu.com 上发表的关于工程实践、招聘和软件经济学的数据驱动型文章而闻名。他的新文发布于 AI 编程智能体(能够自主生成和修改代码的工具)兴起之际,这类工具已使讨论焦点从“AI 能否写代码”转向“AI 写的代码有多易维护、多可靠”。Hacker News 讨论中提到的“更快的马”典故源自据传出自亨利·福特的名言——顾客想要的是更快的马而非汽车——这里用来论证优化既有工具的价值不如重新思考问题本身。
社区讨论: 评论情绪褒贬交织但颇具实质:一些评论者表示 AI 让他们终于能完成那些早已有想法和架构却无暇实现的副业项目,另一些人则警告说 LLM 已在他们的工作场所用混乱、对特定用例过拟合的代码把应用“固化”了。数人认为真正的野心在于差异化——找到只有你能定义的那件事——还有评论者指出,在科技圈之外,消费设备上的日常软件质量依然差得惊人。
标签: #software-engineering, #software-quality, #AI-coding, #Hacker-News, #technology-commentary
Sebastian Raschka 发布 11 小时推理模型构建视频课程 ⭐️ 8.0/10
Sebastian Raschka 发布了一套超过 11 小时的完整视频课程,讲解如何使用 Python 和 PyTorch 从零构建推理模型,内容涵盖评估、推理时扩展、强化学习和蒸馏。 对于希望实际了解现代推理大模型背后技术的工程师和研究人员来说,这是一份及时且注重动手实践的教育资源,而不只是高层次的研究综述。 该课程以编码实践为核心,包含超过 11 小时的视频,并用 Python 和 PyTorch 实现了评估、推理时扩展、强化学习和蒸馏等专门章节。
rss · Ahead of AI (Sebastian Raschka) · Oct 24, 11:14
背景: 推理模型是经过训练的大语言模型,用于解决需要多步中间推理而非单一直接答案的任务。推理时扩展通过在生成阶段分配更多计算资源来提升性能,而蒸馏则把较大教师模型的能力迁移到较小的学生模型中。这些技术与强化学习一起,是构建和改进现代推理大模型的核心方法。
参考链接
标签: #reasoning models, #LLM, #reinforcement learning, #PyTorch, #educational course
C++26 标准在国家机构投票中被否决,堪称史无前例的挫折 ⭐️ 8.0/10
长期参与 ISO C++ 标准化工作的 Robert Seacord 报告称,C++26 的投票已经结束,各国家机构给出的结果是“否决(Disapproved)”,他表示这在 C++ 标准化史上是史无前例的。这意味着该草案未能获得顺利通过 ISO/IEC 投票阶段所需的批准。 C++ 是使用最广泛的系统编程语言之一,下一代标准在投票中受挫,将严重扰乱编译器厂商、库作者、工具供应商和教育工作者的计划节奏。这也引发了关于委员会共识机制与国家机构之间如何互动的疑问,并可能改变未来 C++ 标准的批准方式。 按照 ISO/IEC 规则,各国家成员机构是其所在国家的官方代表,在投票阶段既投票也提交技术意见;一旦结果为否定,委员会通常必须处理完这些意见并对草案重新投票。这份简短报告并未给出具体票数、所涉投票的确切类型(例如是委员会草案投票还是后续的批准投票),也没有列出投反对票的国家机构名单,因此否决的具体原因仍不明确。
rss · Lobsters · Oct 24, 18:00
背景: C++ 标准由 ISO/IEC JTC1/SC22/WG21 委员会(通常称为 C++ 标准委员会)制定,该委员会通过面对面会议把各项特性投票纳入工作草案。当草案被认为功能完备后,会被注册为委员会草案(Committee Draft)并送交各国标准机构投票;这些机构可以批准、否决或附意见批准,而它们的意见必须在文件进入最终出版前得到处理。C++26 是该语言的下一个修订版本,预计于 2026 年前后发布,也是反射(reflection)与契约(contracts)等重大新增特性的载体,这些特性已在过去几次会议上被投票纳入工作草案。
参考链接
标签: #c++, #programming-languages, #iso-standards, #c++26, #software-engineering
十年前的 Inception v3 卷积网络在皮肤癌诊断上胜过前沿大模型 ⭐️ 7.0/10
Lynch 实验室的一篇博客文章称,2015 年问世的图像分类卷积网络 Inception v3 先在日常照片上预训练,再用 ISIC Archive 中 68,011 张皮肤镜与临床图像在单块 H100 显卡上全层微调后,在皮肤病变诊断任务上胜过两个前沿大语言模型。测试用的 200 个病灶以及同一病灶或同一患者的其他所有图片,都在训练与验证阶段被剔除,因此模型此前从未见过它们。 这一结果让一个当下的争论更加尖锐:在什么场景下,小而专用的模型比通用大语言模型是更好的工程选择,尤其是在医学这类对准确率和成本都敏感的高风险领域。它同时引出对比较基准方式的质疑:大模型与专用分类器的这种对照实验,究竟测出了多少真正有意义的东西。 这个卷积网络刻意没有追求最先进水平——作者自己称 Inception v3 是过时的架构,选它部分是为了当作对照靶子;模型只在单块 GPU 上训练,阈值和模型选择都没有接触过留出患者的数据。Hacker News 上的批评者认为这属于“刷榜”(benchmaxxing),因为一个专门针对单一窄基准调优的模型,自然会打败从未针对皮肤镜图像优化过的通用大模型。
hackernews · sungam · Oct 25, 17:15 · 社区讨论
背景: Inception v3 出自 Google 的 GoogLeNet/Inception 系列卷积神经网络,发布于 2015 年前后,它通过堆叠“Inception 模块”,并行使用多种卷积核尺寸,在保持图像分类精度的同时降低计算量。皮肤镜是一种可以放大皮肤病变的专用成像技术,公开的 ISIC Archive 已成为训练深度学习模型的标准图像来源。常见做法是迁移学习:先从一个在普通照片上预训练的网络出发,再用医学数据集微调其各层参数。相比之下,大语言模型是在广泛互联网数据上训练的通用文本与图像模型,而不是针对某一项诊断任务专门训练的。
参考链接
社区讨论: Hacker News 的评论者大多并不意外,并对文章的叙述方式提出质疑:有人表示小型专用网络获胜是理所当然的,并以只有 3000 万参数的 KataGo 网络在围棋上超越参数多出一万倍却不擅长下棋的大模型作类比;也有人把这一结果比作计算器在算术上打败大模型。还有不少人认为真正的启示在经济层面——大模型可以低成本地帮助构建专用分类器,而那些过度套用大模型技术的团队终将发现成本高昂,从而回归经典机器学习。
标签: #machine-learning, #medical-ai, #llms, #benchmarking, #computer-vision
OpenAI 与 Anthropic 大幅下调大模型 API 价格,降幅最高达 80% ⭐️ 7.0/10
根据 Max Woolf 在 minimaxir.com 发布的分析,OpenAI 与 Anthropic 在短短几个月内将其大语言模型 API 的价格下调了最高 80%。文章将这一轮降价归因于来自更廉价的中国模型与开放权重模型的竞争压力、推理成本的经济学规律,以及两家实验室可能存在的监管动机。 价格是决定大多数开发者和初创公司选择哪家模型的头号因素,因此 80% 的降幅可能迅速重塑市场份额,并挤压那些无法匹敌同等规模的小型供应商。这也标志着前沿大模型的访问正在变成一门商品化生意,利润空间更多取决于推理效率,而不仅仅是模型质量。 公开标价只能说明部分问题,因为实际单位成本取决于每 GPU 的 token 吞吐量、缓存、上下文长度和批量折扣等因素。评论者还提出了数据处理方面的隐忧,指出降价可能部分是由用户生成内容的再利用所补贴,而“零数据保留”(ZDR)承诺有时也出现过回撤。
hackernews · minimaxir · Oct 25, 21:11 · 社区讨论
背景: 大模型推理经济学研究的是模型在生产环境中每次查询所产生的持续运营成本,这与一次性的训练资本开支不同。由于推理成本会随每个用户、每次 API 调用而线性增长,厂商只要提升硬件利用率、对模型做量化,或让单块 GPU 服务更多 token,就能大幅降价。与之竞争的开放权重模型——尤其是 DeepSeek 等中国实验室推出的低成本模型——为开发者提供了可信的替代方案,从而对现有厂商的定价形成下行压力。
参考链接
社区讨论: Hacker News 上的讨论大多把降价归因于竞争,一位用户称其团队在遭遇 OpenAI 与 Anthropic 的“网络安全”式拒答后转向 Kimi 和 GLM,发现它们更便宜且更少被拦截。也有人认为两家实验室推动监管是为了构筑护城河,因为封禁中国的开放模型才能保住单靠降价无法维持的利润率;另有评论者估算 DeepSeek 的 Flash V4 每 GPU 每小时约收入 38 美元(每块 GPU 每年约 33.3 万美元),还有人把 GPU 算力比作飞机座位——不用就浪费——并指出需求本身有限。
标签: #LLM pricing, #AI economics, #OpenAI, #Anthropic, #AI competition
俄勒冈警方为一名警员的记录开出 250 万美元、相当于 21 年工时的报价 ⭐️ 7.0/10
据 The Intercept 报道,美国俄勒冈州尤金市警察局告知一家当地新闻媒体,要完成其针对一名警员的公共记录申请,至少需要 44,816 个工作人员工时,费用约为 2,484,599.04 美元,按正常工作时间折算相当于约 21 年。该申请仅涉及一名警员的记录,因此这一报价相对于申请范围之窄显得极不寻常。 这一案例说明,高得离谱的收费可以变相等同于拒绝公开,使政府机构在不正式驳回申请的情况下就阻断新闻报道与公众监督。这对所有依赖公共记录法的人——记者、监督组织以及普通公民——都有切身影响,因为一份收费标准就足以让一部信息公开法形同虚设。 报道中提到的 44,816 小时折算下来约相当于一个人全职工作 21 年,而约 248 万美元的费用估值是该警察局所称检索和处理这些记录所需的成本。值得注意的是,警方并未直接拒绝该申请,而是用高得无法承担的报价让申请事实上无法推进。
hackernews · tdeck · Oct 25, 18:04 · 社区讨论
背景: 公共记录法(在美国联邦层面即《信息自由法》,FOIA)允许公众申请获取政府机构持有的文件。多数此类法律允许机构对检索、审阅和涂黑处理文件所耗费的工时收取合理费用,这一条款的本意是弥补真实成本,而非吓退申请人。由于美国许多州的这类法律通常没有硬性期限,也不对估算费用设置上限,机构在定价和推进速度上拥有很大自由裁量权。
社区讨论: 评论者普遍认为 44,816 小时这一数字荒谬至极,并很快把讨论扩展到具体手法与跨国比较:有人描述某学区以每月寄送一小部分记录的方式达到同样的拖延效果;有人举出 2015 年美国国防部对一项 FOIA 申请估算需 1500 万小时、6.6 亿美元(超过 1700 年)的例子;还有人将美国做法与英国 30 天答复期限对比,并提醒德国正在讨论引入类似的阻却性收费。
标签: #public-records, #FOIA, #government-transparency, #police-accountability, #journalism
三星电视 root shell 与机器学习追踪传闻引发 Hacker News 激烈质疑 ⭐️ 7.0/10
一个获得 776 分、601 条评论的 Hacker News 讨论帖合并了两条在 Twitter 上流传的说法——三星 Tizen 电视会在 960x540 的图像帧上运行 TensorFlow Lite 模型来对屏幕内容进行分类,以及电视会通过蓝牙搜索家中的麦克风——同时还关联到一个公开的漏洞利用项目 samsung-q60t-exploit,该项目通过串联 V8 漏洞与内核本地提权(LPE)在三星 Q60T Tizen 电视上取得 root shell 并解密固件。 智能电视是部署量最大的常开联网设备之一,配备摄像头、麦克风和内容识别流水线,因此关于设备端追踪的说法会牵动数百万家庭;与此同时,这场讨论也表明,薄弱的社交媒体证据可以多么迅速地发酵成一套“监控”叙事,并影响三星面临的法律与声誉风险。 取得 root shell 的工作是一条真实的技术链路(V8 漏洞利用,加上三星 KantS2 Tizen 固件中的内核提权漏洞),并且还能实现固件解密;而追踪相关的说法仅来自 Twitter 帖文,没有任何公开的方法论。三星自家的 SmartThings 隐私声明也另行披露,它会收集有关你的智能电视及所连接设备的信息。
hackernews · testing22321 · Oct 24, 05:49 · 社区讨论
背景: 三星智能电视运行自研的、基于 Linux 的 Tizen 系统,较新的机型还充当 SmartThings 中枢,通过蓝牙和 Zigbee 连接其他智能家居设备。TensorFlow Lite 是谷歌推出的轻量级推理运行时,用于在嵌入式硬件上运行神经网络,因此在电视固件中发现 .tflite 模型,对于基于内容的画质调节等功能来说并不意外。对设备进行逆向工程通常从公开文档、FCC 备案和专利申请入手,这些资料在无需任何漏洞利用的情况下就能揭示产品出厂时的功能。
参考链接
社区讨论: 最高赞评论直接驳斥了这种叙事:狗叫和婴儿哭声检测本就是 SmartThings 宣传的功能,而一批逆向工程新手在不读公开文档、FCC 备案或专利的情况下就使用自己并不了解的工具。其他评论则讨论法律责任(引用 Absolute Software/LoJack 隐私诉讼案),分享了一个不支持三星机型的“Clean Your TV”去智能化项目,并担忧大模型厂商若禁止逆向工程用途会大幅削弱这些工具的价值。
标签: #privacy, #reverse-engineering, #smart-tv, #surveillance, #iot-security
React 19.3 新增 browser() API,让“仅客户端渲染”成为一等公民 ⭐️ 7.0/10
React 19.3 于 2026 年 9 月 9 日发布,新增了 react-dom 的 browser() API,允许单个组件主动退出服务端渲染、只在浏览器中渲染。该版本还把此前以实验性 API 形式提供的 View Transition 组件转为稳定版本。 在此之前,要在 React 应用中绕开服务端渲染,往往得依赖只在挂载后执行的 effect、带 ssr:false 的动态导入或环境判断等别扭的变通手段,而这个 API 为框架和应用开发者提供了官方认可的“逃生舱”。对于需要把服务端渲染与依赖浏览器环境的第三方库混用的团队尤其重要,因为它让混合渲染模式变得名正言顺,而不必在“全 SSR”与“全 CSR”之间二选一。 该 API 的作用粒度是组件级而非应用级,因此可以把某个子树标记为“仅浏览器渲染”,同时页面其余部分仍享受服务端渲染带来的收益。代价是退出 SSR 的组件不会产出服务端 HTML,这可能影响该边界内内容的首次绘制、布局稳定性以及 SEO。
rss · InfoQ 中文站 · Oct 24, 13:00
背景: React 的服务端渲染(SSR)会先在服务器上生成 HTML,随后客户端下载 JavaScript 并对这份标记进行“水合”(hydration)使其可交互;React Server Components(RSC)更进一步,在服务端渲染组件且不把其 JavaScript 发送到客户端。而纯客户端渲染(CSR)只发送一个极简的 HTML 外壳,由 JavaScript 在浏览器中构建 DOM。凡是访问 window、localStorage 或 canvas 等浏览器专有全局对象的代码,在服务端渲染时都会报错,而过去的解决办法都是间接的变通——browser() 正是为填补这一空白而生。
参考链接
标签: #React, #frontend, #client-side rendering, #Web development, #API design
2021 年 glibc 更新如何意外破坏 Chromium 音频 ⭐️ 7.0/10
一篇 2021 年的技术复盘文章讲述了 glibc(Linux 核心 C 库)的一次更新如何通过微妙的底层交互意外导致 Chromium 音频失效。 它凸显了系统库与大型应用之间可能存在的紧密耦合,也说明即使应用代码没有变化,发行版层面的库更新也可能引发令人意外的用户可见回归。 该事件被描述为一则涉及 glibc 与 Chromium 微妙交互的调试故事,说明底层运行时变化可能以应用层故障的形式显现;所提供的摘要没有给出具体受影响版本和修复细节。
rss · Lobsters · Oct 25, 15:34
背景: glibc 是 GNU 项目对 C 标准库和 POSIX API 的实现,在大多数 Linux 系统上提供内存分配、I/O 和线程等基础功能。Chromium 是一个大型 C++应用,依赖许多系统库和平台音频 API,因此核心库的变化可能影响到库本身之外的行为。本文是对 2021 年一次事件的复盘,而不是新披露的安全漏洞。
标签: #glibc, #Chromium, #audio, #debugging, #Linux
博客探讨在 2 美元 ESP32-S3 上用 SIMD 加速计算机视觉 ⭐️ 7.0/10
开发者 Shranav Palakurthi 发布了一篇博客文章,演示如何利用 ESP32-S3 微控制器的 SIMD 指令,在成本约 2 美元的硬件上加速计算机视觉负载。文章认为,这款芯片的向量运算能力(他形容为“相对鲜为人知”)非常适合视觉内核中典型的数据并行内层循环。 在 5 美元以下的微控制器上本地运行视觉流水线,而不是把图像帧传到云端,可以降低延迟、成本和功耗,同时让数据留在设备端,这对电池供电的传感器、摄像头以及注重隐私的边缘 AI 产品都很重要。这也说明,只要开发者针对指令集手工调优而非依赖通用库,现有廉价芯片仍有很大的性能余量。 ESP32-S3 基于 Tensilica Xtensa LX7 核心,具备 128 位 SIMD/向量指令,乐鑫还提供了 ESP-NN 和 ESP-DL 库,已经在神经网络内核中利用这些指令路径。需要注意的仍是嵌入式领域的常见限制:以定点与量化运算为主,内存(PSRAM 带宽和 SRAM 容量)往往才是真正的瓶颈,而且手写 SIMD 内联函数在可移植性上远不如普通 C 代码。
rss · Lobsters · Oct 25, 14:57
背景: SIMD 即“单指令多数据”,它让一条 CPU 指令同时处理打包进宽寄存器中的多个数值,例如一步完成八个 16 位像素值的相加。计算机视觉中充满这类高度并行的运算,如卷积、阈值化和色彩转换,因此向量硬件往往能带来数倍的加速。ESP32-S3 是一款售价仅几美元的 Wi-Fi/蓝牙微控制器,在配备该向量单元的同时只有几百 KB 的 SRAM,因此成为“TinyML”实验的热门平台——这类实验试图把神经网络和图像处理塞进比手机小得多的设备中。
参考链接
标签: #embedded systems, #computer vision, #SIMD, #ESP32, #edge computing
如何在 12.5 MHz 处理器上运行城市建造游戏 ⭐️ 7.0/10
larstofus.com 发布了一篇新文章,讲解如何让一款城市建造类游戏在仅 12.5 MHz 的处理器上运行(新闻摘要中写为 16 MHz)。这是一篇动手实践的技术长文,而非产品发布,重点介绍把这类模拟密集型游戏塞进极其紧张的时钟周期与内存预算中所需的底层技巧。 城市建造是模拟计算最密集的游戏类型之一,因此能在比现代 CPU 慢数千倍的硬件上跑起来,直观地展示了通过精心的数据布局、定点数运算和算法简化能榨出多少性能。对受限于紧张预算的开发者——嵌入式目标、复古平台,甚至现代引擎中的热点循环——这篇文章都是有价值的案例研究。 文章自身标题和 URL 中的数字是 12.5 MHz,而聚合摘要写的是 16 MHz,因此确切的目标主频需要回到原文核对。由于当前素材只提供了标题和评论链接,文中具体采用了哪些优化手段——例如定点数运算、限制地块模拟范围,或手写汇编——无法从现有信息中确认。
rss · Lobsters · Oct 24, 14:18
背景: 城市建造游戏是类似《模拟城市》的模拟类游戏,程序需要在每个时间步持续更新成千上万个地图地块、交通、电网和人口统计数据。12.5 MHz 的处理器每秒大约执行 1250 万个时钟周期,而现代桌面 CPU 拥有多个核心、主频达数 GHz,因此即便每个模拟地块只花几百个周期,也会迅速耗尽一帧的时间预算。复古计算(retrocomputing)指的是在这类老式硬件上编写或运行软件的实践,通常迫使程序员手工计算指令周期,并在以 KB 计的 RAM 而非以 GB 计的内存中工作。
标签: #retrocomputing, #game-development, #performance-optimization, #low-level-programming, #lobsters
印度政府网站被曝仍在使用已吊销的 eMudhra 证书 ⭐️ 7.0/10
一篇博客文章称,印度政府网站仍在提供由 eMudhra 签发但已被吊销的 TLS 证书,暴露出公共部门基础设施在证书生命周期管理上的问题。这一发现出现之际,印度持牌认证机构 eMudhra 正在退出全球 SSL/TLS 证书业务。 继续提供已吊销的证书会破坏 PKI 信任链,如果客户端未能正确执行吊销检查,可能让公民面临流量劫持或身份仿冒风险。对政府网站而言这一问题尤其敏感,因为用户对其真实性和可用性有更高期待。 该新闻条目本身只链接到一个讨论帖,因此具体涉及哪些域名、吊销原因以及主流浏览器目前是否会拒绝这些证书等细节并未展开。背景是 eMudhra,这是一家受印度认证机构总监授权的 PKI 公司,也是印度领先的数字签名证书签发机构之一。
rss · Lobsters · Oct 24, 04:06
背景: TLS 证书用于验证网站身份并加密浏览器与服务器之间的流量。如果私钥泄露或证书被错误签发,证书可以在到期前被吊销,客户端应当检查吊销状态以避免继续信任该证书。eMudhra 是一家成立于 2008 年的印度公钥基础设施公司,依据印度《信息技术法》作为认证机构开展业务。该公司在披露八张中间 CA 证书存在弱私钥后,已宣布退出全球 SSL/TLS 证书业务。
参考链接
标签: #security, #PKI, #TLS, #India, #government websites
文章探讨 SIMD 技术在 Go 中的应用方式 ⭐️ 7.0/10
internals-for-interns.com 发表了一篇题为《SIMD and Go》的技术文章,并在 Lobsters 上引发讨论,文章系统梳理了如何在 Go 中应用 SIMD(单指令多数据)技术,并分析了相关的性能收益与实现取舍。该文出现在 Go 自身的 SIMD 能力逐步成熟之际——近几个版本的工具链已开始提供实验性的向量 API。 长期以来,Go 因缺乏一等的向量化支持而饱受批评,性能敏感的代码往往只能退回到手写汇编、cgo 或 unsafe 技巧。随着语言层面引入实验性 SIMD API,关于何时以及如何使用的实用指导,对从事哈希、编解码、压缩等吞吐量敏感的系统代码的 Go 开发者具有重要价值。 从历史上看,Go 程序员实现 SIMD 主要依赖手写 Go 汇编、封装 C intrinsics 的 cgo 包装,或绕过 cgo 开销的 linkname 技巧;社区项目如 alivanz/go-simd 先支持 ARM NEON,再逐步扩展到 x86。官方方案则以 simd/archsimd 包为核心,在 amd64 上映射到 AVX/AVX2/AVX-512 等硬件类型,在 arm64 上映射到 NEON;若无硬件支持,则回退到纯 Go 模拟实现。
rss · Lobsters · Oct 24, 23:11
背景: SIMD 是一种数据级并行形式,一条指令可以同时处理多个数据元素——例如用一条指令完成 8 对 float64 的相加,而不是执行 8 次标量加法。Intel/AMD(AVX 系列)与 ARM(NEON)的现代 CPU 都内置 SIMD 单元,尤其适合多媒体、密码学等规则的批量运算。在 Go 中,官方实验始于 Go 1.26 的 amd64 SIMD API,需通过 GOEXPERIMENT=simd 开启;Go 1.27 又将同一套 API 扩展到了 arm64 和 wasm。由于 SIMD 代码与具体架构相关,基于这些 API 编写的程序仍需处理特性检测与回退路径。
参考链接
标签: #Go, #SIMD, #performance, #systems programming, #compilers