【问题标题】:Timing the runtime of a program via the Terminal通过终端计时程序的运行时间
【发布时间】:2011-06-08 04:33:47
【问题描述】:

我已经编写了一个 C++ 程序,我想计算完成它所需的时间长度 - 是否有一些我可以使用的终端命令?

【问题讨论】:

    标签: c++ terminal


    【解决方案1】:

    您可以使用大多数(可能是所有)Linux 发行版中可用的“时间”命令。它将打印作为系统、用户和总时间花费的时间。

    例如

    bash-4.1$ 时间(睡眠 1;睡眠 1)

    会输出类似的东西

    实际0m2.020s 用户 0m0.014s 系统 0m0.005s

    正如您在括号中看到的那样,您可以启动所需的每个命令链。

    【讨论】:

      【解决方案2】:

      在 *nix 中称为 time

      【讨论】:

        【解决方案3】:

        对函数进行多次迭代(可能是 1000 次),以便获得足够大的数字。然后使用 time.h 创建两个 time_t 类型的变量 - 一个在执行之前,一个在执行之后。将两者相减并除以迭代次数。

        【讨论】:

          【解决方案4】:

          或 PowerShell 中的 Measure-Command

          【讨论】:

            【解决方案5】:

            我试图更好地解释:)

            如果你使用 g++ 编译过你的代码,例如:

            g++ -std=c++14 c++/dijkstra_shortest_reach_2.cpp -o dsq
            

            为了运行它,你输入:

            ./dsq
            

            为了以文件内容作为输入来运行它,请键入:

            ./dsq < input07Dijkstra.txt
            

            现在回答。

            为了获得程序输出到屏幕的持续时间,只需键入:

            time(./dsq < input07Dijkstra.txt)
            

            或者没有输入:

            time(./dsq)
            

            对于第一个命令,我的输出是:

            real    0m16.082s
            user    0m15.968s
            sys     0m0.089s
            

            希望对你有帮助!

            【讨论】:

              猜你喜欢
              • 2012-11-14
              • 1970-01-01
              • 1970-01-01
              • 2014-02-09
              • 2021-05-06
              • 1970-01-01
              • 2011-07-11
              • 2020-11-23
              • 1970-01-01
              相关资源
              最近更新 更多