Ein reproduzierbarer Immich-Benchmark legt Medienkohorte, Client-Pfad, Cache-Zustand, Überschneidungen im Hintergrund und den gemessenen Endpunkt fest, bevor eine einzelne Variable geändert wird.
Ohne diese Kontrollen kann ein schnellerer zweiter Durchlauf auf bereits vorgewärmte Daten statt auf bessere Hardware zurückzuführen sein, während ein Leerlauftest die Konkurrenz um Ressourcen während des Imports verbergen kann. Ein aussagekräftiger Home-Server-Benchmark bildet die tatsächlichen Anforderungen des Haushalts an Browsing, Upload, Suche und Wiederherstellung in derselben Reihenfolge ab.
Benutzerergebnisse festlegen, bevor Messwerte erfasst werden
Beginnen Sie mit beobachtbaren Ergebnissen wie der Annahme eines Uploads, der Zeit bis ein neues Foto durchsuchbar ist, der Fertigstellung von Miniaturansichten in der Zeitleiste, dem Öffnen des Originals, dem Start eines Videos oder der Wiederherstellung einer nutzbaren Bibliothek. CPU-Auslastung und Festplattendurchsatz erklären diese Ergebnisse, sind aber kein Ersatz für das Resultat aus Benutzersicht.
Der Artikel zum Immich-Datenpfad von ZimaSpace unterscheidet zwischen Upload-Annahme, Verarbeitungsbereitschaft, Auswahl in der Suche und ausgelieferten Medien. Diese Struktur ist hilfreich, weil ein Benchmark einen einzelnen Endpunkt messen muss, anstatt mehrere voneinander abhängige Phasen zu einer irreführenden Gesamtsumme zu vermischen.
Wählen Sie zwei interaktive Endpunkte und einen Hintergrund-Endpunkt aus. Legen Sie für jeden ein Ziel fest und erfassen Sie sowohl den Median als auch die Latenz oder Abschlussrate im langsamen Randbereich. Ein Benchmark mit vielen voneinander unabhängigen Werten lässt sich nur schwer interpretieren; eine kleine, an eine konkrete Entscheidung gebundene Auswahl hält das Ergebnis umsetzbar.
Datensatz, Client-Pfad und Ausgangszustand unverändert halten
Verwenden Sie in jedem Durchlauf dieselben repräsentativen Fotos und Videos, einschließlich Formaten und Größen, die der Familienbibliothek entsprechen. Legen Sie Konto, Client-Gerät, Netzwerkroute, Immich-Version und Einstellungen für abgeleitete Dateien fest. Selbst ein geänderter Browser-Cache oder WLAN-Pfad kann den Konfigurationsunterschied überdecken, der getestet werden soll.
Ein Artikel zum Benchmarking der Vektorsuche betont reproduzierbare Workloads für Embeddings, Einfügen und Abruf bei der Untersuchung der PostgreSQL-Suchleistung. Immich ist eine umfassendere Anwendung, doch das Versuchsprinzip lässt sich übertragen: Kontrollierte Eingaben und definierte Abrufvorgänge sind erforderlich, bevor Zeitunterschiede eine Schlussfolgerung stützen.
Erstellen Sie ein Datensatzmanifest mit Dateiprüfsummen, Anzahlen, Byte-Gesamtsummen, Fotoformaten, Videolängen und erwarteten Suchergebnissen. Fügen Sie eine Start-Checkliste für neu gestartete Dienste, Aufwärmaktionen, eingereihten Aufgaben und konkurrierende Anwendungen hinzu. Wenn sich die Checkliste unterscheidet, kennzeichnen Sie den Durchlauf als nicht vergleichbar, statt ihn zu mitteln.
Kalt-, Warm- und Dauerphasen ausführen
Die Kaltphase zeigt Initialisierungs- und Erstzugriffskosten. Die Warmphase zeigt die Wiederverwendung bei unmittelbaren Wiederholungen. Die Dauerphase kombiniert wiederholte Interaktionen mit einem repräsentativen Import oder einer Hintergrundwarteschlange über einen ausreichend langen Zeitraum, um thermische Drosselung, Speicherdruck, Speicherwarteschlangen und Ressourcenkonkurrenz sichtbar zu machen.
Ein Community-Bericht beschreibt eine erste intelligente Suche, die etwa fünf Sekunden dauerte, während eine unmittelbare Wiederholung bei ungefähr einer halben Sekunde lag, als sich der Modellspeicher veränderte. Diese Werte sind kein Benchmark-Standard; sie zeigen, warum das Mitteln kalter und warmer Anfragen den Übergang verbirgt, den der Test erklären soll.
Führen Sie jede Phase mindestens dreimal aus und bewahren Sie die ursprünglichen Zeitstempel und Ressourcenverläufe auf. Für interaktive Aufgaben sollten Sie den Median und einen Messwert für den langsamen Randbereich festhalten, für Hintergrundaufgaben zusätzlich die Anzahl der Warteschlangenelemente pro Minute. Brechen Sie den Durchlauf ab, wenn Fehler, heftige Auslagerung oder thermische Grenzwerte den vorgesehenen stabilen Zustand ungültig machen.
Ein Versuchsblatt mit nur einer Variablen verwenden
Formulieren Sie die Hypothese vor dem Durchlauf: Eine Änderung der Datenbankplatzierung, der Worker-Konkurrenz, des Arbeitsspeicherlimits, des Netzwerkpfads oder des Beschleunigers soll einen benannten Endpunkt über einen bestimmten Mechanismus verbessern. Halten Sie alles andere konstant. So verhindern Sie, dass ein Upgrade mit mehreren Änderungen zwar ein schnelleres Ergebnis liefert, aber keine belastbare Ursache erkennen lässt.
Eine allgemeine Engpassanalyse erklärt, dass CPU-, RAM-, Speicher- und Netzwerkbegrenzungen unterschiedliche Auslastungsmuster und Auswirkungen auf die Benutzer haben. Auf Immich übertragen sollten sich unterstützende Messwerte konsistent mit dem Endpunkt bewegen; das am stärksten ausgelastete Diagramm zeigt nicht automatisch die begrenzende Komponente.
Erfassen Sie die Ausgangs- und geänderten Ergebnisse für Kalt-, Warm- und Dauerphasen und kennzeichnen Sie sie als bestanden, nicht bestanden oder nicht eindeutig. Verwerfen Sie Verbesserungen, die sich bei Wiederholungen nicht bestätigen oder Fehler, instabile Temperaturen, verlorenen Fortschritt in der Warteschlange oder eine längere Wiederherstellung verursachen. Bewahren Sie Manifest und Versuchsblatt auf, damit ein künftiges Release ehrlich verglichen werden kann.
Tech- & KI-Zentrum
Mehr zum Lesen

Warum verarbeitet Immich vorhandene Daten nach einem Upgrade erneut?
Immich verarbeitet Assets möglicherweise erneut, wenn ein Upgrade frühere Derivate, Metadaten, Modelle oder den Status von Aufgaben ungültig macht; wiederholte, endlose Verarbeitung ist ein...

Welche Abhängigkeiten setzen der tatsächlichen Immich-Leistungsgrenze am häufigsten Grenzen?
Immich wird auf jedem gemessenen Pfad durch die langsamste Abhängigkeit begrenzt, sodass Upload, Suche, Durchsuchen und Wiedergabe unterschiedliche Obergrenzen haben können.

Immich-Netzwerk: Wie Erkennung, DNS und Routing Erreichbarkeit ermöglichen
Immich ist nur erreichbar, wenn die Auswahl des Endpunkts, DNS, Routing, NAT- oder Proxy-Verarbeitung, TLS und die Antwort der Anwendung einen gültigen Pfad bilden.

