首页 > 其他分享 >调用torch.randn(1, n_mels, 3000).to(device)时报错RuntimeError: CUDA error: device-side assert triggered

调用torch.randn(1, n_mels, 3000).to(device)时报错RuntimeError: CUDA error: device-side assert triggered

时间:2023-03-08 11:11:06浏览次数:59  
标签:randn triggered torch fuser CUDA 使用 device 内存

调试Whisper时,不管执行什么命令都会报错RuntimeError: CUDA error: device-side assert triggered

问题

这个错误通常意味着CUDA运行时检测到了某些问题,例如尝试访问不存在的内存地址或尝试在CUDA内核中进行非法操作等。可能的原因包括:

  • CUDA设备内存不足,因此无法分配所需的张量。您可以尝试使用更小的张量或释放其他不必要的内存来解决此问题。

  • 确保您的PyTorch和CUDA版本兼容。如果它们不兼容,可能会导致设备错误或不一致的行为。

  • 如果您在多个GPU上运行程序,可能会出现设备错误。请确保您的程序正确设置了CUDA_VISIBLE_DEVICES环境变量,以指定要使用的GPU设备。

  • 可能存在其他硬件或驱动程序问题。您可以尝试重新启动计算机或更新GPU驱动程序来解决问题。

解决

释放cuda内存

  1. 使用nvidia-smi命令查看正在运行的CUDA进程,并使用kill PID命令终止它们

    • nvidia-smi后发现没有进程号,但是内存占用很大,如下图
      image
    • 改用使用fuser -v /dev/nvidia*:
      apt-get install fuser失败,pip install fuser后仍报错 bash: fuser: command not found
      改为使用apt-get install psmisc,psmisc包包括fuser命令,之后可以成功使用。使用kill -9 杀死进程
      image
    • 最后检查一下
      image
  2. 清空缓存

    import torch
    torch.cuda.empty_cache()
    

原因总结

可能是在跑模型是使用ctrl c强行终止了两次,内存没有释放

标签:randn,triggered,torch,fuser,CUDA,使用,device,内存
From: https://www.cnblogs.com/qwangg/p/17191163.html

相关文章

  • android stdio如何迁移device
    1.在C:\Users\(名字)\.android\avd文件中找到虚拟机文件复制且删除(由于我已经迁移完毕,只剩下一个.ini文件)  类似于这样的虚拟机文件。  2.将它复制或迁移到你希......
  • DeviceMotionEvent API All In One
    DeviceMotionEventAPIAllInOne设备运动事件/设备动作事件https://caniuse.com/?search=DeviceMotionEventWarning:Currently,FirefoxandChromedonothan......
  • /dev/mapper/control: open failed: Permission denied Failure to communicate with
    这个错误信息表明您在尝试访问/dev/mapper/control文件时遇到了权限问题。这通常意味着您需要以超级用户身份运行命令。您可以在命令前加上sudo来以超级用户身份运行命......
  • 安装pytorch报错 ERROR: Could not install packages due to an OSError: [Errno 28]
    windos安装,报错如下  看了不少回答,大概是缓存和内存满了我的C盘只给了70G,然后意外发现只剩下3G多了,先用系统自带的清理工具清理了一下,然后腾讯电脑管家“工具箱”中......
  • 正点原子IMX6ULL开发板-busybox rootfs移植-Cannot open root device "nfs" or unknow
    环境VMware17.0.0Ubuntu16NXP提供的U-boot与Linux版本:u-boot:uboot-imx-rel_imx_4.1.15_2.1.0_ga.tar.bz2linux:linux-imx-rel_imx_4.1.15_2.1.0_ga.tar.bz2开发板:......
  • Kernel文档 DeviceTree——usage-model.txt
    此文介绍Linux的设备树使用模范。OpenFirmware设备树是用于描述硬件的数据结构和语言。他是一种对硬件的描述,此描述是可被操作系统读的,所以OS不需要硬编码机器的详细信......
  • VMware Workstation 与 Device/Credential Guard 不兼容
    vm开机报错提示如下VMwareWorkstation与Device/CredentialGuard不兼容。在禁用Device/CredentialGuard解决方法1【简单】首先打开管理员终端【其实就是命令行,反......
  • randn和rand和randi
    rand生成均匀分布的伪随机数,分布在(0,1)之间,例如rand(m)生成m行m列的均匀分布的伪随机数,rand(m,n)生成m行n列的均匀分布的伪随机数,rand(m,n,’double’)生成指定精度的伪随机......
  • HarmonyOS Connect “Device Partner”专场FAQ来啦!
     DevicePartner平台是面向AIoT产业链伙伴的一站式服务平台,伙伴可以通过平台获取最新的产品、服务与解决方案,实现智能硬件产品的开发、认证、量产和推广等全生命周期......
  • 适配 iOS 13 设置 deviceToken
    在iOS13之前的版本使用下面代码可以将获取到的deviceToken,转为NSString类型,并去掉其中的空格和尖括号,作为参数传入setDeviceToken:方法中。-(void)application:(UI......