Heim > Java > javaLernprogramm > Hauptteil

Wie hoch ist die Ausführungsgeschwindigkeit von Julia und Java? Leistungsvergleich von Julia und Java

不言
Freigeben: 2018-09-15 16:47:08
Original
4830 Leute haben es durchsucht

Der Inhalt dieses Artikels befasst sich mit der Ausführungsgeschwindigkeit von Julia und Java? Der Leistungsvergleich zwischen Julia und Java hat einen gewissen Referenzwert. Ich hoffe, dass er für Sie hilfreich ist.

1. Einleitung

Julias Leistung soll mit c/c++ vergleichbar sein. Ich bin sehr neugierig auf die Ausführungsgeschwindigkeit von Julia, weil ich immer Java verwendet habe, deshalb möchte ich Julia vereinfachen und Java.
Vergleichen Sie dieses Mal die Geschwindigkeit von 100 Millionen Additionsoperationen zwischen Julia und Java.

2. Vergleich zwischen Julia ohne Optimierung und Java

Zunächst einmal war der Julia-Code, den ich geschrieben habe, nicht optimiert:

x=0
@time for i in 1:10^8
    global x+=i
end
Nach dem Login kopieren

Das sind drei Ausführungen. Das Ergebnis: etwa 6 Sekunden

  6.550459 seconds (200.00 M allocations: 2.980 GiB, 18.45% gc time)
  6.565272 seconds (200.00 M allocations: 2.980 GiB, 18.15% gc time)
  6.382583 seconds (200.00 M allocations: 2.980 GiB, 18.37% gc time)
Nach dem Login kopieren

Sehen Sie sich den Java-Code und die Ausführungsergebnisse noch einmal an:

 public class Test1 {
    public static void main(String[] args) {
            long t1=System.currentTimeMillis();
            long x=0;
            for(int i = 1; i<=100000000; i++)
                x+=i;
            long t2=System.currentTimeMillis();
            System.out.println("x="+x+", duration="+(t2-t1));
        }
}
Nach dem Login kopieren

Drei Ausführungsergebnisse: etwa 40 ms

x=5000000050000000, duration=41
x=5000000050000000, duration=40
x=5000000050000000, duration=40
Nach dem Login kopieren

Von oben Ausführungsergebnisse, Java Es ist offensichtlich viel schneller als Julia, mit einem Zeitunterschied von mehr als dem Hundertfachen, aber dies ist Julias nicht optimierter Code. Schauen wir uns die Situation nach Julias Optimierung an

3 Julia und Java nach der Optimierung

Wir entfernen die globalen Variablen, fügen den Code in die Funktion ein und rufen dann die Funktion auf. Der Code lautet wie folgt:

function sumfor()
    x=0
    for i in 1:10^8
        x+=i
    end
    x
end
@time sumfor()
@time sumfor()
Nach dem Login kopieren

Das Folgende sind die Ergebnisse von drei Ausführungen. Da Julia in der ersten Ausführung eine Vorkompilierung durchführt, wird die Methode zweimal aufgerufen und das zweite Ergebnis hat Vorrang.
Die zweite Ausführung dauerte nur 0,002 ms, was viel schneller ist als bei Java.

0,080203 Sekunden (35,91.000 Zuweisungen: 1,978 MiB)
0,000003 Sekunden (5 Zuweisungen: 176 Bytes)
0,062682 Sekunden (35,91.000 Zuweisungen: 1,978 MiB, 46,11 % GC-Zeit)
0. 000002 Sekunden (5 Zuweisungen: 176 Bytes)
0,037539 Sekunden (35,91 k Zuweisungen: 1,978 MiB)
0,000002 Sekunden (5 Zuweisungen: 176 Bytes)

Zusammenfassung: Aus dem obigen Vergleich geht hervor, dass Julia es tatsächlich ist ist viel schneller als Java, aber hier wird nur ein einfacher Vergleich durchgeführt und es werden keine strengen Tests durchgeführt. Dies dient nur als Referenz.

Das obige ist der detaillierte Inhalt vonWie hoch ist die Ausführungsgeschwindigkeit von Julia und Java? Leistungsvergleich von Julia und Java. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage