1. 程式人生 > >C++、C#、python執行效率對比

C++、C#、python執行效率對比

std::chrono::system_clock::time_point start = std::chrono::system_clock::now();

    int jj = 0;
    for (int i = 0; i < 100000000; i++)
    {
        if (i%2 == 0)
        {
            jj -= i;
        }
        else
        {
            jj += i;
        }
    }

    double tt=  std::chrono::duration_cast<std::chrono::milliseconds>
            (std::chrono::system_clock::now() - start).count();

    printf("%f, %d\n", tt, jj);

C++的debug執行時間約是release的3倍

 double currentTime = System.DateTime.Now.TimeOfDay.TotalMilliseconds;
            int jj = 0;
            for (int i = 0; i < 100000000; i++)
            {
                if (i%2 == 0)
                {
                    jj -= i;
                }
                else
                {
                    jj += i;
                }
            }
            textBox1.AppendText((System.DateTime.Now.TimeOfDay.TotalMilliseconds - currentTime).ToString() + "    ");
            textBox1.AppendText((jj).ToString() + "\r\n");

C#的debug執行時間約是release的2.5倍,約是C++的兩倍

kkk=range(1,100000000,1)
timer = tool_timer()

jj = 0;
for i in kkk:
    if i%2==0:
        jj -= i;
    else:
        jj += i;

print str(timer.elapsed_ms()) + "  " + str(jj)

輸出: 15106.3252897  50000000

C++的debug執行時間約是release的3倍

C#的debug執行時間約是release的2.5倍,約是C++的兩倍

python執行時間約是C#debug的37倍,是C#release的88倍

python執行時間約是C++debug的53倍,是C++release的167倍