¿Desventajas de particionar un SSD?

79

Un hombre sabio que se conoce con el nombre de NickN mantiene una larga publicación en el foro sobre sus puntos de vista sobre la construcción de una computadora poderosa (dirigida a jugar Flight Simulator X de Microsoft, un software muy exigente).

Él resume puntos sobre unidades SSD en alguna parte, y concluye la lista de la siguiente manera:

NO REPARTE SSD

Desafortunadamente, no explica esto, pero me pregunto por qué dice esto. ¿Cuáles son los inconvenientes de particionar un SSD? (Particionar en este contexto significa> = 2 particiones)

MarioDS
fuente
13
Bueno, será tiene particionar con el fin de usarlo. Presumiblemente, quiere decir no crear más de una partición, aunque por qué recomendaría eso está más allá de mí.
ChrisInEdmonton
1
@ChrisInEdmonton sí, eso es lo que quiere decir.
MarioDS
44
No puedo entender por qué esto importaría. Incluso si está utilizando particiones lógicas en lugar de particiones físicas, una vez que el sistema operativo le dice al controlador del sistema de archivos qué sección de la unidad usar, las particiones no importan. Lo único que podría importar es la alineación de la partición, pero eso no tiene nada que ver con la cantidad de particiones.
Darth Android
2
Solo puedo adivinar que quiere decir: "No particione un disco muy pequeño", independientemente de si es un HDD o un SDD.
Hennes
66
La única otra opción de la que puedo pensar es (erróneamente) asumir que un controlador SSD necesita el espacio libre en un volumen para trabajar. Necesita espacio libre en el disco para ser eficiente; No perseguir espacio libre en un volumen montado. Ajuste que es solo una cuestión de decidir sobre el aprovisionamiento excesivo y establecer el área protegida del host .
Hennes

Respuestas:

118

¡Las SSD no, repito, NO funcionan en el nivel del sistema de archivos!

No existe una correlación 1: 1 entre cómo el sistema de archivos ve las cosas y cómo la SSD ve las cosas.

Siéntase libre de particionar el SSD de la forma que desee (suponiendo que cada partición esté alineada correctamente, y un SO moderno se encargará de todo esto por usted); NO dañará nada, NO afectará negativamente los tiempos de acceso ni nada más, y tampoco se preocupe por hacer un montón de escrituras en el SSD. Los tienen para que pueda escribir 50 GB de datos al día, y durará 10 años.

Respondiendo a la respuesta de Robin Hood ,

La nivelación de desgaste no tendrá tanto espacio libre para jugar, porque las operaciones de escritura se distribuirán en un espacio más pequeño, por lo que "podría", pero no necesariamente desgastará esa parte del disco más rápido de lo que lo haría si todo el disco era una partición única, a menos que realice un desgaste equivalente en las particiones adicionales (por ejemplo, un arranque dual).

Eso está totalmente mal. Es imposible desgastar una partición porque solo lee / escribe en esa partición. Esto NO es ni remotamente cómo funcionan los SSD.

Un SSD funciona a un nivel de acceso mucho más bajo que el que ve el sistema de archivos; Un SSD funciona con bloques y páginas.

En este caso, lo que realmente sucede es que, incluso si está escribiendo una tonelada de datos en una partición específica, el sistema de archivos está limitado por la partición, PERO, el SSD no lo está. Cuantas más escrituras reciba el SSD, más bloques / páginas intercambiará el SSD para nivelar el desgaste. ¡No podría importar menos cómo ve el sistema de archivos las cosas! Eso significa que, en un momento, los datos pueden residir en una página específica en el SSD, pero, en otro momento, puede y será diferente. El SSD realizará un seguimiento de dónde se mezclan los datos, y el sistema de archivos no tendrá idea de en qué parte del SSD se encuentran los datos.

Para hacer esto aún más fácil: digamos que escribe un archivo en la partición 1. El sistema operativo le dice al sistema de archivos sobre las necesidades de almacenamiento, y el sistema de archivos asigna los "sectores", y luego le dice al SSD que necesita X cantidad de espacio. El sistema de archivos ve el archivo en una dirección de bloque lógico (LBA) de 123 (por ejemplo). El SSD toma nota de que LBA 123 está usando el bloque / página # 500 (por ejemplo). Por lo tanto, cada vez que el sistema operativo necesita este archivo específico, el SSD tendrá un puntero a la página exacta que está utilizando. Ahora, si seguimos escribiendo en el SSD, la nivelación se activa y dice bloque / página # 500, podemos optimizarlo mejor en el bloque / página # 2300. Ahora, cuando el sistema operativo solicita el mismo archivo, y el sistema de archivos solicita LBA 123 nuevamente, ESTA VEZ, el SSD devolverá el bloque / página # 2300, y NO # 500.

Al igual que los discos duros, las unidades SSD de memoria flash y flash son de acceso secuencial, por lo que cualquier dato que escriba / lea desde las particiones adicionales estará más lejos de lo que "podría" haber estado si estuviera escrito en una sola partición, porque las personas generalmente dejan espacio libre en sus particiones . Esto aumentará los tiempos de acceso para los datos almacenados en las particiones adicionales.

No, esto está nuevamente mal! Robin Hood está pensando en términos del sistema de archivos, en lugar de pensar cómo funciona exactamente un SSD. Nuevamente, no hay forma de que el sistema de archivos sepa cómo el SSD almacena los datos. No hay "más lejos" aquí; eso es solo a los ojos del sistema de archivos, NO la forma en que un SSD almacena información. Es posible que el SSD tenga los datos distribuidos en diferentes chips NAND, y el usuario no notará ningún aumento en los tiempos de acceso. Diablos, debido a la naturaleza paralela de la NAND, incluso podría terminar siendo más rápido que antes, pero estamos hablando de nanosegundos aquí; Parpadea y te lo perdiste.

Menos espacio total aumenta la posibilidad de escribir archivos fragmentados, y si bien el impacto en el rendimiento es pequeño, tenga en cuenta que, en general, se considera una mala idea defragrar un SSD flash y nand-flash porque desgastará la unidad. Por supuesto, dependiendo de qué sistema de archivos esté utilizando, algunos resultados en cantidades extremadamente bajas de fragmentación, porque están diseñados para escribir archivos en su conjunto siempre que sea posible en lugar de volcarlos por todas partes para crear velocidades de escritura más rápidas.

No, lo siento; De nuevo, esto está mal. La vista de archivos del sistema de archivos y la vista de SSD de esos mismos archivos no están ni remotamente cerca. El sistema de archivos podría ver el archivo fragmentado en el peor de los casos posible, PERO, la vista SSD de los mismos datos casi siempre está optimizada.

Por lo tanto, un programa de desfragmentación miraría esos LBA y diría, ¡este archivo realmente debe estar fragmentado! Pero, dado que no tiene idea de lo interno del SSD, está 100% equivocado. Esa es la razón por la que un programa de desfragmentación no funcionará en SSD, y sí, un programa de desfragmentación también causa escrituras innecesarias, como se mencionó.

La serie de artículos Codificación para SSD es una buena visión general de lo que está sucediendo si desea ser más técnico sobre cómo funcionan las SSD.

Para obtener más información "ligera" sobre cómo funciona realmente FTL (Capa de traducción Flash), también le sugiero que lea el Rol crítico del firmware y las Capas de traducción flash en el diseño de unidad de estado sólido  (PDF) del sitio de Flash Memory Summit .

También tienen muchos otros documentos disponibles, como:

Otro documento sobre cómo funciona esto: Descripción general de la memoria flash  (PDF). Consulte la sección "Escribir datos" (páginas 26-27).

Si lo que más le gusta es el video, consulte Un FTL eficiente a nivel de página para optimizar la traducción de direcciones en la memoria flash y diapositivas relacionadas .

Gemelo del tiempo
fuente
Hola, ¿puede agregar algunos enlaces a fuentes que respalden su información? Es muy posible que la otra respuesta sea objetivamente incorrecta, pero tampoco tengo forma de saber que estás en lo correcto.
MarioDS
44
De Windows Internals 6th ed., Parte 2, cap. 9 (Administración de almacenamiento) y 12 (Sistemas de archivos), puede aprender cómo las solicitudes de E / S a los archivos pasan por el controlador del sistema de archivos, luego el controlador de volumen y, finalmente, el controlador de disco (también utilizado para SSD). El FSD traduce blocks-inside-a-file a blocks-inside-a-partitoin; el controlador de volumen traduce este último a bloques dentro de un disco, es decir, LBA. Por lo tanto, para cuando las solicitudes lleguen al controlador de disco, todo el contexto relacionado con los archivos y las particiones está IDO El disco no puede conocer archivos o particiones porque esa información simplemente no está en las solicitudes que le llegan.
Jamie Hanrahan
55
RobinHood también se equivoca en la afirmación "Al igual que los discos duros, las unidades SSD de flash y flash tienen acceso secuencial" . Estos son dispositivos de acceso aleatorio. Si fueran acceso secuencial, entonces no podría decirles "leer o escribir bloque n"; el único bloque al que podría acceder sería el que sigue inmediatamente, o quizás el que precede inmediatamente, al que acaba de acceder. Es cierto que internamente, los SSD NAND-flash solo pueden escribir datos en grandes "páginas" a la vez, pero eso no los convierte en acceso secuencial. Las cintas son de acceso secuencial. Búscalo.
Jamie Hanrahan
Agregué otro pdf además del primer enlace que tenía en mi respuesta.
Time Twin
1
@TimeTwin Man, cuanto más releo tu respuesta, más tonto me siento por confiar ciegamente en la respuesta de Robin Hood, que de hecho contiene declaraciones que hacen que el diseño de SSD parezca muy estúpido, si hubieran sido ciertas. Este es un recordatorio de por qué debemos seguir siendo críticos con respecto a la información, incluso si se encuentra en sitios confiables y con muchos votos positivos. Ha realizado una entrada bastante espectacular en este sitio, disfrute el aumento de representantes y continúe difundiendo su conocimiento (verificado).
MarioDS
15

Respuestas muy largas aquí, cuando la respuesta es lo suficientemente simple y se sigue directamente del conocimiento general de los SSD. Uno no necesita más que leer el término Wikipedia de unidad de estado sólido para comprender la respuesta, que es:

El consejo "NO REPARTE SSD" no tiene sentido.

En el pasado (ahora distante), los sistemas operativos no soportaban muy bien los SSD, y especialmente cuando la partición no se ocupaba de alinear las particiones de acuerdo con el tamaño del bloque de borrado.

Esta falta de alineación, cuando un sector de disco lógico del sistema operativo se dividió entre bloques SSD físicos, podría requerir que el SSD muestre dos sectores físicos cuando el sistema operativo solo tenía la intención de actualizar uno, lo que ralentiza el acceso al disco y aumenta la nivelación de desgaste .

Actualmente, los SSD se están volviendo mucho más grandes, y los sistemas operativos saben todo sobre borrar bloques y alineación, por lo que el problema ya no existe. Quizás este consejo alguna vez tuvo la intención de evitar errores en la alineación de la partición, pero hoy en día estos errores son casi imposibles.

De hecho, el argumento para particionar SSD es hoy exactamente el mismo que para los discos clásicos:
para organizar y separar mejor los datos.

Por ejemplo, instalar el sistema operativo en una partición separada y más pequeña es útil para tomar una imagen de respaldo como precaución cuando se realizan actualizaciones grandes al sistema operativo.

harrymc
fuente
4

No hay inconvenientes para particionar un SSD, y en realidad puede extender su vida dejando algo de espacio sin particionar.

La nivelación de desgaste se aplica en todos los bloques del dispositivo (ref. Papel blanco HP, vinculado a continuación)

En la nivelación de desgaste estático, todos los bloques en todos los flashes disponibles en el dispositivo participan en las operaciones de nivelación de desgaste. Esto asegura que todos los bloques reciban la misma cantidad de desgaste. La nivelación de desgaste estático se usa con mayor frecuencia en SSD de escritorio y portátiles.

A partir de eso, podemos concluir que las particiones no importan para nivelar el desgaste. Esto tiene sentido porque desde el punto de vista del HDD y del controlador, las particiones realmente no existen. Solo hay bloques y datos. Incluso la tabla de particiones está escrita en los mismos bloques (primer bloque de la unidad para MBR). Es el sistema operativo el que lee la tabla y decide en qué bloques escribir datos y cuáles no. OS ve bloques usando LBA para dar un número único a cada bloque. Sin embargo, el controlador asigna el bloque lógico a un bloque físico real teniendo en cuenta el esquema de nivelación de desgaste.

El mismo documento técnico ofrece una buena sugerencia para extender la vida del dispositivo:

A continuación, aprovisione en exceso su unidad. Puede aumentar la vida útil al dividir solo una parte de la capacidad total del dispositivo. Por ejemplo, si tiene una unidad de 256 GB, solo particione a 240 GB. Esto extenderá en gran medida la vida útil del disco. Un nivel de sobreaprovisionamiento del 20% (particionando solo 200 GB) prolongaría aún más la vida. Una buena regla general es que cada vez que duplica el sobreaprovisionamiento de la unidad, agrega 1x a la resistencia de la unidad.

Esto también sugiere que incluso el espacio no dividido se usa para nivelar el desgaste, lo que demuestra aún más el punto anterior.

Fuente: Libro blanco técnico: SSD Endurance ( http://h20195.www2.hp.com/v2/getpdf.aspx/4AA5-7601ENW.pdf )

JollyMort
fuente
1

Los sectores de disco han tenido 512 bytes durante mucho tiempo, y los discos mecánicos tienen la propiedad de que lo único que afecta el tiempo que lleva leer / escribir un sector es el retraso de búsqueda. Entonces, el principal paso de optimización con discos duros mecánicos fue intentar leer / escribir bloques secuencialmente para minimizar las búsquedas.

Flash funciona de manera muy diferente a los discos duros técnicos. En el nivel de flash sin formato, no tiene bloques, sino páginas y "bloques de borrado" (para tomar prestado de la terminología MTD de Linux). Puede escribir para flashear una página a la vez, y puede borrar un bloque de borrado a la vez.

Un tamaño de página típico para flash es de 2 KB, y un tamaño típico para bloques de borrado es de 128 KB.

Pero los SSD SATA presentan una interfaz que funciona con tamaños de sector de 512 bytes para el sistema operativo.

Si hay un mapeo 1: 1 entre páginas y sectores, puede ver cómo podría tener problemas si su tabla de partición comenzara en una página impar o en una página en medio de un bloque de borrado. Dado que los sistemas operativos prefieren obtener datos de las unidades en trozos de 4Kbyte, ya que esto se alinea con el hardware de paginación x86, puede ver cómo un bloque de 4Kbyte podría abarcar un bloque de borrado, lo que significa que actualizarlo requeriría borrar, luego reescribir 2 bloques en lugar de 1. Menor rendimiento.

Sin embargo, el firmware SSD no mantiene una asignación 1: 1, hace una traducción de Dirección de bloque físico (PBA) a Dirección de bloque lógico (LBA). Lo que significa que nunca se sabe dónde se escribe realmente en el flash el sector 5000 o cualquier otro sector dado. Está haciendo muchas cosas detrás de escena por diseño para tratar de escribir siempre en bloques de borrado previamente borrados. No puede saber con certeza exactamente qué está haciendo sin un desmontaje del firmware, pero a menos que el firmware sea completamente basura, el firmware probablemente lo evitará.

Es posible que haya escuchado sobre discos duros 4Kn. Estos son discos duros técnicos que utilizan internamente un tamaño de sector de 4Kbytes, pero aún presentan una interfaz de sector de 512 bytes para los sistemas operativos. Esto es necesario porque las brechas entre sectores deben reducirse en el plato para adaptarse a más datos.

Eso significa que internamente siempre lee y escribe sectores 4K pero lo oculta del sistema operativo. En este caso, si no escribe en sectores que caen en un límite de 4KByte, incurrirá en una penalización de velocidad porque cada lectura / escritura dará como resultado la lectura y reescritura de dos sectores internos de 4KByte. Pero esto no se aplica a los SSD.

De todos modos, esta es la única situación en la que puedo pensar por qué se sugiere no particionar los SSD. Pero no se aplica.

LawrenceC
fuente
-1

Lo que estas respuestas ignoran son las optimizaciones de SSD de Windows. No sé si esto significa que la partición mejora, pero para una unidad C particionada como unidad Windows puede:

  1. turno de indexación
  2. no es necesario hacer un seguimiento de la hora del último acceso
  3. no es necesario almacenar nombres antiguos de 8 caracteres
  4. evitar la basura de Windows
Ruud van den Berg
fuente
Desactivar la indexación no solo ralentiza las búsquedas, sino que también significa que no puede buscar dentro de los archivos. No es una buena sugerencia.
Richard
-2

Decidí que cierta información de fondo podría ser útil para aclarar esta respuesta, pero como puede ver, fui un poco TOC, por lo que es posible que desee saltar al final y luego regresar si es necesario. Si bien sé un poco, no soy un experto en SSD, así que si alguien ve un error, EDÍTELO . :).

Información de antecedentes:

¿Qué es un SSD ?:

Un SSD o unidad de estado sólido es un dispositivo de almacenamiento sin partes móviles. El término SSD a menudo se refiere específicamente a las unidades de estado sólido basadas en nand-flash destinadas a actuar como una alternativa de disco duro, pero en realidad son solo una forma de SSD, y ni siquiera la más popular. El tipo más popular de SSD son los medios extraíbles basados ​​en nand-flash, como los dispositivos USB (unidades flash) y las tarjetas de memoria, aunque rara vez se los conoce como SSD. Los SSD también pueden estar basados ​​en RAM, pero la mayoría de las unidades de RAM son generadas por software en lugar de hardware físico.

¿Por qué existen los SSD Nand-flash destinados a actuar como disco duro ?:

Para ejecutar un sistema operativo y su software, se requiere un medio de almacenamiento rápido. Aquí es donde entra en juego el carnero, pero históricamente el carnero era costoso y las CPU no podían abordar cantidades masivas. Cuando ejecuta un sistema operativo o programa, las porciones de datos requeridas actualmente se copian en su ram, porque su dispositivo de almacenamiento no es lo suficientemente rápido. Se crea un cuello de botella, porque debe esperar a que los datos se copien desde el dispositivo de almacenamiento lento al ram. Si bien no todos los SSD nand-flash reciben un mejor rendimiento que el disco duro más tradicional, los que ayudan a reducir el cuello de botella al proporcionar tiempos de acceso más rápidos, velocidades de lectura y velocidades de escritura.

¿Qué es Nand-flash ?:

El almacenamiento flash es un medio de almacenamiento que utiliza electricidad en lugar de magnetismo para almacenar datos. Nand-flash es un almacenamiento flash que utiliza una puerta de enlace NAND. A diferencia de A nor-flash, que es acceso aleatorio, se accede secuencialmente a nand-flash.

¿Cómo almacenan datos las unidades de estado sólido Nand-flash ?:

El almacenamiento Nand-flash se compone de bloques, esos bloques se dividen en celdas, las celdas contienen páginas. A diferencia de un disco duro que usa magnetismo para almacenar datos, los medios flash usan electricidad, debido a que estos datos no pueden sobrescribirse; los datos deben borrarse para poder reutilizar el espacio. El dispositivo no puede borrar páginas individuales; el borrado debe ocurrir a nivel de bloque. Dado que los datos no se pueden escribir en un bloque que ya está en uso (incluso si no todas las páginas en él lo están), primero se debe borrar todo el bloque, y luego el bloque ahora en blanco puede tener datos escritos en sus páginas. ¡El problema es que perdería cualquier dato que ya esté en esas páginas, incluidos los datos que no desea descartar! Para evitar que estos datos existentes se retengan, debe copiarse en otro lugar antes de realizar la eliminación del bloque.

En los discos duros, se utiliza una placa magnética para almacenar datos. Al igual que los discos de vinilo, la placa tiene pistas, y estas pistas se dividen en secciones llamadas sectores. Un sector puede contener una cierta cantidad de datos (generalmente 512 bytes, pero algunos más nuevos son 4KB). Cuando aplica un sistema de archivos, los sectores se agrupan en grupos (según el tamaño que especifique, denominado tamaño de asignación o tamaño de grupo), y luego los archivos se escriben en grupos. También es posible dividir un sector para hacer grupos más pequeños que el tamaño de su sector. El espacio no utilizado en un clúster después de que un archivo se escribe en un clúster (o varios) no es utilizable, el siguiente archivo comienza en un nuevo clúster. Para evitar mucho espacio inutilizable, las personas suelen usar tamaños de clúster más pequeños, pero esto puede disminuir el rendimiento al escribir archivos grandes. Los SSD de flash Nand no tienen una placa magnética, usan electricidad pasando a través de bloques de memoria. Un bloque está hecho de celdas que contienen páginas. Las páginas tienen capacidad X (generalmente 4 KB) y, por lo tanto, el número de páginas determinará la capacidad de un bloque (generalmente 512 KB). En SSD, una página equivale a sector en un disco duro, porque ambos representan la división más pequeña de almacenamiento.

¿Qué es la nivelación de desgaste ?:

Los bloques de almacenamiento Nand-flash se pueden escribir y borrar un número limitado de veces (referido como su ciclo de vida). Para evitar que la unidad sufra una reducción de la capacidad (bloques muertos), tiene sentido desgastar los bloques de la manera más uniforme posible. El ciclo de vida limitado también es la razón principal por la que muchas personas sugieren no tener un archivo de página o una partición de intercambio en su sistema operativo si está utilizando un SSD basado en Nand-flash (aunque las rápidas velocidades de transferencia de datos desde el dispositivo a la memoria RAM también son importantes factor en esa sugerencia).

¿Qué es el exceso de aprovisionamiento ?:

Over Provisioning define la diferencia entre la cantidad de espacio libre que hay, en comparación con la cantidad que parece haber. Los dispositivos de almacenamiento basados ​​en Nand-flash afirman ser más pequeños de lo que son, por lo que se garantiza que hay bloques vacíos para usar en la eliminación de basura. Hay un segundo tipo de sobreaprovisionamiento llamado sobreaprovisionamiento dinámico que simplemente se refiere al espacio libre conocido dentro del espacio libre mostrado. Hay dos tipos de sobre aprovisionamiento dinámico: nivel de sistema operativo y nivel de controlador de unidad. En el nivel del sistema operativo, Trim se puede usar para liberar bloques que luego se pueden escribir de inmediato. En el nivel del controlador, se puede utilizar el espacio de unidad no asignado (no particionado, sin sistema de archivos). Tener más bloques libres ayuda a mantener la unidad funcionando con el mejor rendimiento, ya que puede escribir de inmediato.

¿Qué es la amplificación de escritura ?:

Debido a que los medios Nand-flash requieren que se borre un bloque antes de que se pueda escribir, cualquier dato dentro del bloque que no se esté borrando debe copiarse en un nuevo bloque mediante eliminación de basura. Estas escrituras adicionales se llaman amplificación de escritura.

¿Qué es el recorte?

Los sistemas operativos se crean teniendo en cuenta los discos duros tradicionales. Recuerde que un disco duro tradicional puede sobrescribir directamente los datos. Cuando elimina un archivo, el sistema operativo lo marca como eliminado (está bien si se sobrescribe), pero los datos siguen ahí hasta que se produce una operación de escritura allí. En los SSD basados ​​en Nand-flash, esto es un problema, porque primero se deben borrar los datos. La eliminación se produce a nivel de bloque, por lo que puede haber datos adicionales que no se eliminan. La eliminación de basura copia cualquier dato que no se pueda eliminar en bloques vacíos, y luego los bloques en cuestión pueden borrarse. ¡Todo esto lleva tiempo y provoca escrituras innecesarias (amplificación de escritura)! Para evitar esto, se creó una función llamada Trim. Trim le da al sistema operativo el poder de decirle al SSD para borrar bloques con páginas que contienen datos que el sistema operativo ha marcado como eliminados durante períodos de tiempo en los que no solicita una operación de escritura allí. La recolección de basura hace lo suyo, y como resultado, los bloques se liberan para que, con suerte, las escrituras puedan ocurrir en bloques que no necesitan ser borrados primero, lo que hace que el proceso sea más rápido y ayuda a reducir la amplificación de escritura a un mínimo. Esto no se hace en un archivo; Trim utiliza direccionamiento de bloque lógico. El LBA especifica qué sectores (páginas) borrar, y el borrado ocurre a nivel de bloque. y ayuda a reducir la amplificación de escritura a un mínimo. Esto no se hace en un archivo; Trim utiliza direccionamiento de bloque lógico. El LBA especifica qué sectores (páginas) borrar, y el borrado ocurre a nivel de bloque. y ayuda a reducir la amplificación de escritura a un mínimo. Esto no se hace en un archivo; Trim utiliza direccionamiento de bloque lógico. El LBA especifica qué sectores (páginas) borrar, y el borrado ocurre a nivel de bloque.

La respuesta a su pregunta "¿Desventajas de particionar un SSD?":

SSD basados ​​en RAM:

¡No hay absolutamente ninguna desventaja porque son de acceso aleatorio!

SSD basados ​​en Nand-flash:

Las únicas desventajas que se me ocurren son:

  1. La nivelación de desgaste no tendrá tanto espacio libre para jugar, porque las operaciones de escritura se distribuirán en un espacio más pequeño, por lo que "podría", pero no necesariamente desgastará esa parte del disco más rápido de lo que lo haría si todo el disco era una única partición a menos que realice un desgaste equivalente en las particiones adicionales (por ejemplo, un arranque dual).

  2. Al igual que los discos duros, las unidades SSD de memoria flash y flash son de acceso secuencial, por lo que cualquier dato que escriba / lea desde las particiones adicionales estará más lejos de lo que "podría" haber estado si estuviera escrito en una sola partición, porque las personas generalmente dejan espacio libre en sus particiones . Esto aumentará los tiempos de acceso para los datos almacenados en las particiones adicionales.

  3. Menos espacio total aumenta la posibilidad de escribir archivos fragmentados, y si bien el impacto en el rendimiento es pequeño, tenga en cuenta que, en general, se considera una mala idea defragrar un SSD flash y nand-flash porque desgastará la unidad. Por supuesto, dependiendo de qué sistema de archivos esté utilizando, algunos resultados en cantidades extremadamente bajas de fragmentación, porque están diseñados para escribir archivos en su conjunto siempre que sea posible en lugar de volcarlos por todas partes para crear velocidades de escritura más rápidas.

Diría que está bien tener múltiples particiones, pero la nivelación del desgaste podría ser una preocupación si algunas particiones obtienen mucha actividad de escritura y otras obtienen muy poca. Si no divide el espacio que no planea usar, y en su lugar lo deja para el aprovisionamiento dinámico, puede recibir un aumento de rendimiento porque será más fácil liberar bloques y escribir datos secuenciales. Sin embargo, no hay un garaje que necesite un espacio de aprovisionamiento excesivo, lo que nos lleva de vuelta al punto 1 sobre la nivelación del desgaste.

Algunas otras personas en este hilo han mencionado la forma en que la partición afectará las contribuciones de Trim a la dinámica sobre el aprovisionamiento. Según tengo entendido, TRIM se utiliza para señalar sectores (páginas) que tienen datos marcados para su eliminación, por lo que la eliminación de basura puede borrar esos bloques de forma gratuita. Este espacio libre actúa como dinámico sobre el aprovisionamiento dentro de ESA partición solamente, porque esos sectores son parte de los clústeres utilizados por el sistema de archivos de esa partición; otras particiones tienen sus propios sistemas de archivos. Sin embargo, puedo estar totalmente equivocado en esto, ya que la idea de un exceso de aprovisionamiento no está clara para mí, ya que los datos se escribirán en lugares que ni siquiera tienen sistemas de archivos o aparecen en la capacidad de las unidades. Esto me hace preguntarme si tal vez se usa un espacio de aprovisionamiento excesivo de forma temporal antes de una operación final de escritura optomizada en bloques dentro de un sistema de archivos. Por supuesto, las contribuciones de Trim al aprovisionamiento dinámico en el sistema de archivos no serían temporales, ya que podrían escribirse directamente ya que ya están en un espacio utilizable. Esa es mi teoría al menos. ¿Tal vez mi comprensión de los archivos es incorrecta? No he podido encontrar ningún recurso que entre en detalles sobre esto.

Robin Hood
fuente
17
"1. La nivelación de desgaste no tendrá tanto espacio libre para jugar, porque las operaciones de escritura se extenderán por un espacio más pequeño (...)". Esto parece no ser cierto ya que la nivelación de desgaste se realiza en un nivel inferior por el controlador SSD (al menos con SSD y el sistema operativo que admite Trim ). superuser.com/a/901521/517270
misko321
44
Las memorias basadas en NAND permiten el acceso aleatorio a los bloques. Lo que no permite es acceso aleatorio a bits dentro de un bloque. Por lo tanto, se puede acceder a las particiones al azar porque son múltiplos del tamaño del bloque (al menos debería serlo, si el usuario no se metió con la memoria de alguna manera, es decir, usar aplicaciones de particionamiento sin saber lo que está sucediendo)
Miguel Angelo
55
los puntos 1 y 2 parecen ser totalmente falsos
subrayado_d
-14

No, esto tiene sentido.

La velocidad de un SSD se conecta directamente a la cantidad de espacio utilizable en la partición en uso. Si particionó la unidad en pequeñas secciones, la eficiencia de la SSD se verá afectada por la falta de espacio libre.

Por lo tanto, no hay inconvenientes de particionar un SSD, pero hay inconvenientes de no tener espacio libre en la unidad.

Consulte esta publicación SuperUser .

Mark Lopez
fuente
1
Crear particiones lógicas no necesariamente las llena, ¿verdad? No veo cómo pierdes espacio libre automáticamente al hacer esto.
MarioDS
1
El sistema operativo sabe qué bloques se pueden usar y qué bloques están libres, la unidad no. Al particionar el sistema operativo tiene menos bloques libres de los que conoce, bloques que se pueden usar. Esto reduce el rendimiento. TRIM se ejecuta en el nivel de partición por el sistema operativo.
Mark Lopez
10
Pero puede. Para eso es TRIM, después de todo. TRIM se ejecuta a nivel de sector y el SSD no se preocupa por las particiones. Solo se preocupa por los sectores (también conocidos como celdas flash). Como tal, las particiones solo tienen un impacto insignificante (espacio utilizado por la sobrecarga del sistema de archivos) en el rendimiento.
Daniel B
1
En realidad, los discos duros son los que no deberían crear particiones
Suici Doga