记录一次Segmentation fault (core dumped) 段错误(cuda编程)

现象

使用makefile编译成功编译,但是在运行时出现

Segmentation fault (core dumped) 段错误,如下图所示:

尝试办法

1.让copilot找bug:

没有找到具体的问题,只指出了是指针访问越界以及未定义行为。指出了一个大概的方向

2.使用GBD查找问题:

每次都停在compared函数上,

或者我想打印输出的数组时stdio报错,

当我把它注释掉后没有出现问题。推测问题出现在输出的cpu或者gpu数组上。

3.自查代码逻辑,重点看输出的cpu或者gpu数组:

发现将dref的空间错误的申请在了gpu上,那么当cpu想去读取dref时就会出错。因为cpu无法直接去读取gpu内的数据。

修改方法

修改dref在cpu空间申请内存,然后重新编译运行:

成功输出正确的前缀和,问题解决!

相关推荐
老鱼说AI4 天前
CUDA架构与高性能程序设计:多维网格与数据
c++·人工智能·深度学习·神经网络·机器学习·语言模型·cuda
70asunflower5 天前
CUDA基础知识巩固检验练习题【附有参考答案】(8)
c++·人工智能·cuda
被制作时长两年半的个人练习生5 天前
blackwell和warp specialization的背景下如何理解CTA
gpu·cuda
70asunflower5 天前
CUDA基础知识巩固检验练习题【附有参考答案】(7)
c++·人工智能·cuda
money05345 天前
CUDA C++ Best Practices Guide读书笔记
cuda
老鱼说AI6 天前
CUDA架构与高性能程序设计:异构数据并行计算
开发语言·c++·人工智能·算法·架构·cuda
superior tigre9 天前
权威指南 第四章
c++·cuda·ai infra
ouliten11 天前
[CUTLASS笔记2]host端工具类
c++·笔记·cuda·cutlass
70asunflower12 天前
CUDA编程指南基础知识点总结(5)
c++·人工智能·cuda