首页 > 解决方案 > 如何测量在 MacBook 上运行的 VirtualBox 上开发的 C# 算法的性能?

问题描述

我正在为个人项目编写 C# 算法,并想测试该算法的性能。就像一百万次迭代需要多少等我在 MacBook Pro 上的 VirtualBox 中运行的 Visual Studio 2017 中编程。

我很确定如果我在 VirtualBox 中进行性能测试,数字永远不会是正确的。

  1. 有没有办法直接在 Mac 上测试算法性能?
  2. 或者我可以使用一些服务或工具来做到这一点?
  3. 是否有任何可用于对 .net 算法的性能进行基准测试的基准测试工具来告诉我算法有多好?

我无权访问 Windows 机器..因此问..

我还想过创建一个 Windows AWS 实例并在那里测试性能,但不确定那会有多准确..请告知..

标签: c#algorithmperformance-testing

解决方案


在 VM 中对代码进行基准测试绝对没问题,因为基准测试是相对的结果。您对代码进行基准测试,对代码进行改进并再次对其进行基准测试,以查看是否有性能改进(或者是否使情况变得更糟)。如果你想将你的算法与其他实现进行基准测试,你只需要在同一个 VM 中对它们进行基准测试。

基准只能告诉你一件事比另一件事好,而不是一件事是否好。

话虽如此,您根本不需要使用虚拟机。.Net Core 可以在 macOS 上运行,并且有很好的 .Net Core 基准测试库。


推荐阅读