2012-10-12 6 views

Odpowiedz

6

Szybkie sposobem jest użycie testing.Benchmark: wystarczy napisać coś podobnego

object Bench extends testing.Benchmark { 
    // initialize your data here 
    def run() { 
    // code to benchmark here 
    } 
} 

której prowadzony z czymś scala Bench 5 1000000 (lub bezpośrednio z IDE, edytowanie konfiguracji run), co daje czasy dla 5 zestawy 1000000 powtórzeń metody run(). Możesz porównać czasy dla każdego zestawu i sprawdzić, czy stał się spójny (pierwszy zestaw jest zwykle wolniejszy z powodu rozgrzewania maszyny JVM).

Aby uzyskać bardziej rygorystyczne podejście za pomocą narzędzia Caliper, Java microbenchmarking, zobacz ten wpis na blogu: http://www.decodified.com/scala/2011/04/19/microbenchmarking-scala-code.

+3

'testing.Benchmark' jest teraz przestarzałe w Scala 2.10 –

+14

Byłoby wspaniale, gdyby jego dokumentacja wspomniała, DLACZEGO jest przestarzała lub, co powinno się w niej znaleźć ... –