Will an external SSD drive be fast enough for the VHD's?

drew726drew726 Posts: 237Member
I want to practice doing some virtualization at work but I would need to bring my laptop. I have a 64GB SSD that I can put on an external enclosure, if I keep all my vhds on there and run virtualbox on my laptop, will it be fast enough to do it decently well? I would need to run Windows server 2008 R2 since I'm practicing for my MCITP. My laptop's cpu is a SP9300 and unfortunately I only have 2GB's of ram.
Completed Courses:
SSC1, SST1, AXV1, TTV1, ABV1, TNV1, AHV1, BAC1, BBC1, LAE1, LUT1, GAC1, IWC1, INC1, HHT1, LAT1, QLT1, CLC1, IWT1 TPV1, INT1, TSV1, LET1, BOV1, AJV1, ORC1, MGC1, BRV1, AIV1, WFV1, TWA1, CPW2
Incompleted Courses:
nothing :)

Comments

  • RTmarcRTmarc Posts: 1,082Member
    You'll be able to run a couple of machines from it.
  • earweedearweed Posts: 5,192Member ■■■■■■■■■□
    The 2 GB RAM will be yourlimiter and 2 VMs will be your limit.
    No longer work in IT. Play around with stuff sometimes still and fix stuff for friends and relatives.
  • MentholMooseMentholMoose Senior Member Posts: 1,550Member ■■■■■■■■□□
    With an SSD you have enough disk performance to run a lot of VMs, but if you are running it externally, the type of enclosure will make a difference. I'd go with eSATA for best performance. Also, some laptops support a second internal hard drive. For example, I can get a SATA drive caddy for my Thinkpad T510 and swap it with the DVD-ROM drive to have a second hard drive.

    The 2GB RAM will limit you, but you can try installing VMs one at a time with 1GB RAM, then downgrading them to around 256MB to see how many you can run concurrently. With regular disks, a VM running 2008 R2 is unusable with that little RAM because the drive can't handle the heavy disk swapping that results from insufficient RAM. However, an SSD can handle a lot of I/O, so while performance won't be great, it should still be usable. To save further RAM, enable Page Fusion for the VMs.

    64GB is not a lot of disk space, especially for the disk hogging 2008 R2. I suggest reading up on VirtualBox's linked-clone functionality, which they call "immutable images". Create one VM, install 2008 R2 on it with whatever base software you need (if any), sysprep it, then delete the VM (and not the disk, obviously) and mark the disk as immutable. An immutable disk is read-only and you can create and run multiple VMs that share the disk (changes go to a differencing disk unique to the VM).
    Chapter 5. Virtual storage

    With 2008 R2, the immutable image might be about 10GB, with a 4-6GB differencing disk per VM, giving you plenty of room for VMs with a 64GB disk. If you just use standalone disks, each VM will be 14-16GB, so 64GB won't be much at all. You can also compact disks in VirtualBox... see this thread:
    Shrinking VDI file with NTFS partition (View topic) • virtualbox.org

    For maximum disk savings, do the compact procedure after sysprepping the VM and shutting it down, but before setting the disk as immutable. So after the sysprep, boot the VM to a Windows live CD, run sdelete (per thread above), shut it down, delete the VM (only), compact the disk, and set it as immutable.
    MentholMoose
    LFCE - MCITP: EDA7, VA, SA, EA - MCSA:S 2003 - CCA (PVS 5, XD 3 / 4 / 5, XS 5 / 6) - VCP 4 / 5
  • drew726drew726 Posts: 237Member
    yeah, unfortunately I can only have one HDD in my laptop because its one of those ultraslims. I don't want to change my laptop to the 64GB one because its just too little space. I was thinking it wouldn't matter as much, whether its eSATA or USB because any data being transfered from one VM to another would be on the same HDD and data wouldn't be sent through the cable much. But regardless, I only have USB on my laptop. I only have 1 ram slot and I'm running a 32bit OS. I might just install ubuntu 64bit dual boot and install a single 4gb RAM. I don't have an extra copy of 64-bit Windows 7.
    Completed Courses:
    SSC1, SST1, AXV1, TTV1, ABV1, TNV1, AHV1, BAC1, BBC1, LAE1, LUT1, GAC1, IWC1, INC1, HHT1, LAT1, QLT1, CLC1, IWT1 TPV1, INT1, TSV1, LET1, BOV1, AJV1, ORC1, MGC1, BRV1, AIV1, WFV1, TWA1, CPW2
    Incompleted Courses:
    nothing :)
  • drew726drew726 Posts: 237Member
    Would it be possible to lower my ram and then set a large pagefile in my SSD, so even if its using virtual memory, it'll still be pretty fast because its using flash memory?
    Completed Courses:
    SSC1, SST1, AXV1, TTV1, ABV1, TNV1, AHV1, BAC1, BBC1, LAE1, LUT1, GAC1, IWC1, INC1, HHT1, LAT1, QLT1, CLC1, IWT1 TPV1, INT1, TSV1, LET1, BOV1, AJV1, ORC1, MGC1, BRV1, AIV1, WFV1, TWA1, CPW2
    Incompleted Courses:
    nothing :)
  • JDMurrayJDMurray Certification Invigilator Surf City, USAPosts: 11,337Admin Admin
    drew726 wrote: »
    Would it be possible to lower my ram and then set a large pagefile in my SSD, so even if its using virtual memory, it'll still be pretty fast because its using flash memory?
    Unless the SSD is uses DRAM rather than flash, it has a limited number of writes, and the write times are much longer than the read times. RAM can get hammered pretty hard by some apps and that would burn out flash memory pretty quickly. And ultimately it doesn't matter how fast the flash memory is, the bottleneck will always be the disk I/O (SATA) interface.
  • drew726drew726 Posts: 237Member
    JDMurray wrote: »
    Unless the SSD is uses DRAM rather than flash, it has a limited number of writes, and the write times are much longer than the read times. RAM can get hammered pretty hard by some apps and that would burn out flash memory pretty quickly. And ultimately it doesn't matter how fast the flash memory is, the bottleneck will always be the disk I/O (SATA) interface.

    I see, that makes sense
    Completed Courses:
    SSC1, SST1, AXV1, TTV1, ABV1, TNV1, AHV1, BAC1, BBC1, LAE1, LUT1, GAC1, IWC1, INC1, HHT1, LAT1, QLT1, CLC1, IWT1 TPV1, INT1, TSV1, LET1, BOV1, AJV1, ORC1, MGC1, BRV1, AIV1, WFV1, TWA1, CPW2
    Incompleted Courses:
    nothing :)
  • MentholMooseMentholMoose Senior Member Posts: 1,550Member ■■■■■■■■□□
    drew726 wrote: »
    Would it be possible to lower my ram and then set a large pagefile in my SSD, so even if its using virtual memory, it'll still be pretty fast because its using flash memory?
    That is exactly what I'm suggesting. By installing when the VM has 1GB, the pagefile should get set to 1.5GB, plus the install should go smoothly. You can also increase the pagefile manually, of course. Unfortunately performance with USB is much, much worse than eSATA, so I don't think it is going to work well, but you can try it. EDIT: If you have an ExpressCard slot, you can add a couple eSATA ports for about $20: Newegg.com - SYBA SD-EXP40014 2 x eSATA ExpressCard
    JDMurray wrote: »
    Unless the SSD is uses DRAM rather than flash, it has a limited number of writes, and the write times are much longer than the read times. RAM can get hammered pretty hard by some apps and that would burn out flash memory pretty quickly. And ultimately it doesn't matter how fast the flash memory is, the bottleneck will always be the disk I/O (SATA) interface.
    There is little chance of a recent consumer SSD being burnt out before the warranty is up, unless you are running high-utilization production VMs 24/7 (in which case buy an enterprise SSD with SLC flash). They have advanced wear leveling functionality, and even if blocks go bad there are enough reserved blocks to replace them. As for performance, with current consumer SSDs, write performance is fantastic and on par with reads.
    Bench - SSD - AnandTech

    SSDs support SMART and you can monitor the status of them. The one in my laptop is at 2400 hours of power on time, 1TB of writes and 1.6TB reads, and the "health" as reported by utilities such as CrystalDiskInfo is still near where it was when new. I make heavy use of VMs on this machine, and there has been no perceptible performance degradation thus far.
    MentholMoose
    LFCE - MCITP: EDA7, VA, SA, EA - MCSA:S 2003 - CCA (PVS 5, XD 3 / 4 / 5, XS 5 / 6) - VCP 4 / 5
  • drew726drew726 Posts: 237Member
    I ended up just buying more RAM. It was 26 dollars after rebate for a single stick of 4GB ddr3.
    Completed Courses:
    SSC1, SST1, AXV1, TTV1, ABV1, TNV1, AHV1, BAC1, BBC1, LAE1, LUT1, GAC1, IWC1, INC1, HHT1, LAT1, QLT1, CLC1, IWT1 TPV1, INT1, TSV1, LET1, BOV1, AJV1, ORC1, MGC1, BRV1, AIV1, WFV1, TWA1, CPW2
    Incompleted Courses:
    nothing :)
  • jibbajabbajibbajabba Posts: 4,317Member ■■■■■■■■□□
    As a sidenote, it all depends on the SSD to be honest. VMs are obviously very write intensive which tend to kill SSDs. For proper performance you'd need "proper" SSDs, which are easily too expensive to justify ...
    My own knowledge base made public: http://open902.com :p
  • earweedearweed Posts: 5,192Member ■■■■■■■■■□
    drew726 wrote: »
    I ended up just buying more RAM. It was 26 dollars after rebate for a single stick of 4GB ddr3.
    Where'd you get that deal?
    No longer work in IT. Play around with stuff sometimes still and fix stuff for friends and relatives.
  • JDMurrayJDMurray Certification Invigilator Surf City, USAPosts: 11,337Admin Admin
    They have advanced wear leveling functionality, and even if blocks go bad there are enough reserved blocks to replace them. As for performance, with current consumer SSDs, write performance is fantastic and on par with reads.
    Bench - SSD - AnandTech
    It's still not good enough for RAM access. The write speeds a would need to be in the low nanosecond range, and I don't know if that's possible with wear-leveling being performed. Besides, the SSD is not the bottleneck, nor is the SATA interface as I previously stated. Instead, it's the OS software that controls access to virtual paging memory that will slow things up. I don't know that the virtual memory manage software in Windows or Linux is efficient enough to give RAM speeds if the SSD and disk I/O would support it.

    Anyway, this is just an academic argument. DDR prices are suppose to be falling sharply this year, and unless you need a single computer with hundreds of GB of cheap RAM, there's no reason to consider the possibility of using an SSD for main memory.
  • drew726drew726 Posts: 237Member
    earweed wrote: »
    Where'd you get that deal?

    http://slickdeals.net/forums/showthread.php?sduid=30903&t=2692935

    great deal :p, would have gotten the 8gb if i had two ram slots
    Completed Courses:
    SSC1, SST1, AXV1, TTV1, ABV1, TNV1, AHV1, BAC1, BBC1, LAE1, LUT1, GAC1, IWC1, INC1, HHT1, LAT1, QLT1, CLC1, IWT1 TPV1, INT1, TSV1, LET1, BOV1, AJV1, ORC1, MGC1, BRV1, AIV1, WFV1, TWA1, CPW2
    Incompleted Courses:
    nothing :)
  • MentholMooseMentholMoose Senior Member Posts: 1,550Member ■■■■■■■■□□
    JDMurray wrote: »
    I don't know that the virtual memory manage software in Windows or Linux is efficient enough to give RAM speeds if the SSD and disk I/O would support it.
    Well I didn't say having a VM with a pagefile on SSD would completely make up for insufficient RAM. I've actually tried a few scenarios (different hypervisors and SSD models) and there is in fact noticeable slowdown. However, my point is that it is still usable, and it is a viable option if it is necessary.
    JDMurray wrote: »
    Anyway, this is just an academic argument. DDR prices are suppose to be falling sharply this year, and unless you need a single computer with hundreds of GB of cheap RAM, there's no reason to consider the possibility of using an SSD for main memory.
    I remember back in early 2009 I got several 8GB DDR2 kits for $100, man those were the days! :D DDR3 pricing is getting low but then I have to upgrade my machines to use DDR3. Anyway, there are some cases where you just can't upgrade, like drew726's laptop that can only take 4GB, or my Thinkpad that maxes at 8GB, so having an SSD will help keep performance acceptable.
    MentholMoose
    LFCE - MCITP: EDA7, VA, SA, EA - MCSA:S 2003 - CCA (PVS 5, XD 3 / 4 / 5, XS 5 / 6) - VCP 4 / 5
Sign In or Register to comment.