问题 在WSL2下进行编译 设置交换空间16GB,物理内存8GB 多线程编译make -j 内存一直再涨,直到占满24GB,编译失败 分析 现代编译器需要记录所有信息以获得全局的编译优化。 多线程编译导致不同线程之间需要大量内存拷贝。 因此,可以采用单线程编译,或者适当减少线程数量。 解决方法 作者是在Pytorch下即时编译CUDA文件。 通过设置环境变量export MAX_JOBS=1,限制编译时的最大线程数解决 对于其他情况,可以采用make -j1等方式解决。