Una de las tecnologías que trae DirectX 12 Ultimate es DirectStorage para PC, la cual proviene de las consolas Xbox Series y tiene que ver con el uso de los SSD NVMe. Sin embargo, el hecho de adoptar una idea proveniente de las consolas no tiene por qué ser una buena idea y pese a que los juegos cada vez están usando más, las unidades de estado sólido están ignorando la API de los de Redmond para el manejo de datos del SSD desde la tarjeta gráfica. ¿A qué se debe?
Por el momento, DirectStorage en PC solo ha sido empleado en un solo título, Forspoken, un título de Square-Enix que ha pasado con más pena que gloría entre las novedades de juegos para PC que salieron el año pasado. Sin embargo, hay un motivo para ello que explican el desuso de esta tecnología por parte de la industria del videojuego en PC.
DirectStorage en PC no es lo mismo que en Xbox
Para entender el motivo por el cual DirectStorage en PC es una mala idea hemos de partir de algo que a estas alturas ya sabemos todos: PC y consola usan configuraciones de RAM distintas. Y no, no nos referimos a la cantidad ni al tipo de memoria. Si no qué memoria de vídeo y memoria RAM no son entes físicamente separados en una consola, en cambio, en un PC sí y es ahí donde radica el problema de DirectStorage.
La clave en consola, en concreto en Xbox Series, pero PS5 tiene un sistema idéntico, es que dentro de sus 16 GB se asigna una parte en exclusiva para la tarjeta gráfica. Pero de cara a copiar los datos desde el SSD es un salto de memoria solo por el hecho que físicamente hay una sola memoria. En cambio, si hablamos del PC la cosa cambia, ya que se tiene que copiar desde el SSD a la RAM y de esta a la memoria de vídeo. ¿Y qué ventaja tiene esto? Pues menores que en consola, solo que el proceso de copia lo pueda llevar la tarjeta gráfica, pero seguimos necesitando una gran cantidad de memoria de respaldo en la memoria del sistema.
Lo ideal sería la copia desde el SSD a la GPU, pero no se puede, más bien Microsoft vende DirectStorage como una forma de descargar a la CPU del proceso de carga y se trata de una función que lleva en las tarjetas gráficas desde 2018, en concreto, las primeras en incluirlo fueron las RTX 20 bajo el nombre de RTX IO, pero a día de hoy lo tienen todas las tarjetas gráficas de última generación independientemente de la marca.
Las consolas tienen hardware especializado, el PC no
El único cambio importante en DirectStorage es hacer que sea la GPU en la tarjeta gráfica la encargada de realizar la descompresión de datos a gran velocidad, tanto para uso propio como para dejarlos en la RAM del sistema. Esto significa malgastar recursos para gráficos para hacer una función que en consolas se ejecuta a través de un procesador especializado, para ello que se encuentra como complemente principal en el chip de todas las consolas de nueva generación. Es decir, que cuando realizan la descompresión de datos desde el SSD al vuelo no están consumiendo recursos ni de su CPU y tampoco de su chip gráfico, con la versión de DirectStorage de PC sí y ese es el mayor problema.
Lo peor de todo es que este proceso en consolas está automatizado por completo, los juegos se encuentran comprimidos en Xbox y por el trabajo de compresión y descompresión los programadores no se han de preocupar. En cambio, en PC hace falta programarlo. De ahí su nivel absoluto de desuso en los juegos de PC a día de hoy, pese a que es una tecnología que ya se encuentra disponible. Es más, si le quitas la descompresión es posible utilizarlo en tarjetas gráficas que no son DX12 Ultimate, pero en todo caso dudamos mucho que los desarrolladores lo quieran usar en PC.
¿Por qué DirectStorage no se está empleando casi en juegos de PC?
El motivo de ello es simple, en consolas se ven limitados por el tamaño del chip y, por tanto, no pueden añadir más núcleos de CPU, de ahí a usar unidades especializadas. No solo eso, sino que en ordenador no hay problemas en subir los requisitos de los juegos en ese sentido, en cambio, en consolas el hardware es fijo.
Pero es que hay un tema adicional que es la memoria RAM del PC, si es necesario acceder al SSD continuamente para ir volcando los datos en consolas es por falta de espacio. Sin embargo, los más buscados en los juegos no son grandes cantidades que se transmiten secuencialmente para una instalación, sino pequeños archivos que se buscan aleatoriamente. En todo caso, tenemos que en consola estos se transmiten al espacio que tenemos disponible en la RAM, ¿ocurre lo mismo en PC? No, se lee de la RAM del sistema y muchos títulos usan dicha memoria como soporte de respaldo.
Es decir, independientemente del formato que estemos utilizando para el almacenamiento, en PC lo que se hace es emplear una mayor cantidad de memoria RAM para guardar esos datos. Al fin y al caso, el acceder a ella es más rápido que hacerlo hacia el SSD. Bueno, incluso con DirectStorage en PC no estás accediendo a la unidad de estado sólido, sino a una copia en la RAM y para ello no hace falta su uso.