1)Windows application 在某些情况下(比如:大规模浮点数操作),其速度要比console application快(甚至3倍以上)。网上查了半天,只有一个人有回复,估计是console基于标准C的接口,所以很多CPU新的指令集没法使用;而windows application则因为是对于windows平台优化的,可能调用更多的指令集,所以速度更快(诸如SSE等指令集吧)
2)X64和win32的速度对比:在console下,win32比x64快,而在windows app下,x64比win32快。个人觉得也是模拟的问题。因为console是模拟dos的,所以会有比较多的速度损耗。
3)多线程和单线程的对比:多线程在大部分情况下更快。但是也有例外,有时候6个线程反而比16个线程快(数据集20),个人推测是线程资源分配和CPU的睿频加速的差异吧……具体原因未知。
4)又要重新跑实验了,因为之前的笔记本上的实验都是在console下完成的,而多线程的实验是在windows app下完成的。so,如果笔记本也用app的话,那么CUDA的加速效果就大打折扣(原本5倍,用了app只剩2倍不到了)了,所以,为了结果的美观,需要降低多线程的速度,也就是用console来模拟……这还真是没想到啊~
5)还有一周,keep walking