在使用cuda进行编程时,遇到提速时间达不到效果时往往会用cuda自带的visual profiler进行算法运行时间的分析;
在分析时,总会遇到数据流从向显存传输时的时间在算法中多于实际你的算法处理你要解决问题的算法的时间。
如你在传输时花70%的时间,而你处理你的问题时只花30%的时间,这时再提升你算法处理的问题时的速度主要集中在怎么减少传输时所用的时间或者怎么隐藏传输时所用的时间。
在网上找了两种方法:
1是在gpu上进行多流处理。
2是在cpu上多线程进行异步处理。
持续更新