HOWTO: Configure a large (> 32GB) SSD to work with ExpressCache

Discussion in 'Lenovo' started by Sottilde, Jan 24, 2013.

Thread Status:
Not open for further replies.
  1. Sottilde

    Sottilde Newbie

    Reputations:
    1
    Messages:
    7
    Likes Received:
    1
    Trophy Points:
    5
    I'm creating this thread because I hadn't seen any reference for how to do this, so I decided I'd give it a whack. I'd rather use a cache than put my OS and a few files on an SSD, so I really wanted this to work.

    You might find that ExpressCache will not automatically create a partition on your new SSD that's greater than 32GB. In addition, there's no reference anywhere on how to do this. So, I'm making one!

    Here's how you do it:


    1. Install your SSD into your Thinkpad, Ideapad, etc. in tandom with your HDD. On most machines this will require an ODD caddy. Or, you might be replacing the mSATA. Either way, your intended configuration is at least one SSD & a large HDD.

    2. Grab ExpressCache from Lenovo, regardless of whether or not you have it installed already.

    3. Uninstall ExpressCache if you have it. It should be in Programs/Features. If it is not, install ExpressCache from the Lenovo package, then uninstall it. Reboot. It is important that ExpressCache is *not* installed during these next steps.

    4. Open up diskmgmt.msc and a take a good look at your drives. Remember the number of the new SSD you want to use as a cache. In addition, figure out how big you want the partition to be, in MB. An easy way to see the full capacity of your drive is to right click where it says "Disk #" on the left side of diskmgmt.msc. Click 'Volumes' and you should see 'Capacity' listed. If you want to fill the drive, that is the number you want to remember.

    5. Open up an administrator console (windows + type 'CMD', hit ctrl-shift-enter to open as admin)

    6. Type 'diskpart'. Here's where we partition our drive. Type the following:
    > select disk # - where # is the number of the SSD. Make sure this is correct, otherwise you could wipe the wrong drive!
    > clean - This will wipe the drive. Of course, make sure there's nothing on it you need.
    > convert MBR
    > create partition primary size=#### - where #### equals the size, in megabytes, of the cache partition you want to make. This comes from step 4, or can be any size you choose that is less than the total capacity of the drive. E.g. my Intel 128GB SSD has a total size of 114472MB, so I typed 'create partition primary size=114472'
    > set id=73 override - this sets the partition type
    > exit

    7. (optional) If you have an mSATA drive that was previously acting as a cache partition, use diskmgmt to wipe it so there are no partitions. This ensures that ExpressCache will cache to the correct disk. Simply do 'select disk #', 'clean', 'exit'. You could set up a small area for Intel Rapid Start (that's another story) or some basic NTFS storage for a game, VM, whatever.

    8. Install ExpressCache from the Lenovo package. Reboot.

    9. Open an administrator console again, type 'eccmd -info'. You should see your new cache partition listed!


    That's it, worked for me:
    [​IMG]


    In addition, if you want to preload a folder (e.g. C:\Windows) it's a bit tricky. The only preload command I found that works is one of the following format:

    > eccmd -preload .
    which preloads the recursive contents of the entire folder. So you might want to cd into c:\windows and run preload there to force the cache partition to always contain your windows directory. Give it some time to process.

    Good luck!
     
    Dannemand likes this.
  2. Sottilde

    Sottilde Newbie

    Reputations:
    1
    Messages:
    7
    Likes Received:
    1
    Trophy Points:
    5
    In addition, I created an 8GB hibernation (Intel Rapid Start) partition on my previous 16GB mSATA - I figure, while it's there, may as well use it.

    For those not familiar with Rapid Start, it's simply ultra-fast hibernation. If Windows detects the hibernation partition, it will hibernate to it instead of your disk drive, which allows you to close the lid on your computer, have the thing power completely off, and restore in < 5s or so. It does actually work so it's pretty cool to set up if you have the space.

    The key here is to partition the mSATA with diskpart in an admin command prompt:

    > diskpart
    > select disk 0 (0 being my mSata)
    > clean
    > convert MBR
    > create partition primary size=8192
    > set id=84 override
    > exit

    You can use diskmgmt.msc to format the rest of the space as NTFS if you want a nice little SSD file store.
     
  3. Flickster

    Flickster Notebook Evangelist

    Reputations:
    104
    Messages:
    335
    Likes Received:
    2
    Trophy Points:
    31
    Well done and thank you for putting in the effort to write a guide.

    Unfortunately there is actually very little point in using anything bigger than a 32GB SSD for caching in a laptop. This is probably why ExpressCache doesn't automatically create a cache partition on a SSD larger than 32GB.

    I am one of the people that sees great value in small SSD caches, they can significantly increase the performance of traditional large capacity HDD's, however if you look at how much of your SSD cache is actually utilized you will notice that 32GB is more than enough, even 16GB is reasonable.

    Think about how a cache works and it's purpose... it caches frequently used programs in the SSD for rapid access, 32GB gives you plenty of room to cache frequently used programs. 128GB will give you more cache space, however much of that extra capacity will be used to store stale content, consisting primarily of fairly old, not frequently accessed data, which in turn means you would be receiving minimal performance gain/benefit from having this content in the cache. You don't continue to gain performance in a linear manner by doubling or tripling the size of your SSD cache, beyond a certain amount you start to get diminishing returns and 128GB of cache for a laptop HDD, I think would be firmly in the realm of diminishing returns.

    It's a little hard to explain but trust me, the extra performance gain you would receive from installing a 128GB SSD cache drive over a 32GB would be minimal. You would probably be better to install your whole OS and some frequently used programs directly on the 128GB SSD rather than using it as a cache. Preloading your whole Windows directory into cache rather than installing it on the SSD means you are wasting 30-40GB of space on your HDD which could otherwise be freed up. If you want to use a SSD cache to speed up a larger HDD, use a 32GB mSATA, don't waste a 128GB SSD on cache.
     
    lead_org likes this.
  4. Sottilde

    Sottilde Newbie

    Reputations:
    1
    Messages:
    7
    Likes Received:
    1
    Trophy Points:
    5
    I see where you 're coming from but I disagree.

    I ended up needing some of the space for a VM so I repartitioned to a 60/53 split (yeah, that equals 128GB in drive manufacturer math). 53GB goes to cache now while the 60GB goes to a quite snappy OS X VM.

    I think the large cache size is valuable but you need to do some coaxing to get files in there. In my case, I couldn't get it to cache the large VM files (although I didn't try the ones split into 2GB chunks). Not even preload would do it.

    However, I've been preloading often-used applications, well-used parts of c:/windows, and letting expresscache do the rest. It actually seems to be learning quite well. As a result, I not only have complete SSD speed on my windows directory, but I have it on all of my most used programs. They would not all have fit in the 53GB partition. The beauty of SSD caching is that it only caches the parts of a program that would actually benefit from it; not the useless things like documentation, seldom-used videos, etc. As a result I can fit much more in there and my overall system speed is quite a bit better. In addition, I don't care much about the extra storage; Y500's come with a 1TB internal and I have quite a few external drives. It's not that much of a concern.

    ExpressCache appears to be willing to use as much space as I'll give it, so I'll give it a lot. And as they say, time is money. I don't want to be spending parts of my day moving apps on and off the SSD.
     
  5. Flickster

    Flickster Notebook Evangelist

    Reputations:
    104
    Messages:
    335
    Likes Received:
    2
    Trophy Points:
    31
    If it works for you, that's what's most important. At least you are only using 53GB for cache and not 128GB. I think it's a good idea that you have set aside 60GB for a fast OS X VM.

    ExpressCache will probably use all the space you give it, as long as there is new data for it to write to the cache. It just means it dosen't have to clear the least used data (stale) from the cache as often. I imagine if you give ExpressCache 256GB and you're accessing 1TB of data it will continue to add more files to the cache until it has no more room, then it will start to clean the least used data out of the cache to make room for recently accessed information. - unless it runs a process to delete stale data at a set time interval. It is because of the way cache works that beyond a certain size, allocating more space for caching doesn't continue to noticeably improve performance.
     
  6. Robisan

    Robisan Notebook Consultant

    Reputations:
    13
    Messages:
    152
    Likes Received:
    3
    Trophy Points:
    31
    Been wondering about this and I don't want to hijack the thread, but in a HDD / 32gbSDD ExpressCache environment (T430u in my case) is it better to use the sleep function when closing the lid or hibernation? I've had bad experience with hibernation in XP on an HDD, but perhaps Win7 in this setup is a different animal.
     
  7. Flickster

    Flickster Notebook Evangelist

    Reputations:
    104
    Messages:
    335
    Likes Received:
    2
    Trophy Points:
    31
    I have actually been surprised how quickly my W530 goes into Sleep mode. I can have a whole bunch of programs open, close the lid and it goes completely to Sleep in 2-3 secs, my old laptop used to take much longer.

    I have said it before but thought I would mention it here again, if you decide to put your OS completely on a SSD make sure to disable both of the Lenovo RapidBoot programs, such as RapidBoot HDD found in control panel, you can simply untick the box and compare your boot times.

    You will probably notice that Windows finishes booting up/loading startup programs quicker without RapidBoot enabled. Myself and others have noticed an approx 8-10sec slower time to boot completion with it enabled. They are both great programs to use if you are still booting the OS from a HDD but not needed if booting from a SSD.
     
  8. Sottilde

    Sottilde Newbie

    Reputations:
    1
    Messages:
    7
    Likes Received:
    1
    Trophy Points:
    5
    That is good information, thank you Flickster.

    Just FYI RapidBoot does not exist for Win8 so if you have a newer Lenovo, nothing to worry about. Seems like RapidBoot was a half-baked product that delayed init of several critical system services to improve perceived boot times. Clearly it was a hack and not a real fix.

    Re: Robisan, I would just use sleep honestly. It's not really worth giving up 8GB of your SSD for hibernation if you use your laptop often. Sleep should only burn a few percent of battery per day so as long as you use it pretty often there shouldn't be a problem.
     
  9. Rumblesteam

    Rumblesteam Newbie

    Reputations:
    0
    Messages:
    1
    Likes Received:
    0
    Trophy Points:
    5
    Been trying to figure out what to do with my new crucial m4 msata with a recently purchased Y580. I have to say that what i found from "Sottilde" writeup above was key to my days of searching. Thx! Now my msata is actually working as a cache with my HDD. See quick boots and app starts with expresscache. Was hoping to see HDD WEI go up, but it didn't (was it suppose to?). My config that matters for this topic for folks looking to do the same:

    lenovo Ideapad Y580, windows 8 64bit, crucial m4 64 Gigs msata, 1TB, etc... And expresscache link above, not the most recent.

    Setup time was about 15 mins including msata install (crucial m4 came with screws!), fairly easy. I did run the "preload" as mentioned above, that took awhile, but didn't see improvements until a few reboots, an example of speed, it took about 2 secs to load Word 2007.

    Thx Sottilde!
     
  10. sensei22

    sensei22 Notebook Enthusiast

    Reputations:
    0
    Messages:
    40
    Likes Received:
    0
    Trophy Points:
    15
    Thank you very much for putting together this guide. I have just followed it and my Y580 is performing really fast. OFC, windows index score remains at 5.9, but caching seems to be working really well because I can feel programs loading way faster.
     
Thread Status:
Not open for further replies.

Share This Page