Multithread-Optimierung
Aktivieren Sie die Multithread-Optimierung, um die Leistung von Optimize zu verbessern und die Ausführung einer Optimize-Sitzung zu beschleunigen.
Zum Aktivieren der Multithread-Optimierung setzen Sie die Konfigurationseigenschaft EnableMultithreading auf true.
*
Das Aktivieren der Multithread-Optimierung kann die Optimize-Leistung deutlich steigern. Die Höhe der Leistungssteigerung hängt von vielen Faktoren ab, darunter die folgenden:
*
*
*
*
Das erreichbare Maximum an paralleler Ausführung wird von den nichtparallelen Verarbeitungsbereichen bestimmt und ist bei jeder Optimize-Sitzung verschieden.
Verwenden Sie im Allgemeinen die folgenden Richtlinien.
*
Ein wesentlicher Teil der Ausführung einer Optimierungssitzung umfasst folgende Schritte:
1.
2.
3.
4.
5.
Die Multithread-Optimierung wirkt sich nicht auf diese seriell ausgeführten Prozesse aus. Um die Leistung beim Lesen aus der PCT- und beim Schreiben in die OCT-Tabelle zu verbessern, wird empfohlen, ein Datenbankladeprogramm zu verwenden und die Datenbankkonfiguration zu optimieren.
*
Optimize nutzt die Vorteile der Multithread-Optimierung am besten bei der Verarbeitung der Algorithmen, die kundenübergreifende Regeln implementieren.
*
Sie definieren die Anzahl der Threads, die kundenübergreifende Regeln verarbeiten, über die Konfigurationseigenschaft MaxCustomerSampleProcessingThreads. Möglicherweise müssen Sie eine Optimierung Ihres Systems vornehmen, um den optimalen Wert für diese Einstellung je nach verfügbarem Arbeitsspeicher und Hardware-Leistungsmerkmalen zu ermitteln.
*
Bei einem niedrigeren Wert für CustomerSampleSize können unter Umständen mehr Threads parallel ausgeführt werden, da die RAM-Auslastung pro Thread geringer ausfällt. Eine Verringerung dieses Wertes verkürzt jedoch auch die erforderliche Zeit zur Verarbeitung eines Datenblocks. Durch diese Konfiguration wird das Verhältnis zwischen Datenblockverarbeitung und Vorverarbeitung kleiner. Dies wiederum bewirkt, dass die Vorverarbeitung schneller zu einem Engpass wird.
*
Sie definieren die Anzahl der Threads, die Daten aus Kundenstichproben lesen, über die Konfigurationseigenschaft ProcessingThreadQueueSize. Sie definieren die Anzahl der Threads, die Daten in eine Bereitstellungstabelle schreiben, über die Konfigurationseigenschaft PostProcessingThreadQueueSize.
Weitere Details zur Feineinstellung der Multithread-Optimierung für Ihre spezifische Optimize-Implementierung erhalten Sie von Ihrem IBM® Unica®-Ansprechpartner.