Microsoft ha avviato la distribuzione del DirectStorage 1.2, che aggiunge alcune novità e corregge diversi bug sulla base dei feedback ricevuti dagli utenti nel corso dei mesi.
Ecco le novità riportate nel changelog:
- DirectStorage attualmente apre i file in modalità senza buffer. Questo consente di evitare copie non necessarie, portando i dati sulla GPU il più rapidamente possibile. Tuttavia, abbiamo sentito da alcuni sviluppatori che vorrebbero poter utilizzare lo stesso codice sia su SSD ad alta velocità che su dischi rigidi legacy. I dischi rigidi legacy richiedono IO bufferizzato per mascherare i lunghi tempi di ricerca. Per questo motivo, abbiamo aggiunto la possibilità di configurare DirectStorage per aprire i file in modalità bufferizzata. Questo può essere abilitato impostando il campo “ForceFileBuffering” in DSTORAGE_CONFIGURATION1 su TRUE. Si noti che l’IO bufferizzato non è compatibile con BypassIO e pertanto DisableBypassIO deve essere impostato su TRUE quando si utilizza questa opzione. La funzione dovrebbe essere abilitata solo per le unità HDD più lente che trarranno vantaggio dalle funzionalità di buffering dei file del sistema operativo.
- DirectStorage attualmente sceglie il percorso di decompressione per i formati di compressione incorporati in base alle funzionalità supportate della GPU. Esistono scenari in cui viene scelto un percorso di fallback basato sulla CPU. Abbiamo sentito dagli sviluppatori che sarebbe utile capire quale percorso di decompressione viene utilizzato in modo che le impostazioni di risoluzione delle texture predefinite possano essere impostate in base a questo. Per abilitare ciò, abbiamo aggiunto una nuova API per interrogare quale percorso ha scelto il runtime. IDStorageQueue2::GetCompressionSupport() restituisce un valore che indica se per la decompressione viene utilizzata un’implementazione ottimizzata per la GPU, il fallback della GPU per il fallback della CPU, nonché i tipi di code che DirectStorage utilizzerà per la decompressione.
Correzioni di bug
- Risolto https://github.com/microsoft/DirectStorage/issues/22 aggiungendo un campo “Reserved1” a DSTORAGE_REQUEST_OPTIONS. Ciò rende più esplicito il layout in memoria della struttura, ma in realtà non cambia il layout rispetto alle versioni precedenti.
- Corretto DSTORAGE_REQUEST_DESTINATION_TEXTURE_REGION per le texture 3D, come riportatoci sul canale DirectX Discord .
- Risolto il problema di pianificazione che si manifestava durante il trasferimento di dati non compressi dalla memoria ai buffer.
Miglioramenti delle prestazioni
- Spostata la copia dopo la decompressione della GPU nella coda di calcolo per le GPU su cui è più veloce.
📰 Segui NewsDigitali anche su Google News, selezionaci tra i preferiti cliccando la stellina 🔥