You are not logged in.

Announcement

[2017.09.08] DeployStudio build v1.7.8 (checksum, release note).
[2016.08.26] DeployStudio build v1.6.19 (release note).
[2013.02.23] DeployStudio last universal build v1.5.17 (release note).

#1 2015-02-03 01:10:05

PaintedTurtle
Member
Registered: 2010-06-27

Enhancements for better SSD support

For better SSD support, two enhancements would appear to be desirable.

1. The ability to issue a secure erase command to the drive. (I believe secure erase is supported by all SSDs. But, perhaps there should be an option to use a second method, if the drive responds that secure erase is not supported.)

2. The ability to leave part of the drive unallocated to any partition.

This request is motivated by my understanding of the following presentation, by LSI Logic/SandForce at the Flash Memory Summit.

http://intelligent.media.seagate.com/files/2014/10/FMS-2012-Tutorial-E-21-Understanding-SSD-Overprovisioning-Kent-Smith.pdf

Particularly interesting is slide 14, which notes the following:

************************
 Users can increase the OP, but not decrease it
 During initial setup and formatting, allocate a smaller partition (don’t use the full space)
     • SSD must be either “Fresh Out of Box” (FOB) or secure erased
 Leave the extra space unallocated
 The SSD controller automatically uses this as additional dynamic OP

************************

So, if I'm reading the slides correctly, there are two gems implied in this presentation.

Doing a secure erase might be a good idea on any machine that is going to be repurposed because it not only provides security, but it resets the SSD's TRIM, garbage collection, etc., back to an initial state.

By not using all of your SSD, one can increase Over Provisioning and improve performance. This might be a very desirable tradeoff for certain applications, particularly as SSD prices come down. Perhaps even more so, in a Fusion Drive configuration.

My understanding is that the secure erase that they are talking about is NOT having Disk Utility write a bunch of random data. Rather there is a Secure Erase command that is implemented as part of the ATA/SATA command set and supported by nearly every modern drive. Once the command is issued, to the drive, the drive erases itself.

The question is, can we easily do the above on a Macintosh?

Wiebetech makes an "Drive eRazer Ultra" that will give a drive this command. But I don't know of anyway to do this with the drive still inside of a Macintosh.

http://www.cru-inc.com/products/wiebetech/wiebetech_drive_erazer_ultra/

On a large rotating media drive, it can take quite a while. Although our experience is that it is still faster than writing data over the whole drive via the SATA interface.

But on all SSDs, that we have tested it on, it is very quick. Many SSDs have built-in encryption and I believe that it just flushes the key.

The next issue is, how can we leave space unformatted? It is easy enough to make two partitions, then delete one. But I doubt that really accomplishes the goal. If it did, the comment that "SSD must be either “Fresh Out of Box” (FOB) or secure erased" would read differently. It would, one would expect it to have a phrase like, "or a partition deleted". 

I took an SSD, securely erased it in a Drive eRazer Ultra, then tried to use Yosemite v10.10.2's Disk Utility to create a single partition (not counting invisible partitions), leaving part of the drive unused. However, if the Disk Utility GUI can be coxed to do this, I failed to find how.

I also tried it from a Deploy Studio workflow. Again, I couldn't figure out how to get DS to create a partition that was 90% of the drive's capacity.

Last edited by PaintedTurtle (2015-02-03 01:55:44)

Offline

#2 2015-02-03 01:25:45

PaintedTurtle
Member
Registered: 2010-06-27

Re: Enhancements for better SSD support

If you don't understand TRIM, I found the following articles to be helpful.

http://intelligent.media.seagate.com/files/2014/10/FMS-2012-Tutorial-E-21-Understanding-SSD-Overprovisioning-Kent-Smith.pdf

The title is "DID YOU KNOW HDDS DO NOT HAVE A DELETE COMMAND? THAT IS WHY SSDS NEED TRIM"

http://blog.seagate.com/intelligent/gassing-up-your-ssd/

The title is "GASSING UP YOUR SSD: TOP OFF THE TANK FOR HIGHER PERFORMANCE"

Last edited by PaintedTurtle (2015-02-03 02:56:50)

Offline

#3 2015-02-26 21:21:07

ComputerConnection
Member
Registered: 2015-01-20

Re: Enhancements for better SSD support

Thanks for the links. Explains some things about SSDs that I hadn't known before. Don't some of the UNIX utilities support that special Secure Erase function?

Offline

#4 2015-02-26 22:56:25

Nathan Fisher
Member
Registered: 2014-08-13

Re: Enhancements for better SSD support

trim doesn't actually zero the data, unnecessarily wearing on the flash cells.  It simply records that block as being empty in a list.  So if you try to read that block again, it will return all zeros, even though there's actually data there. (some forensics tools can bypass that and get at the data)  Besides avoiding wear on the flash, it's also very quick.  The computer just tells the hdd to "erase" a range of blocks, and it's immediately done as far as the computer is concerned.  If the computer were to wipe the blocks, it might be busy doing that for awhile.  Secure erase could be much worse on the cells, possibly flashing them 7 or 39 times instead of just once.

Offline

#5 2015-02-27 00:01:26

PaintedTurtle
Member
Registered: 2010-06-27

Re: Enhancements for better SSD support

> Nathan Fisher wrote:

> Secure erase could be much worse on the cells, possibly flashing them 7 or 39 times instead of just once.

Actually NO! That is NOT what the Secure Erase command that we are talking about does. We are talking about the Secure Erase command that is part of the ATA/SATA command set. Not what some of the utilities (including some versions of Apple's Disk Utility) call Secure Erase. Same name, different thing.

Offline

#6 2015-02-27 14:57:36

Nathan Fisher
Member
Registered: 2014-08-13

Re: Enhancements for better SSD support

info linking is always better than a short "you're wrong!" post   -->  https://ata.wiki.kernel.org/index.php/ATA_Secure_Erase and https://wiki.archlinux.org/index.php/SSD_memory_cell_clearing

but thanks for the heads-up, most of us are here to learn new things. :)

Offline

#7 2015-02-27 20:13:35

PaintedTurtle
Member
Registered: 2010-06-27

Re: Enhancements for better SSD support

Sorry,

Apology offered.

Nothing ill was intended. But it was a bit terse. There were time constraints. But maybe I should have waited till later, when I had more time.

Offline

#8 2015-02-27 21:59:02

Nathan Fisher
Member
Registered: 2014-08-13

Re: Enhancements for better SSD support

np, a lot of us are short on time at work.   cheers

Offline

#9 2015-02-28 02:03:46

PaintedTurtle
Member
Registered: 2010-06-27

Re: Enhancements for better SSD support

Thanks for being understanding.

As I understand it, the command is defined, but the implementation details are left to the hard drive manufacturers. Using the above mentioned Wiebetech product takes quite a while on a normal 7200 rpm rotating media drive (hours).

I have also tried it on Crucial, Samsung, and OWC SSD drives. And on those units it just take seconds. My understanding is that many SSDs actually have built-in encryption. And what many of them are doing, is simply removing the encryption key. So it is much faster than writing data over the whole drive. And it doesn't wear it out like trying to write data, repeatedly would. A real win/win!

As nice as the increase in speed, in an imaging environment might be, that isn't the main reason for wanting it. Look at the references, in the first post of this thread, for what it does for resetting garbage collection, trim, etc., back to the new, fresh out of the box state. Also, note how you can then increase the effective over-provisioning.

So this is a way to improve the performance and reliability of an SSD in an environment where they are imaged.

Offline

Board footer

Powered by FluxBB