利用CUDA加速旧C/C++代码过程中遇到的两点疑问

jznudt 2015-07-31 09:28:29
一直从事电子信息系统建模仿真方面的工作,借助于面向对象的分析与设计(OOAD)等技术,利用C++语言实现了多个实际信息系统的功能模型。最近考虑用CUDA改写这些旧代码,以提高仿真时效性,但在这个过程中遇到了两个问题:

1. 感觉CUDA是面向过程的——参考了NVIDIA的示例程序,全部都是一系列的函数。之前在建模仿真过程中经常使用的OOAD方法与技术,例如封装、多态、继承、模板、设计模式等,感觉这些技术和方法很难和CUDA的函数结合起来。难道为了改写,一定要把原有的成熟模型体系全部推翻重来?这样就得不偿失了。

2. 为了不破坏原有功能模型中的信号/信息处理流程,只在某些具体算法中采用了CUDA加速,比如FFT、矩阵运算、矢量操作等,这造成了较为频繁的数据吞吐(意指从core到host之间的数据交换),这耗去了较长的时间,算法效率提升不够明显。

恳请论坛里的各位达人指点,先谢谢了。

p.s.过程中遇到的一些具体的技术实现问题,我稍后贴上。
...全文
2245 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
IamVeryCool 2019-03-13
  • 打赏
  • 举报
回复
楼主您好,请问已经做好的一个MFC多文档应用程序该如何用CUDA加速呢?
Spidey212 2015-08-03
  • 打赏
  • 举报
回复
不知道为什么不能回复,已私信
Spidey212 2015-08-03
  • 打赏
  • 举报
回复

353

社区成员

发帖
与我相关
我的任务
社区描述
CUDA高性能计算讨论
社区管理员
  • CUDA高性能计算讨论社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧