G4服务器相关记录

1. 编译器版本与 C++ 标准

GCC 4.8.5 不支持 C++17,导致 CMake 配置失败。使用 devtoolset-11(GCC 11.2.1)激活新编译器:

复制代码
source /opt/rh/devtoolset-11/enable

更换编译器后,必须删除旧的 build 目录或执行 rm -rf build/* 并重新运行 cmake ..,避免缓存旧编译器信息。

2. 远程后台运行(防断线)

使用 tmux 创建持久会话,断开 SSH 后进程继续运行。

后台任务无法查看终端输出,使用 tee 或重定向将输出保存为 .log 文件,便于事后分析存活数、错误、耗时。建议带时间戳,如 relay_$(date +%Y%m%d_%H%M).log

复制代码
tmux new -s g4                     # 创建会话
source /opt/rh/devtoolset-11/enable # 激活编译器环境(如需)
cd build && bash run_relay.sh 2>&1 | tee run.log  # 运行并保存日志
# Ctrl+b, 然后按 d 脱离会话
tmux attach -t g4                  # 重连后恢复会话

3. 内存溢出(OOM)处理

内存溢出后进程会被 OOM killer 杀掉,原因是分裂倍率(SPLIT)过大导致相空间记录数指数膨胀。