我有一些我继承的旧代码,我正在尝试将其升级到最新的cuda,所以我安装了Cuda 8,但在编译时抱怨无法找到npp.lib,我检查了C:\ Program Files \ NVIDIA GPU Computing Toolkit \ CUDA \ v8.0 \ lib \ x64找不到它,我看到一堆npp {xxx} .lib,其中xxx是更多文本,但没有任何只是npp.lib。这是在最新的cuda中删除了吗?
提前致谢。
答案 0 :(得分:3)
是的,npp.lib
被nppi.lib
以及npps.lib
和nppc.lib
替换为CUDA 6.5或之前的某处。这在CUDA 8 npp documentation第1章中引用:
注意:从6.5版开始,NPP也作为静态库提供(libnppc_static.a,libnppi_static.a, 和Linux,Android和Mac OS上的libnpps_static.a)以及作为共享库提供的。 静态NPP库依赖于一个名为cuLIBOS的常见线程抽象层库(libculibos.a) 现在作为工具包的一部分分发。因此,必须在链接器提供cuLIBOS 正在链接静态库。 libnppi库变得非常大,以便最小化库 加载和CUDA运行时启动时间建议尽可能使用静态库。 为了在使用动态库时提高加载和运行时性能,NPP 8.0现在包含了完整的 除了完整大小的nppi库本身之外,还有一组nppi子库。仅链接到子库 包含应用程序使用的函数可以显着改善加载时间和运行时启动 性能。一些nppi函数在内部调用其他nppi和/或npps函数,所以你可以 需要链接到一些额外的库,具体取决于您的应用程序调用的函数。 nppi 子库分为与nppi头文件分割方式相对应的部分。还有 每个新子库的静态版本。完整大小的nppi库将在下一个版本中弃用 CUDA发布。这个子库列表如下:
nppi_arithmetic_and_logical_operations.h中的nppial算术和逻辑运算函数
nppi_color_conversion.h中的nppicc颜色转换和采样函数
nppicom在nppi_compression_functions.h中的JPEG压缩和解压缩功能
nppi_data_exchange_and_initialization.h中的nppidei数据交换和初始化函数
nppi过滤和计算机视觉功能在nppi_filter_functions.h
中在nppi_geometry_transforms.h中找到的nppig几何变换函数
发现nppim形态学操作功能 nppi_morphological_operations.h
nppi_statistics_functions.h中的nppist统计和线性变换 nppi_linear_transforms.h
nppi_support_functions.h
中的nppisu内存支持函数nppitc阈值并比较操作函数 nppi_threshold_and_compare_operations.h
此外,请注意nppi
进一步细分。您需要更改链接规范。