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版本的区别

  • 相关阅读:
    ubuntu下安装VMware tools
    ubuntu 输入su提示认证失败的解决方法
    Squishy Bird 压扁小鸟
    js 毫秒转日期(yy-MM-dd hh:mm:ss)
    js--使用构造器函数来新建对象及操作
    css中table样式
    js 字符串截取
    JavaScript中Math--random()/floor()/round()/ceil()
    canvas draw a image
    html5 canvas simple drawing
  • 原文地址:https://www.cnblogs.com/avin/p/6278227.html
Copyright © 2011-2022 走看看