news 2026/2/6 4:32:32

【解决MMCV造轮子的二番战】ModuleNotFoundError: No module named ‘MMCV‘

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
【解决MMCV造轮子的二番战】ModuleNotFoundError: No module named ‘MMCV‘

前言

我之前的环境如下:

CUDA 11.0 Pytorch 1.7.1 torchvision 0.8.2 mmcv-full 1.7.1

最近在用上述环境跑程序跑的很舒服,后来自己的模型进行了改动—>需要用到一部分傅里叶相关的计算,所以就需要安装CUDA 库中的cuFFT,安装还很顺利,但是跑起来后发现报错如下

即经典报错CUFFT_INTERNAL_ERROR,这应该是40系显卡跑老版本的经典问题了。

报错分析:

首先我怀疑是显存碎片化,因为FFT对于张量必须是连续的,前面层做了切片之后,后面相处就不连续了,于是就会报错。
所以我就在FFT输入加上了.contiguous(),但是没啥用,代码还是依旧报错。此时我就会怀疑是pytorch的问题了,RTX 4060 Ti 是 Ada 架构的新卡,而 torch.fft 调用的底层 CUDA 库(cuFFT)在处理某些显存布局时,如果 PyTorch 版本不够新(比如现在用的 1.x),就会直接崩掉。
这时候有两个方法,第一个最好理解,就是将FFT这一步直接转接到CPU上,用CPU去完成这部分运算,然后逆变换也用CPU,算完之后再送到显卡中。我也确实是这么干的,能用但是计算太慢了,数据量一大就会很卡,所以这个方法只适用于少量的数据。

结论如下

第二个方法就是升级版本,也是本文的重点。
首先需知:
FFT需要用到较高的pytorch
程序中的原代码需要1.x的mmcv,PyTorch 2.0 以后不再支持 mmcv-full,改成了 mmcv(2.x版),API 变动很大,容易报错
经过一个晚上的折腾,我测试了一个较好的版本搭配,也不卖关子,搭配如下,可以实现二者兼得!

PyTorch 1.13.1 + CUDA 11.7 + MMCV-Full 1.7.1+Openmim 0.3.9

省流结论

通过本帖子结合之前帖子你可以解决安装mmcv卡轮子的问题,并且有了一个稳定的可以计算FFT以及运行低版本mmcv的搭配组合。

配置教程

1. 安装 PyTorch 1.13.1 (CUDA 11.7)

指令如下

pip install torch==1.13.1+cu117 torchvision==0.14.1+cu117 torchaudio==0.13.1 --extra-index-url https://download.pytorch.org/whl/cu117

测试是否安装成功

python -c 'import torch;print(torch.__version__)'

如果输出了版本信息,则安装了 PyTorch,如下图

如果报错,那么就是PyTorch安装的有问题,请自行搜索相关教程,大部分是因为网络不好!!!

2. 安装 mmcv-full 1.7.1

按照之前的操作,去官网填写相关的配置,然后获取指令,但是问题出现…

居然找不到低版本的包了…寄,自己是不愿意用之前帖子中的第二条方法去找本地包然后下载,于是我就搜索其余博客发现写的一塌糊涂鱼龙混杂,然后在git上逛了逛,突然想起来了本贴的主角OpenMMLab这个方法可以解决很多人的卡轮子问题。

主角简介

OpenMMLab就是开发 MMCV、MMDetection 的那个团队给自己家产品做的下载器

为什么要装它?(它能解决“造轮子”的问题)

用普通的 pip install mmcv-full 之所以卡在“Building wheels”(造轮子),是因为:

  1. 普通的 pip 很笨:它不知道 OpenMMLab 官方把**预编译好的安装包(.whl)**藏在哪个服务器链接里。
  2. 结果:pip 找不到现成的包,就只能下载源代码,然后试图调用你电脑上的编译器(GCC/NVCC)现场从零开始编译。这不仅慢(要几十分钟),而且对环境要求极高,极大概率报错。

裝了 mim 之后发生了什么?

当你运行 mim install mmcv-full 时:

  1. mim 很聪明:它会自动检测你当前电脑装了什么版本的 PyTorch(比如 1.13.1)和 CUDA(比如 11.7)。
  2. 自动匹配:它会直接去 OpenMMLab 的官方仓库里,精准找到专门为你这个版本组合编译好的那个文件
  3. 直接安装:就像下载软件一样,直接下载安装,不需要编译,几秒钟就搞定。

总结:这一步就是为了让你下一步安装 mmcv-full 时能秒装,不再卡住。

3. 安装openmim

pip install -U openmim

4. 安装mmcv

mim install mmcv-full

然后,你就不会卡在造轮子了,应该会很快地编译成!!!

后记

真是一场酣畅淋漓的调试啊!麻了,相信本次的帖子结合之前的帖子能够彻底解决大家关于mmcv的安装问题!如果对你有所帮助,希望可以点赞关注,嘿嘿!!!
ps:我觉得不管做任何事都要负责,真诚才是必杀器,如果一篇帖子都是胡编乱造,那岂不是害人害己!!!

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/2/4 20:24:38

5步构建智能Agent:fast-agent框架完整实践指南

5步构建智能Agent:fast-agent框架完整实践指南 【免费下载链接】fast-agent Define, Prompt and Test MCP enabled Agents and Workflows 项目地址: https://gitcode.com/gh_mirrors/fa/fast-agent 在当前AI技术快速迭代的背景下,智能Agent开发已…

作者头像 李华
网站建设 2026/2/4 20:24:24

DataRoom大屏设计器:让数据可视化变得前所未有的简单

DataRoom大屏设计器:让数据可视化变得前所未有的简单 【免费下载链接】DataRoom 🔥基于SpringBoot、MyBatisPlus、ElementUI、G2Plot、Echarts等技术栈的大屏设计器,具备目录管理、DashBoard设计、预览能力,支持MySQL、Oracle、Po…

作者头像 李华
网站建设 2026/2/4 13:25:54

ComfyUI-MultiGPU分布式显存优化技术深度解析

ComfyUI-MultiGPU分布式显存优化技术深度解析 【免费下载链接】ComfyUI-MultiGPU This custom_node for ComfyUI adds one-click "Virtual VRAM" for any GGUF UNet and CLIP loader, managing the offload of layers to DRAM or VRAM to maximize the latent space …

作者头像 李华
网站建设 2026/2/4 20:39:43

Path of Building终极指南:5个免费技巧快速掌握角色构建奥秘

想要在《流放之路》中打造完美角色却不知从何入手?Path of Building这个免费离线构建工具正是你需要的解决方案。作为社区最受欢迎的角色规划神器,它能帮你从零开始规划完整的角色发展路径,避免资源浪费,实现高效构建。 【免费下载…

作者头像 李华
网站建设 2026/2/6 3:32:41

联想刃7000k BIOS深度调校完全手册:解锁隐藏性能潜力

联想刃7000k BIOS深度调校完全手册:解锁隐藏性能潜力 【免费下载链接】Lenovo-7000k-Unlock-BIOS Lenovo联想刃7000k2021-3060版解锁BIOS隐藏选项并提升为Admin权限 项目地址: https://gitcode.com/gh_mirrors/le/Lenovo-7000k-Unlock-BIOS 想要彻底释放联想…

作者头像 李华