我正在编写一个性能相当关键的应用程序。对于哪个是x64 CPU的最高效数据类型,我有点困惑。高效代码:VB.Net中的短整型数据类型
MDSN说"In some cases, the common language runtime can pack your Short variables closely together and save memory consumption."而且还"The Integer data type provides optimal performance on a 32-bit processor"
我使用一个庞大的数据量(平均值在交错数组[10或更多] [30] [128128]约500万倍的值),以生成位图实时(数据值的热图)。所有的数据点都是200到3500之间的整数,所以我可以使用short或integer。哪个效率最高?
谢谢。
什么意思是“巨大的”?你有可能用整数得到'OutOfMemoryException'吗?否则,使用整数,一个CPU被设计成可以有效地使用32位值。 –
锯齿阵列平均128 * 128 * 30 * 10数据值(4915200)。内存使用情况良好,我的机器上大约有230 MB,这是该公司的平均规格。我问的原因是因为我正在对图像进行实时处理(改变色调等),所以我需要它尽可能高效。 – Absinthe
如果您希望原始数据的内存占用量更小,请使用short。如果想要更快速地渲染图像,另一种数据类型可能是正确的选择,但没有代码可以检查这些数据是如何使用的。 – dbasnett