zoukankan      html  css  js  c++  java
  • [问题解决]关于CUDA 7.5自带例子程序particles运行速度过慢的问题-Debug版本和Release版本的区别

    以下基于“WIN7(64位)+Visual Studio 2010+CUDA7.5+GeForce GTX 850M”

    问题描述:当我在上述计算机配置环境中安装好CUDA 7.5后,立即编译运行了其自带的例子程序“particles”,发现速度远没有像网上说的2000+fps那么快,而仅仅只有9.4fps。

    问题解决:将编译版本由Debug改为Release,问题即得以解决。注意,Release版本的编译环境配置方法跟Debug版本的一模一样,两者是平权的两个版本。(配置方法参照“WIN7环境下CUDA7.5的安装、配置和测试(Visual Studio 2010)中Step.12~Step.14

    后续分析关于Debug版本和Release版本的区别

      VS中的程序有Debug和Release两个版本。

      Debug版本通常称为调试版本,通过一系列编译选项的配合,编译的结果通常包含调试信息,而且不做任何优化,以为开发人员提供强大的应用程序调试能力。

      而Release版本通常称为发布版本,是为用户使用的,一般用户不允许在发布版本上进行调试,所以不保存调试信息。同时,它往往进行了各种优化,以期达到代码最小和速度最优的平衡,为用户的使用提供便利。

      Debug程序通常比Release程序要慢,尤其是处理视频方面Release要比Debug快很多。

      Debug跟Release在初始化变量时所做的操作是不同的,Debug是将每个字节位都赋成0xcc,而Release的赋值则近似于随机。

      代码存在错误时在Debug方式下可能会忽略而不被察觉到。Debug方式下数组越界也大多不会报错,而在Release中就暴露出来了,这个查找起来就比较难了。

      只有Debug版本的程序才能设置断点、单步执行、使用trace/assert等调试输出语句。Release不包含任何调试信息,所以体积小、运行速度快。

    References

    vs中debug和release版本的区别

  • 相关阅读:
    Cookies
    一个完整的upstart脚本分析
    squid总结
    python递归读取目录列表
    python删除文件
    ubuntu切割mp3文件
    TP-LINK TL-WN725N V2 / rtl8188eu Linux驱动安装
    ubuntu启动脚本
    su对环境变量做了什么
    sudoers文件配置
  • 原文地址:https://www.cnblogs.com/avin/p/6278227.html
Copyright © 2011-2022 走看看