尧图网站建设 尧图网络
  • 首页
  • 关于我们
  • 服务项目
  • 案例展示
  • 建站流程
  • 资讯中心
  • 联系我们
首页/资讯中心/详情

我在 macOS 上跑 300GB 模型却没用 O_DIRECT:为什么绕过 Page Cache 反而慢 2 倍

我在 macOS 上跑 300GB 模型却没用 O_DIRECT:为什么绕过 Page Cache 反而慢 2 倍
📅 发布时间:2026/8/1 20:16:40

你打算把一个装不进内存的模型放到 SSD 上流式跑,第一反应大概是去翻O_DIRECT的用法,接着翻io_uring,结果在 macOS 上发现前者根本不存在、后者更没有。于是你转去查fcntl(fd, F_NOCACHE, 1),查到一半会看到 Apple 开发者论坛上一句让人心凉的话:它是个 hint,不保证生效,而且不会清掉已经缓存的页。

DwarfStar 的 ds4 引擎能在一台 128 GiB 的 Mac 上把一个三百多 GiB 的 MoE 模型跑起来。我把整棵源码树 grep 了一遍,O_DIRECT零次,F_NOCACHE零次,io_uring零次。它用的是最朴素的 bufferedpread。

这件事第一眼看上去像是“没做优化”,实际上恰恰相反。真正决定这台机器是能出 token 还是四十分钟后开始重度换页的,从来不是你有没有绕过 page cache,而是这几十 GiB 内存的所有权最终记在谁头上——记在内核的 page cache 上,它随时可以在你最需要的时候把它回收掉;记在你自己 mlock 住的 slab 上,它就是你的。这套实现干的全部事情,就是把所有权从前者一寸一寸挪到后者,同时在驱逐的时候主动把前者按回去。

下面我会带你把这条链路从最外层的一行命令拆到最里层的pread落点:先用一个专门用来“制造内存不足”的工具把“模型必须装进 RAM”这个前提实测崩掉;再算清楚 MoE 到底给了我们什么样的结构性机会;然后逐行读d

相关新闻

  • 非官方 Gen1Recomp 移植版:让三款经典《宝可梦》游戏可轻松添加 3D 体素图形模组!
  • 看板数据沉睡?用AI编程唤醒它:12个SQL+Python自动化脚本,让燃尽图自动生成预测警报
  • 卡券处理回收价格表2025年最新行情,手里的卡券怎么处理最划算? - 沃卡回收

最新新闻

  • 薯栗时光|一间承载烟火与温柔的新式炒货空间
  • 工具调用、记忆、规划都配齐了,联调为什么还会翻车?
  • 5分钟掌握暗黑破坏神2存档编辑:d2s-editor免费工具完全指南
  • GPT2-Chinese中文语言模型实战指南:从零开始构建专业级文本生成系统
  • 当AI学会自己选目标:首起自主网络攻击链被Unit42完整还原
  • PL-2303芯片Windows 10驱动终极解决方案:3步搞定停产硬件兼容性

日新闻

  • ClickHouse版本管理深度实战:4步构建零风险升级与回滚体系
  • Java 23 种设计模式:从踩坑到精通 | 番外:责任链模式 —— 物流审批流程实战
  • 华硕笔记本性能解放指南:G-Helper轻量级控制工具全面解析

周新闻

  • 大连理工大学与东京大学联手打造的“主动型AI助手“
  • 170.2026年国家级科研瓶颈:超精密单点金刚石切削(SPDT)光学表面生成
  • SongBloom:革命性歌曲生成框架深度解析——如何通过交织自回归与扩散模型创作完整音乐

月新闻

  • ClickHouse版本管理深度实战:4步构建零风险升级与回滚体系
  • Java 23 种设计模式:从踩坑到精通 | 番外:责任链模式 —— 物流审批流程实战
  • 华硕笔记本性能解放指南:G-Helper轻量级控制工具全面解析

关于尧图

  • 公司简介
  • 团队介绍
  • 企业文化
  • 荣誉资质

服务项目

  • 定制开发
  • 电商建站
  • UI 设计
  • 运维服务

快速链接

  • 案例展示
  • 建站流程
  • 常见问题
  • 资讯中心

联系方式

  • 📍北京市朝阳区互联网产业园 A 座 10 层
  • 📞400-888-8888
  • ✉️contact@rkmt.cn
  • 🕐周一至周日 9:00-21:00

© 2024 北京尧图网络科技有限公司 版权所有 | 京 ICP 备 XXXXXXXX 号