每秒百万次迭代

时间:2012-06-20 09:35:57

标签: c# performance

我有一个我们实现的解析器,我想将它与其他一些商业解析器进行比较。其他解析器正在以“每秒百万次迭代”的方式测量它们的速度。如何在C#中测量解析器的迭代次数?

4 个答案:

答案 0 :(得分:1)

为了使测量具有可比性,您需要知道商业解析器中的那些“迭代”。

一旦将其加密,请使用StopWatch类来衡量执行时间。在与商业解析器(相同的应用程序)相同的上下文中运行解析器,计算解析器中的“迭代”(在您的上下文中的任何内容),并通过将计数除以测量的时间来计算“每秒的迭代次数”。

答案 1 :(得分:1)

在解析器中添加一些计数器。什么是“iteration”本身?它正在重复过程。 例如。如果您的解析器专用于解析手机,那么来自给定数据的一个已解析的电话号码本身就是迭代。计算这个迭代。

答案 2 :(得分:1)

以下是如何在Visual Studio上执行此操作的示例 http://www.dotnetperls.com/benchmark

同样要获得精确的结果Complie到Exe并作为独立的控制台应用程序运行,不要在Visual Studio中运行它。

答案 3 :(得分:1)

我要做的是,查看商业解析器的代码,看看如何使用dotPeekReflector等工具完成性能测量。然后以相同的方式实现完全以使其具有可比性。否则你的结果将毫无意义。