考虑到Tk1有单个SM,是否真的可以同时运行流?即使是最新的库达图书馆,我也无法做到这一点。
那真的可能吗?任何示例代码都会很棒。 cuda Blas下的示例代码也按顺序显示在visual profiler上。
更好地了解什么" Streams"在单个SM中有用吗?
[已经在nvidia开发论坛上提问过,我认为这个论坛并不活跃]
答案 0 :(得分:1)
使用单个Kepler SM,无法同时运行多个流。开普勒不支持抢占。这与CUDA版本无关,而与SM的功能有关。有关先发制人的事情已经在2016年GTC上为Pascal讨论,但之前没有。
关于具有单个SM的流的实际使用,一些异步功能在流0和其他流之间可能表现略有不同。因此,我假设异步memcopy和执行的一些极端情况可能会受益于单个SM的流 - 因为TK1设备查询读取它具有并发副本和exec与1副本引擎。 (尽管ZeroCopy可能是TK1上更好的方法)。