如题,请问版主大人什么叫“定点计算能力”,这个怎么计算,是否和具体的硬件架构有关?(我想通过这个来分析一下基于CUDA图像直方图性能)
楼主您好:
这个要根据你引用的此词的上下文决定,但一般情况下:
(1)可能是指的整数运算能力(这个一般叫整数)
(2)可能是指的subnormal number(即:特定指数的定点数)
请您考虑此2者是否适用您,如果不适用,建议原样发出原文。然后我将为您分析原文中的上下文含义。
感谢您的来访。
谢谢版主的解答,其实是这样的:
我通过opencv读取图像,将rgb三通道分开根据亮度公式计算亮度,进行直方图统计,想将自己测试的性能与相关书籍中的性能测试做一下比较,但是由于一些原因被告知直方图计算是定点计算,此时的峰值能力不是flops,应该通过定点计算能力指标来进行比较(就是这样了。。。,似乎还和架构有一些关系,具体和架构有没有关系我想请教一下版主)我对于定点计算不是太清楚,可能这里的叫法不太通用,但是我的目的是比较图像直方图性能,那资深的版主,对于图像直方图分析我应该从哪方面进行分析呢?
(这是我自己心中的疑问:图像直方图其实就是对256个灰度中各个灰度值数量的统计,这里的定点是不是指每个灰度值统计,那么又怎么分析呢?)
直方图统计,一般需要您进行范围判断(和/或整数移位、逻辑AND之类的),最后往往还需要进行原子或者非原子的累加等操作。
这些操作一般更多的被称为“整数运算”而不是“定点数”(当然,这个只是公用的叫法,你显然可以有自己的任意叫法的,但叫法不重要,不是么)。单位也往往叫IOPS或者GIOPS之类的(Giga Intruction Operations Per Second)
具体分析要看您使用的统计算法了,然后您将您的算法需要的步骤进行分解,归结出“比较”,“移位”,“累加”等操作。然后手册里有个基本指令的吞吐率表,你再参考这个,就知道自己的统计算法大致可能会卡在哪里了。
大致如此吧。
感谢来访。
谢谢您的回答,按您所说”比较“,”移位“,”累加“等操作都可归为”整数运算“对吧?对于这类操作的性能评估都是用GIOPS来评估,是吧。
你显然看懂了我的中文。
如果较真的说,他们应该被称作“整数和逻辑运算”,但实际上近年来,大家总是叫他们“整数运算的”。特此澄清下。
O(∩_∩)O哈哈~