nvcc -arch -code区别

首先需要知道nvcc编译过程

cuda => ptx =>SASS (assemble,actually binary)

因此,ptx作为中间层,可以起到缓冲并且兼容的功能。

-arch就是ptx的版本

-code就是sass的版本

因此,如shfl指令在volta上不再支持,(需要shfl.sync),这时候,-arch就需要编译60的版本。

 

https://on-demand.gputechconf.com/gtc/2018/presentation/s81006-volta-architecture-and-performance-optimization.pdf

 
posted @ 2021-12-16 14:44  xuyv  阅读(244)  评论(0编辑  收藏  举报