Account  |  View Cart  
Condusiv Technologies logo

Condusiv Technologies Blog



 

 

Condusiv Blog: Welcome to the Condusiv Blog

The Condusiv blog shares insight into the issues surrounding system and application performance—and how I/O optimization software is breaking new ground in solving those issues.

SSDs and Defrag

by Alex Klein 3. August 2012 06:32

We recently responded to a forum post on our YouTube channel regarding SSDs and Defragmentation - you can view the video here: http://www.youtube.com/watch?v=hznCSqb4Mzg


Below are some "before and after" graphs that provide proof that fragmentation affects SSDs:

 

Tags: , , ,

Defrag | Diskeeper | SSD, Solid State, Flash | Windows 7

Big News! Diskeeper Corporation and SanDisk Enter Into Strategic Partnership

by Damian 21. February 2012 07:56

Diskeeper Corporation is pleased to announce that we have recently entered into a worldwide, exclusive agreement with SanDisk. SanDisk will license Diskeeper's industry-leading caching software solutions for solid state disk drives (SSDs). SanDisk will provide these solutions both as standalone software products as well as bundled with SanDisk's SSD products for client computing applications.

Here's what Diskeeper's CEO had to say: "We see our alliance with SanDisk as a critical driver to accelerate adoption of SSD computing applications. The exceptional performance and endurance of SanDisk's SSDs paired with Diskeeper's ExpressCache and NowOn products offer consumer OEM customers industry-leading performance optimization for Ultrabooks and other computer platforms."

Check out the full article from the NY Times here.

 

Setting the Record Straight - Windows 7 Fragmentation, SSDs, and You

by Howard 21. January 2012 14:50

In today’s well connected world of electronics and instant communications I received a text from a friend asking if I had seen the recent PC World magazine (February, 2012).  He said it had some tidbit of information concerning one of my favorite subjects; system performance, defragmentation, and SSDs.  I located a copy here at the office and found the article. As I read the first line I realized the debate on the virtues of defragmentation especially on SSDs will be one that goes on indefinitely as no one really talks about the issue with supporting hard facts and numbers.  Most articles are rehashing ideas and opinions long since debunked.  They continue to surface because very few truly understand the intricacies of the Windows NTFS file system and that of the storage media, whether it is rotating magnetic hard disks or electronic solid state disks.

So let’s set the record straight… Fragmentation is exponentially more of a problem with today’s data explosion. Defragmenting once a week will still cause the user to experience slowdowns from the degradation effects and doesn’t address the issue when files are initially being written.  And yes, never do a traditional defrag on SSDs.

NTFS file and free space fragmentation happens far more frequently than you might guess.  It has the potential to happen as soon as you install the operating system.  It can happen when you install applications or system updates, access the internet, download and save photos, create e-mail, office documents, etc…  It is a normal occurrence and behavior of the computer system, but does have a negative effect on over all application and system performance.  As fragmentation happens the computer system and underlying storage is performing more work than necessary.  Each I/O request takes a measurable amount of time.  Even in SSD environments there is no such thing as an “instant” I/O request.  Any time an application requests to read or write data and that request is split into additional I/O requests it causes more work to be done.   This extra work causes a delay right at that very moment in time.  Whoever thought that defragmenting once a month or weekly was good enough, simply didn’t understand fragmentation.

Disk drives have gotten faster over the years, but so have CPUs.  In fact, the gap between the difference in speed between hard disks and CPU has actually widened.  This means that applications can get plenty of CPU cycles, but they are still starving to get the data from the storage.  What’s more, the amount of data that is being stored has increased dramatically.  Just think of all those digital photos taken and shared over the holidays.  Each photo use to be approximately 1MB in size, now they are exceeding 15MB per photo and some go way beyond that.  Video editing and rendering and storage of digital movies have also become quite popular and as a result applications are manipulating hundreds of Gigabytes of data.  With typical disk cluster sizes of 4k, a 15MB size file could potentially be fragmented into nearly 4,000 extents.  This means an extra 4,000 disk I/O requests are required to read or write the file.  No matter what type of storage, it will simply take longer to complete the operation.

Suppose I chose to do some editing of my family videos on Tuesday evening.  Even the built-in defragmentation tool in Windows 7 doesn’t do me much good because it isn’t schedule to run until Wednesday morning at 1:00am.  This also means that quite a bit of fragmentation has built up since the previous week when it last ran.  Maybe I’ll manually run it, but that can take quite a while and I’ve wasted time that I would have rather spent on my project.  Unfortunately, the Windows built-in defragmentation utility doesn’t prevent fragmentation so even after running it manually; I still will wind up with fragmentation and slow access speed of my newly created files. 

I’ve often thought about why Wednesday at 1:00am was chosen as the time to schedule defragmentation.  Why isn’t it scheduled all the time?   It is because there could be system resource conflicts that either interfere with getting the task done or the defragmentation process has difficulty throttling back under a variety of conditions.  Regardless, this wait a week to clean up fragmentation doesn’t really help me when I need it most.

As pointed out in the article, the built-in defragmenter does not have the technology advancement to properly deal with fragmentation and SSDs. The physical placement of data on an SSD doesn’t really matter like it does on regular magnetic HDDs.  With an SSD there is no rotational latency or seek time to contend with.  Many experts assume that fragmentation is no longer a problem, but the application data access speed isn’t just defined in those terms.  Each and every I/O request performed takes a measurable amount of time.  SSD’s are fast, but they are not instantaneous.  Windows NTFS file system does not behave any differently because the underlying storage is an SSD vs. HDD and therefore fragmentation still occurs.  Reducing the unnecessary I/O’s by preventing and eradicating the fragmentation reduces the number of I/O requests and as a result speeds up application data response time and improve the overall lifespan of the SSD.  In essence, this makes for more sequential I/O operations which is generally faster and outperforms random writes.

In addition, SSD’s require that old data be erased before new data is written over it, rather than just writing over the old information as with HDDs.  This doubles the wear and tear and can cause major issues with the speed performance and lifespan of the SSD.  Most SSD manufactures have very sophisticated wear-leveling technologies to help with this. The principle issue is write speed degradation due to free space fragmentation.  Small free spaces scattered across the SSD causes the NTFS file system to write a file in fragmented pieces to those small available free spaces.  This has the effect of causing more random I/O traffic that is slower than sequential operations.

I think I have clearly made my point….  The built-in defragmenter in Windows 7 is not a solution for neither the consumer/home user, nor the enterprise business user.  Data access speeds are far more critical in the business world where time is money.  In the enterprise environment there are generally many more files that are used by higher number of users that are accessing data across shared type of storage such as SAN.  Even virtual platforms benefit from the same points covered.  This opens the door and is the reason why robust solutions such as Diskeeper exist.  More data about Diskeeper and the superior technology it offers can be found at http://www.diskeeper.com.

ExpressCache at CompuTex Taipei

by Colleen Toumayan 31. May 2011 09:44

New Intelligent SSD Caching Dramatically Speeds Boot and Application Launch Times

COMPUTEX TAIPEI 2011

TAIPEI, Taiwan--(BUSINESS WIRE)--Diskeeper Corporation will be at Taipei CompuTex 2011 co-exhibiting with SanDisk at booth N0307 in the Nangang 4F Hall. The company is officially demonstrating its new ExpressCache™ product—an intelligent SSD data caching and pinning software solution designed to markedly boost PC boot time and application launch speeds.

ExpressCache can achieve the following:

  • Dramatically shorten boot-up time; up to 60% compared with the same system without ExpressCache.
  • Provide up to 5X improvement in application launch time.
  • More than double the overall performance compared to the same system without ExpressCache.

Initially previewed at the January 2011 Consumer Electronics Show, ExpressCache improves PC speeds by incorporating a small Solid State Drive (SSD) to provide near-instantaneous access to the most frequently accessed hot data in Windows 7 systems. Comprised of User mode and Kernel Mode components, ExpressCache uses an SSD as an intelligent cache, coupled with an HDD, to improve overall system performance and greatly speed up Windows PC startup, application launches and data access speed.

More ExpressCache Benefits:

  • ExpressCache provides superior overall performance than HDD systems at a fraction of the cost of a pure SSD system.
  • Any combination of SSD and HDD can be used, making it a far more flexible solution than Hybrid Hard Drives. Individual components can be upgraded independent of the other.
  • ExpressCache increases file system performance while maintaining the full safety and integrity of all system data.

Tags:

Press Release | SSD, Solid State, Flash

Do you need to defragment a Mac?

by Michael 2. February 2011 05:54

The purpose of this blog post is to provide some data about fragmentation on the Mac, that I've not seen researched/published elsewhere.

Mac OSX has a defragmenter in the file system itself. Given Mac is open-source, we looked at the code.

During a file open the files get defragmented if the following conditions are met:

1. The file is less than 20MB in size

2. There are more than 7 fragments

3. System has been up for more than 3 minutes

4. A regular file

5. File system is journaled

6. And the file system is not read-only.

So what's Apple's take on the subject? An Apple technical article states this:

Do I need to optimize?

You probably won't need to optimize at all if you use Mac OS X. Here's why:

  • Hard disk capacity is generally much greater now than a few years ago. With more free space available, the file system doesn't need to fill up every "nook and cranny." Mac OS Extended formatting (HFS Plus) avoids reusing space from deleted files as much as possible, to avoid prematurely filling small areas of recently-freed space.
  • Mac OS X 10.2 and later includes delayed allocation for Mac OS X Extended-formatted volumes. This allows a number of small allocations to be combined into a single large allocation in one area of the disk.
  • Fragmentation was often caused by continually appending data to existing files, especially with resource forks. With faster hard drives and better caching, as well as the new application packaging format, many applications simply rewrite the entire file each time. Mac OS X 10.3 Panther can also automatically defragment such slow-growing files. This process is sometimes known as "Hot-File-Adaptive-Clustering."
  • Aggressive read-ahead and write-behind caching means that minor fragmentation has less effect on perceived system performance.

For these reasons, there is little benefit to defragmenting.

Note: Mac OS X systems use hundreds of thousands of small files, many of which are rarely accessed. Optimizing them can be a major effort for very little practical gain. There is also a chance that one of the files placed in the "hot band" for rapid reads during system startup might be moved during defragmentation, which would decrease performance.

If your disks are almost full, and you often modify or create large files (such as editing video, but see the Tip below if you use iMovie and Mac OS X 10.3), there's a chance the disks could be fragmented. In this case, you might benefit from defragmentation, which can be performed with some third-party disk utilities. 
 

Here is my take on that information:

While I have no problem with the lead-in which states probably, the reasons are theoretical. Expressing theory and then an opinion on that theory is fine, so long as you properly indicate it is an opinion. The problem I do have with this is the last sentence before the notation, "For these reasons, there is little benefit to defragmenting.", or more clearly; passing off theory as fact.

Theory, and therefore "reasons" need to be substantiated by actual scientific processes that apply the theory and then either validate or invalidate it. Common examples we hear of theory-as-fact are statements like "SSDs don't have moving parts and don't need to be defragmented". Given our primary business is large enterprise corporations, we hear a lot of theory about the need (or lack thereof) of defragmenting complex and expensive storage systems. In all those cases, testing proves fragmentation (files, free space or both) slows computers down. The reasons sound logical, which dupes readers/listeners into believing the statements are true.

On that note, while the first three are logical, the last "reason" is most likely wrong. Block-based read-ahead caching is predicated on files being sequentially located/interleaved on the same disk "tracks". File-based read-ahead would still have to issue additional I/Os due to fragmentation. Fragmentation of data essentially breaks read-ahead efforts. Could the Mac be predicting file access and pre-loading files into memory well in advance of use, sure. If that's the case I could agree with the last point (i.e. "perceived system performance), but I find this unlikely (anyone reading this is welcome to comment).

They do also qualify the reason by stating "minor fragmentation", to which I would add that that minor fragmentation on Windows may not have "perceived" impact either.

I do agree with the final statement that states "you might benefit from defragmentation" when using large files, although I think might is too indecisive.

Where my opinion comes from:

A few years ago (spring/summer of 2009) we did a research project to understand how much fragmentation existed on Apple Macs. We wrote and sent out a fragmentation/performance analysis tool to select customers who also had Macs at their homes/businesses. We collected data from 198 volumes on 82 Macs (OSX 10.4.x & 10.5.x). 30 of those systems were in use between 1 – 2 years. 

                               

While system specifics are confidential (testers provided us the data under non-disclosure agreements) we found that free space fragmentation was particularly bad in many cases (worse than Windows). We also found an average of a little over 26,000 fragments per Mac, with an average expected performance gain from defrag of about 8%.Our research also found that the more severe cases of fragmentation, where we saw 70k/100k+ fragments, were low on available free space (substantiating that last paragraph in the Apple tech article).

This article also provide some fragmentation studies as well as performance tests. Their data also validates Apple's last paragraph and makes the "might benefit" statement a bit understated.

Your Mileage May Vary (YMMV): 

So, in summary I would recommend defragmenting your Mac. As with Windows, the benefit from defragmenting is proportionate to the amount of fragmentation. Defrag will help. The question is "does defrag help enough to spend the time and money?". The good thing is most Mac defragmenters, just like Diskeeper for Windows, have free demo versions you can trial to see if its worth spending money.

 

Here are some options: 

+ iDefrag (used by a former Diskeeper Corp employee who did graphic design on a Mac)

+ Drive Genius suite (a company we have spoken with in the past)

+ Stellar Drive Defrag (relatively new)

Perhaps this article begs the question/rumor "will there be a Diskeeper for Mac?", to which I would answer "unlikely, but not impossible". The reason is that we already have a very full development schedule with opportunities in other areas that we plan to pursue.

We are keeping an "i" on it though ;-).

Is it wrong/unsafe to defrag an SSD?

by Michael 18. January 2011 08:09

Last week I received an email via the blog that I thought would be good to publish. Graham, a Diskeeper user from the UK asked: "I have been advised that it is wrong to defrag an SSD hard drive. So is it safe to run Diskeeper now that I have a 128Gb ssd in my computer?"

The popular theory that “there are no moving parts” does not accurately lead to the conclusion that fragmentation is not an issue. There is more behind the negative impact of fragmentation than seek time and rotational latency on electro-mechanical drives. Most SSDs suffer from free space fragmentation due to inherent NAND flash limitations. In more severe cases (likely a server issue) the OS overhead from fragmentation is impacted as well.

As always, the “proof is in the pudding”. Tests conclusively show you can regain lost performance by optimizing the file system (in Windows). We have run and published numerous tests (and here -done with Microsoft), but so have many in various tech forums (if you would prefer independent reviews).  

In short, it is advisable to run an occasional consolidation of free space. The frequency you would want to run this depends on how active (writing and deleting files) the system using the SSD is. It also depends on the SSD. A latest gen 128GB SSD from a reputable vendor is going to be all-around better than a 16-32GB SSD from 2-3 years ago.

The HyperFast product (a $10 add–on to Diskeeper) is designed to consolidate free space when it is needed, without “over” doing it. HyperFast is unique as you do not ever need to manually analyze or manually run, or even schedule it. It is smart enough to automatically know what to do and when. A common concern is that defragmentation can wear out an SSD. While that is unlikely unless it is a poorly written defragmenter, the general premise is correct, and is also something HyperFast takes into consideration by design.

Abov pic: You can always add HyperFast anytime after your purchase of Diskeeper.

 

More reading: 

Here are a few blogs we have done on SSDs.

While a bit dated, here is one product review.

Tags:

SSD, Solid State, Flash

Flash Cache Technology: ExpressCache

by Michael 13. January 2011 04:35

ExpressCache is a new, presently shipping, OEM product that we announced at the CES trade show last week.

ExpressCache is a software storage performance solution that requires both an HDD and an SSD (smaller affordables drives are all that is needed). In short, ExpressCache effectively combines the two drives, greatly increasing performance (typically by a factor of 2 or 3) by caching the frequently used data on the SSD!

More Info:

You can read more about ExpressCache here.

Future possibilities:

There are plans to broaden the supported platforms and potentially expand the availability of the product beyond OEMs. The time frame for that is undecided, but it may be later this year. We'll certainly announce any such events on our website and on the blog, so stay tuned.

Tags:

SSD, Solid State, Flash

Diskeeper 2011 outmuscles fragmentation

by Colleen Toumayan 12. January 2011 09:29

Bruce Pechman the "Muscleman of Technology" stopped by out booth at a CES media event. We talked a bit about the upcoming new Diskeeper release and he was kind enough to express his enthusiasm to us in writing so we could publish it:

As a TV Technology Journalist, high-end computer enthusiast, hard core gamer, and a person who is consistently buying the fastest computer money can buy, I need my computers to have super fast performance without any bottle necks every minute of every day.

From expensive SSD’s, to traditional rotational Hard Disk Drives—in every combination you can think of, my computers always run flawlessly and speedily thanks to an awesome software program called Diskeeper!

Right now my primary computer is the “Maingear Shift” with an Intel i980 Extreme Processor overclocked to 4.3 Ghz, it’s almost $6,000 and I can’t tolerate any slowdowns from my dual Western Digital 10,000 RPM VelociRaptors hard drives.

The facts are really quite simple. All types of computers will experience disk fragmentation and it can definitely worsen over time if nothing is done to prevent it. Disk fragmentation is the culprit for many annoying computer symptoms such as slow application performance, long boot times, unexplained system slow downs, crashes, etc. Diskeeper prevents these issues from cropping up.I have been religiously using Diskeeper over the years so my computers can realize the full benefits of system performance and reliability...and I can’t wait to install the new Diskeeper 2011—just set it and “forget about it”!

Whether I’m on deadline, overclocking an Intel Extreme processor, or playing Mafia II with every performance benchmark set to maximum settings, Diskeeper is a must install on every computer I own. 

Bruce Pechman, The Muscleman of Technology (www.MrBicep.com) America’s Best-Built Technology & Fitness Television Personality Muscleman of Technology, LLC Bruce Pechman, The Muscleman of Technology® (Muscleman of Technology, LLC), is a Consumer Technology and Fitness Personality appearing regularly on “Good Morning San Diego” (KUSI-TV) and the KTLA Morning Show in Hollywood. Bruce’s moniker reflects his 20 years of industry technology expertise, and 30 years of fitness training. He has made over 250 live TV appearances on major network television. Visit him at www.mrbicep.com 

Tags:

Defrag | Diskeeper | SSD, Solid State, Flash

Inside SSDs 101

by Michael 31. December 2010 06:08

We have numerous partners and alliances in the  Solid State drive (SSD) space that we interact with regularly. Conversations in related meetings with those allies continues to revolve around the same issue, overcoming performance bottle necks at the storage level. In attacking this problem to get higher performance for things like boot times, application load times, etc., the industry has turned to flash memory, otherwise referred to SSDs (we'll also be announcing a brand new SSD technology in the next few weeks).

The following may be well known to those highly knowlegdable in SSDs, but hopefully helps others less versed in their design.

High end SSDs have proven to yield some very impressive read times, well over double a typical SATA hard disk drive in some cases.

Here are some example published speeds from a few manufacturers/models:

Seagate 7200.12 HDD 500GB, 750GB, and 1TB family

Read/Write speeds (outer tracks, empty drive): 125MB/sec sustained, 160MB/sec peak

Intel X25-M 80GB SSD (MLC)

Sequential Access - Read: up to 250MB/s

Sequential Access - Write: up to 70MB/s

Intel X25-M 120GB SSD (MLC)

Sequential Access - Read: up to 250MB/s

Sequential Access - Write: up to 100MB/s

Intel X25-E 32GB SSD (SLC)

Sequential Access - Read: up to 250 MB/s

Sequential Access - Write: up to 170 MB/s

One of the main reasons for such fast read times is the lack of “seek time” that an SSD has to find and retrieve a piece of data versus a hard drive.  Simply put, a hard drive has to move a magnetic head connected to an arm over a track on a platter and then through various means find the data requested and read or write something.

Now you have to admit, a hard drive does this quite well and very fast, considering the physics involved.

On the other hand an SSD sends an electrical pulse to read the data which is much faster in comparison; give or take on the order of magnitude, double on higher end SSDs. The lack of a moving part cuts the time down considerably.  

Now, writing data to SSDs is a whole other story which leads us down a bit of a rabbit hole so to speak and the main subject of this blog.

SSD DNA

To start with, let’s look at what an SSD is:

Note, I have borrowed some photos and descriptions from the following site: www.popsci.com/category/tags/ssd.

Firstly you simply have a small piece of silicon with a whole lot of transistors that look like the following:

  

Each transistor is 1000 times thinner than a human hair. In essence, each transistor either holds an electrical charge or it doesn’t.  In the case of SSDs, a transistor that is charged equals the value 0 and the ones that are not equal a value of 1. That is the extent of it. 

In the above photo the transistor that is charged has a circle around the “e” which stands for electrons representing the charge.   

Now, to read what’s inside these transistors an electrical pulse is sent to them and by reading the signal from the pulse sent it’s able to tell which are charged and which are not. All in all this is a pretty fast operation. Even writing to a transistor for the first time is pretty fast as it’s empty with no charge to begin with. 

BUT…… what happens when you have to write to an area of the SSD that has already been written to?  Here in lays the problem and the unfortunate “Achilles heel” for SSDs. With a hard drive you can just simply flip the bit in place and call it a day.  In fact this is a faster operation on a hard drive then it is on an SSD, over the long run. Now aside from the extra step it takes to erase an SSD it gets a lot worse. But in order to understand this we need to view how data is laid out on an SSD:

The smallest unit is a single transistor, also known as a cell. Imagine the dot shown is a top view of a single transistor magnified a gazillion times.

This single transister holds a single bit of data, i.e. a 1 or a 0.  The next unit size up is a called a page and holds 4KB of data.   To put this in perspective, there are 8,192 bits in one kilobyte so each page contains 32,768 transistors.   A page is the smallest unit that can be written to on the SSD.  This means that even if the data you are writing is only 1,500 bits in size, it will use up the entire 4KB of space and make it unusable for writing other data.  You only get to write once to it until its been erased for reuse again.

In fact, to update the data within this page, the data would have to be copied first, updated and rewritten to a new page leaving the old page unusable till it’s been erased.  The controller has to earmark it for clean up so it can be used again later.

Now, even though this page has been earmarked for being erased, it may not get erased for some time because it’s actually part of a bigger group of data called a “block”.  A block is a group of pages as illustrated below:

                  

 

The number of pages that make up a block may vary from one SSD model to another and can be very large (in the megabytes).  On one such SSD we have tested on, this happens to be 128k, which would be a group 32 pages.  This data block (32 pages) is actually what’s called an “erase block”.  An SSD only erases one data “block” at a time.  So back to our example of this page with old data in it: theoretically this page could sit around a while before this block of data is erased by the SSD.  It’s plausible this could have in some cases security of data issues but that’s a subject for research and test. 

Now, when data is updated in a page as discussed earlier it has to be moved to another location unbeknownst to the file system and internally mapped by the controller on the device to keep track of it as illustrated below:

There is obviously overhead associated with this. So a page, for argument sake, could have three states of existence:

Ready to be used (it’s erased or been erased thus all transistors have been set to 1) as in the clear little boxes above;

Used -- as in the blue boxes above;

Dirty (containing invalid data that needs to be erased) as in the black boxes above.  

The overhead in handling dirty data is huge, and referred to as garbage collection.  Garbage collection is the process of moving good data out of areas where old data exists in order to erase the old data in order to reclaim pages that can be written to again.

Doing a lot of this garbage collection activity creates a lot of activity called “write amplification”.

This is the disease that SSDs are plagued with which kills their write performance, particularly as the device fills up.  It’s also what shortens the life span of the device.

The following is a definition or description from Wikipedia that I think is pretty good:

“Write amplification (WA) is a phenomenon associated with Flash memory and solid-state drives (SSDs). Because Flash memory must be erased before it can be rewritten, the process to perform these operations results in moving (or rewriting) user data and metadata more than once. This multiplying effect increases the number of writes required over the life of the SSD which shortens the time it can reliably operate. The increased writes also consume bandwidth to the Flash memory which mainly reduces random write performance to the SSD. Many factors will affect the write amplification of an SSD, some can be controlled by the user and some are a direct result of the data written to and usage of the SSD.”

Now, there is a comment that is made in the above description that is interesting, and could lead to read performance in some cases getting degraded, which is the “increased writes” consuming bandwidth to the Flash memory interrupting a read operation.

Now, I don’t say this as a fact but rather postulating whether or not reads are affected. 

The overhead in writes required by the Windows NTFS file system to do just one IO could be considered extreme from the SSD’s point of view.  To create and write one bit of information, such as a notepad doc with a single number in it, requires an update to the MFT file by creating a record of the operation, update to a directory file and any other metadata files such as journal files that are keeping track of operations at the time. The point is, for every one write of user data there are several writes occurring to keep track of it. 

Current file systems were designed based on hard disk drive characteristics, not SSDs.  From the SSD’s point a view, NTFS writes with wild abandon. This puts a lot of overhead on the SSD controllers with a lot of overhead on data mapping and housekeeping at the controller level of the SSD which hard drives don’t have to worry about much.  A hard drive typically only has to re-map data when it has a bad sector on it as an example.

NTFS file system thinks for example that a file should be split in two (split IOs) because it thinks it doesn’t have a contiguous free space for the file that is being updated.  Yet the SSD may have, during its garbage collection process created a space or remapped data clusters but the operating system doesn’t know this and vice versa. 

The current TRIM functionality is supposed to help SSDs within Windows 7 but it's far from being a panacea to the write amplification issue. 

Different types of SSD

SLC stands for “single level cell”

MLC stands for “multi level cell”

TLC stands for “tender loving care". okay not really, just checking to make sure you are paying attention. It really stands for" tri level cell”; really. 

SLC is faster than MLC and TLC. 

The design of an MLC and an SLC are pretty much the same.  The difference is an MLC is able to put more than one value in a single transistor (referred to as a cell) by layering the data within the cell.  Typically two or more bits are able to be placed in a single cell with MLC versus one bit in SLC. 

So MLC is able to contain twice as much data versus SLC.  That’s the plus side.  The down side is MLC in reading and writing data to a single cell has to be very precise and has a lot of overhead logic wise, so MLC ends up slower than SLC due to the preciseness that is required to determine if two values exist and what those values are in a single cell. Also the life cycle of MLC becomes 10x shorter than SLC.  The following is a great white paper that describes the differences very well and how voltages are used to read the values, etc. http://www.supertalent.com/datasheets/SLC_vs_MLC%20whitepaper.pdf

The difference between TLC and MLC is NOT more transistors.  L stands for "level", referring to voltage level to a transistor, not multiple levels or numbers of transistors.  Again the above link along with a few other sites lays this out fairly well. 

The difference between one flash memory or SSD is not so much the chip itself but the supporting controller and its design.  This includes creating multiple data channels, on-board Raid and other fancy and expensive solutions.  The other differentiator is software within the controller managing all of the mapping of data, moving data around, etc.  Sounds like the age-old fragmentation problem to me again; just at a slightly different level.

Diskeeper Corporation Celebrates Its 30th Year With Industry Firsts By Offering Savings of Up to 30 Percent

by Colleen Toumayan 17. June 2010 10:30

Solution Helps Organizations Increase Performance, Lengthen Equipment Lifecycles, Enhance Efficiency and Reduce Energy Usage 

Diskeeper Corporation, innovators in performance and reliability technologies, today announced that it is commemorating  its 30th year of pioneering breakthrough technologies with more than a dozen industry firsts by offering discounts of up to 30 percent on all Diskeeper Corporation volume licenses.  

Company Highlights: 
  • With more than 38 million licenses sold Diskeeper Corporation supports customers worldwide including more than 90 percent of Fortune 500 enterprises, and nearly 70 percent of the Forbes Global 1000, as well as thousands of enterprises, government agencies, independent software vendors (ISVs) and original equipment manufacturers (OEMs).
 
  • CIOs, IT Managers and System Administrators around the world rely on Diskeeper ® performance software to increase computing speeds, reduce system freezes and crashes, improve backup times, lower resource usage, protect data and shorten boot times.
 
  • Every day, Diskeeper Corporation solutions prevent more than 12.5 billion fragments from thrashing hard drives, providing unparalleled performance and reliability for laptops, desktops and servers.
 
  • Diskeeper Corporation’s industry first Undelete® real time data protection solution saves organizations tremendous amounts of time and money by guarding against intentional and unintentional data loss, protecting all deleted files and allowing instant file recovery with just a few mouse clicks.
 Industry Firsts: 
  • 1986: Diskeeper performance software released as the first online automatic defragmenter, which quickly became the best-selling third-party product for OpenVMS operating systems.
  • 1995: Diskeeper is the first defragmenter solution certified for Microsoft Windows, starting a long-running verification process that maintains code reliability.
  • 1995: Diskeeper Corporation partners with Microsoft and co-created APIs that were released with NT 4.0 in 1996.
  • 1998 Network Undelete 1.0 unveiled as the first complete real-time file protection technology for Windows servers.
  • 2003: Diskeeper 8.0 is introduced as a breakthrough approach to help optimize terabyte-sized drives with Terabyte Volume Engine™ technology.
  • 2005: I-FAAST® intelligent file access acceleration sequencing technology introduced that accelerates access to most used files.
  • 2006: InvisiTasking® technology revolutionizes background processing with zero overhead.
  • 2008: Diskeeper releases HyperFast® solid state drive optimizer for PCs.
  • 2009: Diskeeper Corporation introduces V-locity™ virtual platform disk optimizer.
  • 2009: Diskeeper Corporation releases IntelliWriteÔ technology, the first fragmentation prevention technology.
  • 2010: The release of HyperBoot™ boot-time optimization software, which accelerates full computer start up and boots a PC directly into Windows.
  

Tags:

Defrag | Diskeeper | Press Release | SSD, Solid State, Flash

Windows IT Pro Webinar - Should I defrag my SAN?

by Michael 4. May 2010 04:59

Later this month (Thursday, May 27, 2010 at 12:00pm Eastern / 9:00am Pacific), IT Analyst David Chernicoff and I will co-host a webinar covering the benefits and caveats of defragmenting SAN attached servers.

Here is the abstract: 

As storage technologies have become more advanced there is a tendency for storage administrators to believe that the hardware is handling all of their data maintenance needs, keeping their files optimized in the best possible way for top performance and availability. The reality is that hardware solutions alone aren't the most efficient way to keep your critical data stored in an optimal fashion. With this webinar we will give you the information you need to understand how your data is actually being handled and what you can do to improve the performance and optimization of your Windows Server storage.

You can register here: www.windowsitpro.com/go/seminars/diskeeper/windows_san 

We also have two webinars planned for June on the topic of virtualization. One jointly with Redmond Mag, and the other with Microsoft. I'll post registration links on this blog when they are available. Lastly, we'll have a reprise of the SSD webinar we did with Microsoft sometime in July - this time we'll host and Microsoft will be our guest.

Tags:

SAN | SSD, Solid State, Flash | virtualization

Do you still need HyperFast if you have TRIM?

by Michael 2. April 2010 11:24

Last month we were a guest on a Microsoft-hosted webinar covering Windows 7, TRIM, and the continuing need for HyperFast. The presentation focused on the most current releases of SSDs from many of the top SSD vendors (Asax, Apacer, Kingston, Micron and OCZ), who were kind enough to provide us with samples. The webinar discussed Windows 7 features to enhance SSDs, covered the benefits of SSD over HDD, and lastly discussed the performance loss due to file fragmentation. That presentation continues to be available for MS partners on the MS partner site.

In the next few months Diskeeper will re-host this presentation, this time with Microsoft as a guest. That webinar will be posted here on the Diskeeper website for everyone to view.

In the meantime, I've included some of the key slides for anyone interested. The tests present aggregate averages from all the SSDs tested, as the purpose was to show their value above HDD, and not as a comparison of one vendor's SSD versus another.  I also realize that there may be questions as to test scenario specifics, etc... Those details were covered in the presentation on Microsoft's site, and will be covered again when Diskeeper hosts the next presentation in a couple of months. So, if you'd like to get into more detail, go to the MS partner portal or stay tuned for the Diskeeper hosted syndication.

The presentation starts by showing that a typical modern SATA SSD (average from above named vendors) clearly outperforms a typical modern SATA HDD.

SSD versus HDD MB/Sec Transfer Rates:

Windows 7 has numerous improvements to accommodate SSDs:

And...

Fragmentation affects SSDs, and yes, even those with TRIM support. Various benchmarking tools and procedures were used to measure the affect of fragmentation on TRIMM'ed SSD performance. (note: TRIM can be initiated in Windows by actions such as emptying the Recycle Bin, but the SSD must also execute the command).

Fragmented SSD versus Optimized SSD test using ATTO Benchmark:

 Fragmented SSD versus Optimized SSD test using HDBench:

 

Fragmented SSD versus Optimized SSD test using PCMark05

Fragmented SSD versus Optimized SSD test using File Copy Test:

Using a specialized SSD optimizer such as HyperFast returns performance to like-new conditions:

In summary, if you want a top performing system, go get Windows 7 and one of those SSDs named above. Then add HyperFast to keep it that way.

Tags:

SSD, Solid State, Flash

SSD review

by Michael 28. February 2010 12:44

In anticipation of an upcoming presentation (March 10) from Microsoft promoting SSDs, and best practices for optimizing SSDs, is a HyperFast review by V3 (from last year). They tested HyperFast to see what benefit it would provide. Read it here

 

Tags:

SSD, Solid State, Flash

SSD Webinar coming next month:

by Michael 13. January 2010 04:47

I'll post more about this joint webinar (i.e. date/time, links) as we get closer to the date: 

Windows 7 and Solid State Drives: Performance Myths and Facts

Presented by Microsoft & Diskeeper Corp.

What are the benefits of SSDs, above and beyond traditional hard drives? What are the myths around performance? Do file and free space fragmentation affect SSDs? How accurate are available benchmarking tools? How can you successfully work SSDs into your current customer offerings?  Join technical engineers from Microsoft and Diskeeper Corporation for this informative webinar.”

Tags:

SSD, Solid State, Flash

Optimizing Cameras, GPS, Smart Phones and other SD Card devices

by Michael 9. January 2010 09:36

Rumack: Fragmentation slows down SD Card performance!

 

Striker: Surely you can't be serious.


 

Rumack: I am serious... and don't call me Shirley.    

 

The word is slowly [but surely :-)] getting out that fragmentation affects NAND Flash storage - specifically free space fragmentation. The SD Association website is a great resource for edification and development resources. On their page describing the SD Card Speed Classes, they even discuss fragmentation.

 

 

Fragmentation and Speed

The memory of a card is divided into minimum memory units. The host writes data onto memory units where no data is already stored. As available memory becomes divided into smaller units through normal use, this leads to an increase in non-linear, or fragmented storage. The amount of fragmentation can reduce write speeds so higher SD card speeds help compensate for fragmentation.

 

There are several methods to address this issue. One is, as mentioned, buy better performing storage and hope your requirements never exceed the cards ability to deliver on your needs (though fragmentation will still limit the storage's peak performance). However, a better approach is to fix the root issue, and there are two ways to do that.

1. Defragment the free space (e.g. HyperFast, Diskeeper)

2. Copy all the data off the SD Card and reformat the card

The best approach is likely to be determined by the device in which the SD Card is used. If it's from your digital camera, option 2 is probably pretty easy to undertake. If pulling all the data off the card is not feasible, optimize it.

The only other question then might be "how often do I run optimization?". I did a blog post on that, including some performance tests, a few years ago, Read that Here or Here.

Lastly, I thought I'd include a recent personal success from an IT professional who happens to also use Diskeeper at work:

"Happy new year!! I made an interesting test over the holidays using Diskeeper 2010. I was updating my GPS with new maps and discovered that my Garmin unit uses Fat32 file system so I figured I would run your software on it just for fun and see the results. I was able to defragment a large part of the files and it more than doubled the speed of the unit. The images render faster with less stutter, routes are recalculated almost instantly now and it finds points of interest much faster. I did the same test on 2 other GPS`s and got the same results." Regards, Carlo

Tags:

Defrag | SD Card | SSD, Solid State, Flash

The Impact of Fragmentation on Flash Drives (iPods, Jump Drives, etc)

by Michael 22. June 2007 12:50

One of the questions that comes up on occasion is "should I defrag my iPod, my SD card, or my USB drives?". To answer that, let's first take a step back and make note that these drives (also known by other names such as thumb drives, jump drives, solid state disks, etc) are flash-based storage devices (the largest I've seen is 32GB). They are used in Digital cameras under the names of SD cards, compact flash, memory stick, etc. The iPod and other MP3 players either have miniature hard disk drives (HDD), typically called microdrives, in the larger storage models, or flash-based drives in the smaller, 2Gb-4GB, such as with the iPod Nano. The exact nomenclature of a flash storage device depends on it's "interface". If it uses a USB interface it is typically called a jump drive, if it uses a SATA/SCSI interface and is intended to replace a hard disk drive, it is called a Solid State Drive (SSD). Other flash devices include the aforementioned digital media storage devices such as Memory Stick, Compact Flash, etc... In a nutshell, Flash based disks do not use a spinning disk and can access data randomly without any performance penalty. That may seem to obfuscate the benefit of defragmentation, and to a good degree it certainly mitigates the need. Flash and SSD devices are good at reading data, but are not as good at writing data. The reason for the poor write performance is that these (NAND based) devices must erase the space used for new file writes, immediately prior to writing the new data. This is known as erase-on-write or erase/write. Improvements in this area are coming (phase-change memory). However, flash devices running FAT or NTFS file system do still fragment the same way that a HDD would. Non-Windows products, like digital cameras/camcorders, use the FAT file system (FAT16 or FAT32, depending on the size of the drive). FAT file systems are more susceptible to fragmentation than NTFS. The greatest drawback of flash devices from the perspective of fragmentation is it is slow at random write I/O. Here's a quick test you can do yourself to show that severe free space fragmentation on Flash drives does affect performance. I did this myself, as a test run.

I took a brand new Kingston 1GB DataTraveler Hi-Speed USB drive with 24MB/sec read and 10MB/sec performance (per the manufacturer).

First I did a format of the disk - FAT16 (you'll need to use FAT32 for drives over 2GB). Then, using a development testing tool from Diskeeper Corp I fragmented the free space. I used Diskeeper 2007 to confirm the fragmentation as well as DiskView (a more granular tool available from Microsoft - formerly SysInternals). I created about 45MB of small files (16k to 48k in size) spread all across that Flash disk.

I then grabbed the VM Player install file (145MB), and made five more copies of it and zipped (Winzip) them into single 846MB zip file. This file was kept on a separate spindle (SATA disk) from the OS and paging files (to minimize variables from my time tests).

I used a simple stop-watch to time how long it took to copy this file from the SATA disk to the USB Flash drive with fragmented free space. It took 2:37 from start to finish.

I reformatted the USB drive, to the FAT16 file system again and rebooted the PC (just to make sure the cache was clear). I then copied that 846MB zip file from the same location over to that USB drive. This time the copy operation took 1:14, less than half the time required to copy than when the free space was fragmented.

Deleting a large, fragmented file also takes a long time.

From a "scientific" perspective the test can be run a few more times to come to an average, but given the difference was so significant, I personally did not feel the need to redo it. You can reverse the test order, and even use a program to zero-out the flash drive, just to eliminate any minor possible variables. Anyone else is certainly welcome to give this a go for themselves.

I did test one more case where I fragmented the free space into 24 even chunks and found no difference in copy time. While severe free space fragmentation is an issue, mild free space fragmentation is not - same concept as on physical disk. And yes the 846MB was fragmented in 19 pieces.

To create the free space fragmentation (without the development tool I'm privileged to have access to), you can copy a large number of small files to the Flash drive and deleted every other one, or other random deletion pattern (vary between deleting every third, fourth, fifth ...n file). If you have some programming skill this can be
scripted fairly simply. Just make sure there is enough room left on that USB drive after fragmenting the free space to copy the same test file. The more severe the free space fragmentation, the longer the copy operation will take.

That said, the degree to how this translates into actual usage depends. A real-world equivalent might be with a digital camera/camacorder where you mix various sized mpegs and jpegs, and use the device to delete some of these files from the drive. Unless you wipe the disk, the free space fragmentation will build up.

The test case I made up may be so extreme that it is unreal. I don't know what's "real-world" as I don't personally use Flash drives that often, and even then my actual usage isn't likely to equal yours. How often you want to consider free space consolidation depends; my best-guess is once every 6 months or so. The limited extent to which I use USB drives and the fact my 2GB mp3 player only ever gets minor and infrequent file changes, I doubt I'll personally ever need to worry about the free space fragmentation.

PS: We've been working with several of the technology leaders in the Flash/SSD industry for some time. They have been kind enough to send us pre-release devices for our R&D efforts. Expect future innovations from Diskeeper Corporation and those industry partners to improve performance and reliability on these storage devices.

Tags:

General | SSD, Solid State, Flash

RecentComments

Comment RSS

Calendar

<<  May 2013  >>
MoTuWeThFrSaSu
293012345
6789101112
13141516171819
20212223242526
272829303112
3456789

View posts in large calendar