SSDs: ¿La moda justifica tener uno? SSDs: ¿La moda justifica tener uno?

SSD o dispositivo de almacenamiento de estado solido. El gran cambio en cuanto a la arquitectura de hardware que los computadores poseen. Si bien es probable que tarde o temprano todos terminemos teniendo uno, hay que preguntarse si este es el momento adecuado.

SSDs: ¿La moda justifica tener uno?

por

SSD o dispositivo de almacenamiento de estado solido. El gran cambio en cuanto a la arquitectura de hardware que los computadores poseen. Si bien es probable que tarde o temprano todos terminemos teniendo uno, hay que preguntarse si este es el momento adecuado.

Los discos duros SSDs están tornándose cada vez mas populares. Ya incluso en medios más tradicionales se les menciona como una alternativa cercana y no como algo oscuro y lejano. Los titulares suelen estar repletos de frases que hablan sobre como estos dispositivos acabaran el reinado de los discos duros tradicionales en el corto plazo. De hecho, sitios como Anandtech no dudan en recomendarlos y los consideran la mejora mas sobresaliente que se le puede hacer a un computador.

Por la forma como se están mencionando estos nuevos discos, junto con el hecho de que ya varios modelos están llegando a precios y capacidades razonables, pareciese ser que este va a ser el año en que este mercado comience a desarrollarse con intensidad.

¿Por qué han causado tanto revuelo este nuevo medio de almacenamiento? La única razón es que en una época donde pareciese ser que el rendimiento de los discos duros se ha estancado, los SSDs, con sus velocidades de lectura que son extremadamente superiores, hacen incluso dejar en ridículo al poderoso y siempre respetado Western Digital Velociraptor. En este sentido, Anand tiene razón en recomendar los SSDs como la principal mejora de rendimiento en un PC, pues así de notorio es su rendimiento. Con solo cargar un sistema operativo en uno de estos discos y comenzar a abrir múltiples aplicaciones apenas sea posible, la velocidad de estos discos se hace presente y no cuesta nada enamorarse de uno de ellos.

Sin embargo, aun cuando me han encantado pues la experiencia de uso de mi PC ha mejorado considerablemente, creo que la recomendación de medios populares e incluso del mismo Anand es un poco irresponsable, debido que no mencionan o mencionan a modo de descarte las falencias de este producto.

Siempre se suele decir que aquellos que adoptan la tecnología de punta también suelen ser los “beta testers” de ella, para que gracias a la información que ellos provean -por medio de canales de soporte técnico- se pueda depurar la tecnología para que esta sea ofrecida no a un nicho sino a la mayoría de las personas. Esto es algo muy común por ejemplo en los nuevos productos de Apple. El caso de los SSDs no es muy diferente. Así como en un principio se reconoció que se podría considerar prácticamente que se botaba el dinero a la basura cuando se compraba un SSD con controladora JMicron, en estos días, y en especial desde una investigación que hizo PC Perspective, que algunos sitios y autores se han quitado una venda de encima y están intentando medir con mas detenimiento estos discos.

El principal problema que se esta intentando resolver hoy es el de la fragmentación interna que sufren los SSDs, la cual causa una merma en su rendimiento. Ojo, cuando nos referimos a fragmentación interna, esta no tiene nada que ver con la que afecta tradicionalmente a los discos duros. ¿Que es lo que ocurre en los SSDs? Resulta que la memoria flash de hoy en día tiene una limitación muy particular, la unidad mas pequeña de lectura o escritura que tiene un disco es de 4KB (paginas), pero al mismo tiempo solo puede borrar como mínimo 512KB (bloques).

Para complicar aun mas el problema, cuando uno borra archivos, al igual que lo que ocurre en un disco duro tradicional, los archivos no son eliminados sino que los sectores cuya información se ha decidido eliminar son marcados para que cuando sea necesario, se puedan reescribir con nueva información. Adicionalmente, cuando se eliminan archivos, su ubicación no suele ser secuencial, sino tiene un patrón más al azar. Por lo tanto, poniendo un ejemplo, si mi SSD esta lleno y por ende no puedo escribir un archivo de 40KB, entonces decido borrar algunos archivos y después copiar mi archivo. Si libero 40KB ya sea como un archivo o como varios, tengo un problema: cuando borrar los 40KB se haga efectivo, como mínimo se deberá borrar un bloque de 512KB. Esto implica que habrán mas operaciones de lectura y escritura para reacomodar los datos de tal forma que se copie mi archivo y se reconstruyan los datos del bloque de 512KB eliminado, mermando de forma considerable el rendimiento.

Al leer el párrafo anterior, probablemente muchos pensaran que este escenario es absolutamente hipotético pues nadie tiene un disco duro lleno y hace espacio para que un archivo de unos miseros 40KB quepa en el. Sin embargo se debe recordar lo que se menciono anteriormente: en un disco duro, tradicional o SSD, los datos no son eliminados en el minuto en que realiza esa acción en el sistema operativo, sino en el minuto en que efectivamente los sectores marcados como eliminados vayan a ser sobre escritos. En un disco duro tradicional esto no necesariamente implica que se llegará al final de la capacidad del disco antes de sobre escribir los sectores marcados como eliminados, pero en los SSDs esto suele ser así.

La razón para ello es que hay que recordar que cada memoria flash tiene una cantidad finita de veces que se puede reescribir antes que esta deje de funcionar. Esta es una de las principales razones por las cuales solo hasta ahora los SSDs se están masificando, pues la vida útil de los chips ha llegado a niveles aceptables. Para lograr dichos niveles, se usan muchas técnicas pero la principal es intentar escribir cada pagina de la forma mas homogénea posible. Por lo tanto, una técnica común que emplean los SSDs es que nunca escriben en sectores borrados hasta que el disco (incluyendo los sectores marcados para eliminar) este lleno por completo.

Otra técnica es que crean un mapa virtual de cada pagina del disco e intentar distribuir los datos en dicho mapa de tal forma de minimizar la cantidad de veces que se escribe en cada pagina. Como esta tabla es virtual, manejada de forma diferente por cada controladora de disco SSD, el sistema operativo no tiene capacidad de manipularla directamente (sin estándares, lo mas probable es que la única forma de que esto cambiase es que cada disco tuviese un driver propio).

La mezcla de las limitaciones innatas en la memoria flash junto con las soluciones implementadas para trabajar al rededor de ellas, son las que hacen que desarrollar SSDs no sea tan fácil como soldar chips a un PCB ponerlos en un empaque de 2.5”. Sin embargo, esto es precisamente la practica mas común en la actualidad y por ende, los productos, incluso hasta hoy, son como Windows 7, aun cuando estables, siguen estando en beta. La diferencia es que los discos SSDs desafortunadamente no llevan dicho rotulo y las empresas tienden a callar mas la existencia de los problemas que a reconocerlos.

Incluso, aun cuando si se cuente con el diseño propio de los chips (tanto flash como la controladoras), como es el caso de Intel, no es suficiente y por eso PC Perspective encontró como el rendimiento estelar de los discos X25-M de el gigante de Santa Clara pasaba de ser tal a tener velocidades de escritura incluso tan lentas como las de un pendrive rápido (un máximo de 20MB/s).

Una nueva versión de firmware que Intel le entrego a PC Perspective corrigió muchos de estos problemas y el rendimiento volvió a ser el esperado. Sin embargo, ¿que se comprometió en el camino? Nadie lo sabrá hasta que los conejillos de indias de Intel, sus clientes y algunas publicaciones, realicen pruebas. Habiendo visto el comportamiento del disco de Intel, creo que el costo de mejorar un parámetro defectuoso fue perjudicar uno saludable, el cual en este caso debiese ser la vida útil de cada chip flash. Esto debido a que para que la velocidad de escritura no decaiga vertiginosamente con el tiempo, constantemente el SSD debe estar reorganizando los datos para mantener el rendimiento lo más alto posible. Reorganizar dichos datos implica muchas mas escrituras de las que se habían planteado para los SSDs originales de Intel, lo cual invariablemente afectara su vida útil.

Es muy prematuro decir si este nuevo firmware tendrá efectos secundarios que afecten considerablemente las especificaciones del producto de forma notoria como el mencionado sobre un disco que ya esta en producción desde hace un tiempo. Sin embargo, cuando se considera que el costo de los SSDs se mide en dolares gigabyte a diferencia de centavos por gigabyte (como es el caso de los discos duros tradicionales), cuesta más considerar aceptable que el cliente está sujeto a que se corrijan los problemas en la marcha. Adicionalmente, considerando que Anandtech solo ha podido trabajar con una sola empresa para buscar resolver los problemas (mientras que la mayoría se niegan a aceptar que existen), demuestran aun más que este mercado es extremadamente inmaduro.

Con todo lo anterior, tomar la posición de recomendarle a la gente que compre SSDs sin que sepa que las consecuencias conocidas pueden ser molestas y las aun desconocidas pueden ser peores, es completamente irresponsable. Esto se agrava más aun considerando el clima económico actual junto con el costo de estos productos. Por eso, en nuestros laboratorios estamos trabajando fuertemente para descubrir técnicas que nos permitan entender estos novedosos productos y poder ayudar a esclarecer muchas de las dudas que aun faltan por resolver, para poder considerar esta tecnología digna de ser recomendada tan abiertamente como un disco duro tradicional.

Comente este artículo