Warum ist mein Programm so langsam?

Jemand entschied sich für einen kurzen Test, um festzustellen, wie schnell der native Client im Vergleich zu Javascript ist. Sie haben das getan, indem sie 10 000 000 sqrt-Berechnungen durchgeführt und die dafür benötigte Zeit gemessen haben. Das Ergebnis mit Javascript: 0,096 Sekunden und mit NaCl: 4,241 Sekunden ... Wie kann das sein? Ist Geschwindigkeit nicht einer der Gründe, NaCl überhaupt zu verwenden? Oder fehle ich einige Compiler-Flags oder etwas?

Hier ist der Code, der ausgeführt wurde:

clock_t t = clock();
float result = 0;
for(int i = 0; i < 10000000; ++i) {
    result += sqrt(i);
}
t = clock() - t;      
float tt = ((float)t)/CLOCKS_PER_SEC;
pp::Var var_reply = pp::Var(tt);
PostMessage(var_reply);

PS: Diese Frage ist eine bearbeitete Version von etwas, das in dernative Client-Mailingliste

Antworten auf die Frage(1)

Ihre Antwort auf die Frage