我想编写一个C#应用程序来比较两台PC的性能,并知道哪台PC比另一台PC执行任务更快。
那么有这样做的算法吗? 例如((NumberOfProcessCurntlyRunning * AvailableRAM)+ CPUUsage)。
假设我们有2台具有相同计算和硬件能力的计算机。
答案 0 :(得分:3)
由于我同意没有通用算法来确定计算机的整体性能,因此科学家们正在使用一些算法为他们的论文创建更可靠的基准。因此,如果您实施另一个针对同一问题的解决方案,您可以判断它是否比以前发现的更好,即使您正在使用与之前的团队不同的计算机。
一个例子可以是基准算法dfmax。它会在短时间内让您对当前机器的速度有一些模糊的想法,但它不会考虑可用的RAM。但我认为这可能是一些开始。
答案 1 :(得分:2)
不,没有算法来确定整体计算机性能。有很多事情会影响整体表现。
您应该确定要比较的内容;访问内存,CPU缓存的效率,GC的效率,然后为每个人实现功能。
如果您需要盲测并且不关心任何特定指标,那么您可以运行相同的功能(例如快速排序)和记录时间并比较毫秒。