当前位置: 首页 > article >正文

torch.fft 出现 ComplexHalf 或 Half 不支持

错误报告

错误信息

  1. 错误类型: RuntimeError: Unsupported dtype Half
    发生位置: torch.fft.rfft2

  2. 错误类型: RuntimeError: "roll_cuda" not implemented for 'ComplexHalf'
    发生位置: fft.fftshift

环境信息

bash
pip list | grep torch
torch 1.12.1+cu102
torchaudio 0.12.1+cu102
torchvision 0.13.1+cu102

原因

  • 在 PyTorch 的 FFT 操作中,许多操作不支持 ComplexHalf 数据类型。

解决

  1. ComplexHalf 转换为 ComplexFloat:
    在调用 FFT 操作之前,确保将输入数据类型转换为 ComplexFloat

python
if x.dtype == torch.complex64:
x = x.to(torch.complex64)

  1. 使用 CPU 处理:
    如果性能要求不高,可以选择在 CPU 上执行 FFT 操作,避免 CUDA 相关问题。

python
xfreq = fft.fftn(x.cpu(), dim=(-2, -1))
xfreq = fft.fftshift(x_freq, dim=(-2, -1))


http://www.kler.cn/news/350659.html

相关文章:

  • 【永中软件-注册/登录安全分析报告】
  • Python实现微博舆情分析的设计与实现
  • 在Java中,需要每120分钟刷新一次的`assetoken`,并且你想使用Redis作为缓存来存储和管理这个令牌
  • Leetcode 最长公共前缀
  • mysqld.log文件过大,清理后不改变所属用户
  • 面试官:数据库 delete 表数据,磁盘空间还是被一直占用,为什么?
  • java互联网医院智能导诊系统源码,Uniapp前端开发框架,支持一次编写,多端运行
  • 分享一个图片RGB以及16进制颜色提取的在线网站
  • Lobby——网络游戏大厅设计与参考建议!!!
  • FreeRTOS:事件标志组
  • SpringMVC源码-接口请求执行流程,包含九大内置组件的实例化初始化,拦截器调用,页面渲染等源码讲解
  • K8s中pod 间通信的两种情况
  • Oracle中解决select into值集为空的报错情况
  • 洛谷 P1106:删数问题 ← 贪心算法
  • 常见的微控制器(ESP8266、ESP32,、51单片机、stm32)区别
  • 自感式压力传感器结构设计
  • 私有聊天平台的数据管理策略与分析实践
  • 什么是 SQL 注入
  • 深入剖析 Java Spring 中的 @Autowired、@Resource、@Qualifier、@Inject 注解:使用详解与注意事项
  • Vue的响应式原理
  • Linux查看处理器信息
  • Adobe Illustrator如何在图片插入latex公式
  • VS code连接远程服务器
  • webGL进阶(三)-动态变换与动画理论基础
  • Android——通过MediaStore查询图片
  • 【目标检测---旋转框标注】roLabelImg安装与使用