我正在做一个用VB6写的数学模型。这个模型消耗的CPU时间正成为我们的一些客户的担忧,并且已经有观点认为将其移植到VB.NET将提高其性能。
该模型正在执行大量的单精度算术运算(大型网格上的有限差分方案),每隔5秒左右就会有少量的数据库访问(不够重要)。只涉及到偶尔使用^4运算符的基本算术函数。
有没有人认为移植到VB.NET可能会改善问题(或者没有)?有没有人知道有什么可靠的文章或论文可以帮助我做出这个决定?
发布于 2012-01-25 23:12:10
我的观点是,到目前为止,VB.Net不会提高性能。这种改进是通过你的优化算法的能力来实现的。
发布于 2012-01-25 23:45:06
也许你能得到的最好的性能提升是消除数据库访问(即使它看起来并不重要,I/O通常是瓶颈,而不是语言本身)。如果可能,预先获取数据并在结束时保存它,而不是每5秒访问一次。
同样,正如其他人指出的那样,如果可能的话,改变算法,因为将代码移植到.NET可能只会给你带来很小的性能好处。
但如果你将其改为.NET 4.0,也许你可以使用并行扩展,并通过使用多核来真正获得提升。http://msdn.microsoft.com/en-us/library/dd460693.aspx,但这也意味着改变算法
希望能有所帮助。;-)
发布于 2012-01-25 23:22:09
我认为内存管理的改进提高了VB.NET的性能
https://stackoverflow.com/questions/9004879
复制相似问题