用MATLAB进行图像处理

图像处理概念,算法和MATLAB

记录性能改进

最近,我注意到我们在撰写一些产品发布说明的方式上发生了变化,我想跟你提一下。

在我在MathWorks做工具箱和MATLAB开发的四分之一世纪里,有几个重点领域在整个时间里一直非常一致。其中一个领域就是性能。具体来说,就是计算速度。

如果您已经使用MATLAB超过五年,那么您在MATLAB中经常使用的某些东西很可能已经完全重新实现,以使其在不断发展的计算环境中运行得更快。

也许是新的算法,比如图像调整大小或高斯滤波。可能修改了内存访问模式,以利用不断变化的内存缓存架构,例如图像大小调整(再次)、换位(和交换),conv2,甚至是看似简单的问题总和函数。

可能您所依赖的函数已被修改以适应新的核心库,如LAPACK或FFTW。

当多核计算机变得普遍时,许多、许多、许多功能和操作符都被彻底改造了。然后再进行修改,利用扩展处理器指令集实现指令字并行。

最后,给出了MATLAB语言执行的基础2015年彻底检修让一切都变得更快。从那时起,MATLAB执行引擎几乎在每个版本中都在不断改进,以添加新的优化类型。

这么多年来,所有这些努力的奇怪之处在于……嗯…模糊的我们通常在发布说明中描述性能改进。

例如,下面是图像处理工具箱R2018b发布说明中的一个片段:

就像我说的,它很模糊。

我们从未想过要隐晦。只是性能测量几乎总是难以准确和精确地报告,而且每个用户的体验几乎总是不同的,有时甚至相当不同。我们公司文化的一部分是,我们对发表可能被认为不准确的声明过敏。我认为这就是在发布说明中关于性能改进的模糊声明背后的历史。(好吧,我应该明确地说明这一点:这只是我个人的观点,并不是公司政策是什么或曾经是什么。)

事情开始发生变化了。我们的文档编写者现在在编写关于性能的发布说明时可以遵循一个新的标准。以下是上个月发布的R2019b的一个样本:

发布说明描述了改进了哪些操作、如何计算时间、特定发布的时间以及用于测量性能的计算机的详细信息。

在未来,我们将以这种详细程度报告更多的性能更改。我认为这是一个很大的进步!




由MATLAB®R2019b发布

|
  • 打印
  • 发送电子邮件

评论

要发表评论,请点击此处登录到您的MathWorks帐户或创建一个新帐户。