UASP has a lot of promise, bringing SCSI performance and features to the ever-expanding world of USB storage devices. But support has been haphazard, especially for Mac OS X and Linux, and this limits its impact. It would be nice if storage vendors could work with operating system developers to better support this storage protocol.
This old-fashioned, predictable storage I/O path was deterministic and decipherable: The server, the switch, and the array all had enough information to do their jobs effectively and efficiently.
Storage protocols continue to mimic direct attached storage, with the concepts of block and file at its core. No amount of virtualization, and no new protocol, will fix this – we need a storage revolution.
If WRITE_SAME can be a semaphore for thin un-provisioning, what about TRIM? It sounds like a perfect fit, and has wider implementation to boot! Let’s take a deeper look.
One of the sticky wickets that holds back thin provisioning is the need to communicate when capacity is no longer needed. Enterprise storage arrays can reclaim zeroed pages, but writing all those zeros can really fill up an I/O queue. This is where WRITE_SAME comes into the picture.