Microsoft bringt mit dem neuen DirectStorage 1.2 einen Leistungsschub auch auf langsamere HDDs

Microsoft bringt mit dem neuen DirectStorage 1.2 einen Leistungsschub auch auf langsamere HDDs

Microsoft hat die neueste Version seiner DirectStorage-API veröffentlicht. Die neue Version 1.2 bringt einige neue Funktionen sowie Fehlerbehebungen. Dank einiger vorgenommener Änderungen ist auch eine Leistungssteigerung geplant.

Mit DirectStorage 1.2 bringt Microsoft den gepufferten IO-Modus. Das Unternehmen sagt, es sei eine Reaktion auf Entwickler, die den gleichen Codepfad verwenden möchten, sowohl auf Solid-State-Laufwerken (SSDs) als auch auf Festplatten (HDDs). HDDs arbeiten im gepufferten IO-Modus, da sie viel längere Suchzeiten haben. Das Unternehmen schreibt:

DirectStorage öffnet derzeit Dateien im ungepufferten Modus. Dadurch können wir unnötige Kopien vermeiden und die Daten so schnell wie möglich auf die GPU bringen. Wir haben jedoch von einigen Entwicklern gehört, dass sie denselben Code sowohl auf Hochgeschwindigkeits-SSDs als auch auf älteren Festplatten verwenden möchten. Die Legacy-Festplatten erfordern gepufferte IO, um die langen Suchzeiten zu maskieren. Aus diesem Grund haben wir die Möglichkeit hinzugefügt, DirectStorage so zu konfigurieren, dass Dateien im gepufferten Modus geöffnet werden.

Abgesehen von gepuffertem IO wurde eine neue GetCompressionSupport- API eingeführt, die die Möglichkeit hinzufügt, den verwendeten Dekomprimierungspfad abzufragen, unabhängig davon, ob es sich um die GPU oder den Fallback-CPU-Pfad handelt. Das vollständige Änderungsprotokoll für DirectStorage 1.2 ist unten angegeben:

Neue Eigenschaften

  • Unterstützung für die Aktivierung von gepufferten Datei-E/A für die Verwendung auf Festplatten hinzufügen, die vom Datei-Caching-Verhalten des Betriebssystems profitieren können.
  • Fügen Sie die IDStorageQueue2::GetCompressionSupport -API hinzu, um anzugeben, welchen Pfad die DirectStorage-Laufzeit beim Dekomprimieren eines unterstützten GPU-Dekomprimierungsformats nimmt.
  • Aktualisieren Sie dstorage.h und dstorageerr.h, damit sie von der MIT-Lizenz abgedeckt werden.
  • Fügen Sie Microsoft.Direct3D.DirectStorage.winmd hinzu , um die Generierung von Nicht-C++-Bindungen an die API zu vereinfachen.

Fehlerbehebung

  • Fügen Sie das Feld „Reserved1“ zu DSTORAGE_REQUEST_OPTIONS hinzu. Dadurch wird das In-Memory-Layout der Struktur deutlicher, ändert aber nicht das Layout früherer Versionen.
  • Korrigieren Sie DSTORAGE_REQUEST_DESTINATION_TEXTURE_REGION für 3D-Texturen.
  • Behebung eines Planungsproblems, das beim Übertragen unkomprimierter Daten aus dem Speicher in Puffer aufgetreten ist

Leistungsverbesserungen

  • Verschieben Sie die Kopie nach der GPU-Dekomprimierung in die Rechenwarteschlange für GPUs, wo dies schneller ist.

Weitere Details finden Sie im offiziellen Blogbeitrag hier .

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert