有人遇到到 codex 内存过高,导致 mac 卡死的问题么

14 小时 28 分钟前
 geminy066

macbook M1 Pro

近两周遇到三次,前两次没抓到凶手,电脑直接干崩了,只能硬重启的 mac

最后一次我发现 mac 有些变卡后,赶紧打开了活动监视器,起初内存占用最高的还是 edge 、chrome 、vscode , 等电脑接近卡死的时候,弹出了访达强制关闭应用的窗口,此时 codex 内存占用超 100G 。

但我留意到一个相似的关键点,每次 mac 变卡时,我的 codex 正在尝试运行本地项目,而项目端口被占用时,codex 在试图 kill 进程。

我怀疑是不是 codex 识图运行项目时失败,循环尝试启动进程导致的。。。

370 次点击
所在节点    Codex
7 条回复
shawnzhangcun
12 小时 23 分钟前
遇到了 vscode 中开多个项目的时候,codex 会把 cpu 占满导致卡顿,但是只有一个项目在使用 codex 不知道是哪里有问题
geminy066
10 小时 45 分钟前
@shawnzhangcun 我这里接近卡死时,CPU 负荷最高的是 mac 的核心进程 kernel_task 。CPU 超过 200%……

目前我在 ~/.codex/AGENTS.md 中配置一些防御性的提示词:

```
## 🚫 严格端口与孤儿进程治理 (Port & Orphan Process Prevention)

- **禁止端口妥协:** 如果项目默认端口(如 3000, 8080 等)被占用,**绝对禁止**擅自修改配置文件或启动命令去使用新端口。
- **Kill 失败必须中断:**
- 当尝试释放端口时,若执行 `kill` 命令失败(如提示 Permission Denied 或进程顽固),**必须立即中断当前任务**,并向人类用户报告具体的错误信息。
- 严禁在老进程未成功完全退出的情况下,强行拉起或寻找替代端口拉起新进程。
- **清理残留:** 在每次通过命令行(如 `npm run dev`, `python main.py`)拉起本地开发服务之前,必须先检查并确保没有同名的历史残留进程在后台静默运行。
```

再观察下有没有效果
geminy066
10 小时 21 分钟前
问题又复现了,我刚写完防御性提示词,还没来得及重启 codex😂。不过这次有进展了……

活动监视器中出现了大量的空 node 进程...
但我不确定是是不是 codex 导致的,因为我把 codex 关闭了,node 进程仍在创建;
神奇的是,在我强制关闭 codex 大概 10s 后,我的 Vibe Island 响了,提示 codex 的任务完成。
这个响声提醒我,把可能和 codex 相关的应用:Cockpit Tools 和 Vibe Island 都关闭了,然后所有 node 进程全无了。

所以可能的情况是:
1.虽然 codex 应用已经关闭,但后台服务还在运行,仍在创建 nodex ,直到 codex 认为任务真正结束;
2.关于 Cockpit Tools 和 Vibe Island ,虽然不是完全清楚它们的实现原理,但我觉得它俩不会无聊启动 node 进程……
geminy066
10 小时 18 分钟前
@geminy066 补充一下,以上也解释了为什么活动监视器中根据内存排序,没有发现占用内存过高的应用。也解释了 100*1 和 1*100 的区别 🤣。
shawnzhangcun
9 小时 20 分钟前
@geminy066 #2 对的,我也是超过 200%,kernel_task 是去杀进程的,现在我都手动去关闭 vscode ,不然会随机开启多个 codex 的进程占满 cpu
calvinHxx
9 小时 15 分钟前
我也发现了 新版 codex 经常把我 cpu 拉爆。
chairuosen
9 小时 13 分钟前
占我 cpu200%的是 universalaccessed

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1214388

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX