Benchmarks
Vergleichen Sie die Leistung sequenzieller und paralleler Streams bei statistischen Berechnungen.
Benchmarks ist eine kostenlose Java Academy-Lektion auf CoddyKit. Dies ist Lektion 3 von 3. Du kannst die komplette Lektion unten kostenlos lesen – dann übst du sie direkt im Browser mit einem integrierten Code-Editor und einem KI-Tutor rund um die Uhr. Sie ist Teil des Java Academy-Lernpfads, und dein Fortschritt wird über Web und CoddyKit-App synchronisiert. Der Java Academy-Kurs umfasst insgesamt 3 Lektionen.
Einführung
Benchmarks messen den Geschwindigkeitsunterschied zwischen sequenziellen und parallelen Streams.
Vorbereitung
Verwenden Sie einen großen Datensatz, beispielsweise mehrere Millionen Zahlen, und messen Sie die Ausführungszeit für Summe und Durchschnitt.
Code: Sequenzieller Benchmark
Hiermit wird die Zeit für eine sequenzielle Summenberechnung gemessen.
import java.util.*;public class Main {
public static void main(String[] args) {
List<Integer> nums = new ArrayList<>();
for(int i=0;i<1_000_000;i++) nums.add(i);
long start = System.currentTimeMillis();
long sum = nums.stream().mapToLong(n -> n).sum();
long time = System.currentTimeMillis() - start;
System.out.println("Sequential sum=" + sum + " in " + time + "ms");
}
}
Code: Paralleler Benchmark
Hiermit wird die Zeit für eine parallele Summenberechnung gemessen. Bei großen Datensätzen sollte sie schneller sein.
import java.util.*;public class Main {
public static void main(String[] args) {
List<Integer> nums = new ArrayList<>();
for(int i=0;i<1_000_000;i++) nums.add(i);
long start = System.currentTimeMillis();
long sum = nums.parallelStream().mapToLong(n -> n).sum();
long time = System.currentTimeMillis() - start;
System.out.println("Parallel sum=" + sum + " in " + time + "ms");
}
}
Vergleichen
Vergleichen Sie die Zeiten: Wenn die Datenmenge groß und die Berechnung CPU-gebunden ist, ist die parallele Verarbeitung schneller. Bei kleinen Listen kann die sequenzielle Verarbeitung überlegen sein.
Code: Benchmark für den Durchschnitt
Sie können auch die Berechnung des Durchschnitts benchmarken, um den Geschwindigkeitsunterschied zu sehen.
import java.util.*;public class Main {
public static void main(String[] args) {
List<Integer> nums = new ArrayList<>();
for(int i=0;i<1_000_000;i++) nums.add(i);
long start = System.currentTimeMillis();
double avg = nums.parallelStream().mapToInt(n -> n).average().orElse(0);
long time = System.currentTimeMillis() - start;
System.out.println("Parallel average=" + avg + " in " + time + "ms");
}
}
Benchmark-Prüfung
Schnelltest: Wann zeigen parallele Streams normalerweise Leistungsvorteile?
Zusammenfassung
Zusammenfassung: Sie haben sequenzielle und parallele Streams miteinander verglichen. Bei großen Datenmengen ist die parallele Verarbeitung überlegen, bei kleinen kann die sequenzielle schneller sein.
Häufig gestellte Fragen
Ist die Lektion „Benchmarks“ kostenlos?
Ja — der vollständige Text von „Benchmarks“ ist hier im Web kostenlos zu lesen. Um sie interaktiv zu üben (integrierter Code-Editor und 24/7 KI-Tutor) und den Rest des Java Academy-Kurses freizuschalten, upgrade auf CoddyKit PRO. Der Java Academy-Kurs umfasst insgesamt 3 Lektionen.
Was lerne ich in „Benchmarks“?
Vergleichen Sie die Leistung sequenzieller und paralleler Streams bei statistischen Berechnungen. Du übst Java Academy mit praktischem Code, den du direkt im Browser ausführst, und ein 24/7 KI-Tutor beantwortet deine Fragen während du die Lektion bearbeitest.
Brauche ich Erfahrung, um Java Academy zu starten?
Keine Vorkenntnisse erforderlich. Java Academy auf CoddyKit ist für Anfänger bis fortgeschrittene Lernende strukturiert, sodass du hier starten oder von Anfang an beginnen und in deinem eigenen Tempo voranschreiten kannst. Dies ist Lektion 3 von 3.
Wie lange dauert die Lektion „Benchmarks“?
Die meisten CoddyKit-Lektionen dauern etwa 5–10 Minuten. Jede ist kompakt und interaktiv, sodass du stetig Fortschritte machst und genau dort weitermachst, wo du aufgehört hast – im Web und in der App.
Kann ich in dieser Java Academy-Lektion Code schreiben und ausführen?
Ja. Jede Java Academy-Lektion enthält einen integrierten Code-Editor, sodass du echten Code direkt in deinem Browser schreibst und ausführst und sofort KI-Feedback erhältst — ohne lokale Einrichtung erforderlich.
Alle Lektionen in diesem Kurs
- Entwurf
- Implementierung
- Benchmarks