Ein merkwürdiger Fall von langsamen USD-Import in Blender
Ein Entwickler stieß auf unerwartet lange Importzeiten beim Importieren von USD-Szenen in Blender. Das Profiling ergab, dass der Engpass in Blenders interner ID-Sortierfunktion `id_sort_by_name` lag. Diese Funktion, die eine Komplexität von O(N) haben sollte, verschlechterte sich auf O(N²) aufgrund des Benennungsschemas in den USD-Dateien. Durch Änderung der Benennungskonvention und Optimierung des Sortieralgorithmus reduzierte der Entwickler die Importzeiten von 4 Minuten und 40 Sekunden auf 8 Sekunden für kleinere Dateien. Das zugrunde liegende Problem liegt jedoch in Blenders Anforderung nach sortierten IDs, was zu Vorschlägen führt, die verkettete Liste durch einen Trie-Baum oder eine Hash-Tabelle zu ersetzen. Diese Optimierung unterstreicht eine häufige Herausforderung bei der Leistungsoptimierung: die Identifizierung und Behebung unerwarteter Komplexität.