Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • World
  • Users
  • Groups
Skins
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Code Project
  1. Home
  2. The Lounge
  3. Has the time come for development on a virtual machine?

Has the time come for development on a virtual machine?

Scheduled Pinned Locked Moved The Lounge
javaasp-netlinuxhostingtesting
75 Posts 42 Posters 31 Views 1 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • M Member 96

    I've been kicking around the idea of doing future development on a virtual machine once I get the major release out in the spring that I'm working on now. It's been two years with the current quad core pc, time to put it out to pasture or at least wipe the hard drive and start fresh again. My theory is you get a kick ass fast computer with 64bit processor and oodles of ram, choose a 64bit host operating system on the hazy criteria that it be the best for vm hosting (fastest to boot? Most efficient? Linux, Windows...not sure.) then create a 32bit virtual machine for general development with whatever is the best operating system for development and a set of others for testing under each operating system. Plus, since my dev machine is also my main personal use machine I guess a separate vm strictly for personal use. I'm thinking that we've almost reached the point where this is feasible (fast enough), but not sure. Is anyone doing their main development in a vm and how's the speed by comparison?


    "It's so simple to be wise. Just think of something stupid to say and then don't say it." -Sam Levenson

    A Offline
    A Offline
    AnthonyEllis
    wrote on last edited by
    #35

    I've been developing in a VM for years now. The convenience of portability and the reassurance of immediate restoration in case of hard drive/system failure or accidentally formatting your hard drive (it happens when you are playing around with scripting DiskPart!) has been wonderful. VMWare Workstation 6.x has been my home for a while. :)

    1 Reply Last reply
    0
    • M Member 96

      I've been kicking around the idea of doing future development on a virtual machine once I get the major release out in the spring that I'm working on now. It's been two years with the current quad core pc, time to put it out to pasture or at least wipe the hard drive and start fresh again. My theory is you get a kick ass fast computer with 64bit processor and oodles of ram, choose a 64bit host operating system on the hazy criteria that it be the best for vm hosting (fastest to boot? Most efficient? Linux, Windows...not sure.) then create a 32bit virtual machine for general development with whatever is the best operating system for development and a set of others for testing under each operating system. Plus, since my dev machine is also my main personal use machine I guess a separate vm strictly for personal use. I'm thinking that we've almost reached the point where this is feasible (fast enough), but not sure. Is anyone doing their main development in a vm and how's the speed by comparison?


      "It's so simple to be wise. Just think of something stupid to say and then don't say it." -Sam Levenson

      P Offline
      P Offline
      PH MAT
      wrote on last edited by
      #36

      John C wrote:

      Is anyone doing their main development in a vm

      We are now working on two (third is being installed) dual-quad core intel vm machines with 16 programmers on XP32 machines running VS 2005 (500k+ lines projects). Apart from the disk speed (which we are now upgrading to a SAN and local striped disks for compiling) it works great.. You can easily add a new environment (just copy) when a new programmer is needed. Also working on different versions or branches of the software can be done using different VM's. The whole test environment is also build on the same ESX VM machines.

      1 Reply Last reply
      0
      • M Member 96

        I've been kicking around the idea of doing future development on a virtual machine once I get the major release out in the spring that I'm working on now. It's been two years with the current quad core pc, time to put it out to pasture or at least wipe the hard drive and start fresh again. My theory is you get a kick ass fast computer with 64bit processor and oodles of ram, choose a 64bit host operating system on the hazy criteria that it be the best for vm hosting (fastest to boot? Most efficient? Linux, Windows...not sure.) then create a 32bit virtual machine for general development with whatever is the best operating system for development and a set of others for testing under each operating system. Plus, since my dev machine is also my main personal use machine I guess a separate vm strictly for personal use. I'm thinking that we've almost reached the point where this is feasible (fast enough), but not sure. Is anyone doing their main development in a vm and how's the speed by comparison?


        "It's so simple to be wise. Just think of something stupid to say and then don't say it." -Sam Levenson

        S Offline
        S Offline
        sjariel
        wrote on last edited by
        #37

        John I have been running VM's on both a Quad core grunter pc and my Lenovo t61p both machines have 4 Gig memory. I use VPC 2007 The pains I have found. :( No multi monitor support. This was a biggy for me and I believe vmware have a solution also Scott Hanselman gave me a link to some software that you run on both the host and virtual pc's but it did not work well for me. I have heard that new VPC ver will allow multi monitor support. :( Virus software. you have to run virus software on the VM this slows it down right from the word go and then there is the license cost. :( A little slower. :( Wheel mouse. I have a bluetooth mouse on my notebook which is great but the wheel scrolling will not work in the vpc I have tried other mice with no problems at first I thought it was the driver and then I found that a MS wireless mouse also had the issue. I am sure it is not a config issue as some work some don't with just plug and play. The benefits :) Backup. I just zip up the vpc file and copy it via network and everything is backed up. I can run virtual machine on either notebook when I am on the road or Quad if I want the grunt. :) No Downtime. I had an issue a while back where my notebook just died overnight and it took days to fix even with a next day warranty. I just loaded the VPC up to another pc. :) Mucking around. I played with VS2008 betas in VPC for a long while without having to worry about screwing up my real world environment. Lastly you need to setup your PC with some well organised shares etc. Prior to this I found I had docs in my host pc's My Documents folder and some in my VPC my docs folder etc. so you need to establish some practices here to avoid this. (I was probably just slack before hand) OzDeveloper

        1 Reply Last reply
        0
        • M Member 96

          I've been kicking around the idea of doing future development on a virtual machine once I get the major release out in the spring that I'm working on now. It's been two years with the current quad core pc, time to put it out to pasture or at least wipe the hard drive and start fresh again. My theory is you get a kick ass fast computer with 64bit processor and oodles of ram, choose a 64bit host operating system on the hazy criteria that it be the best for vm hosting (fastest to boot? Most efficient? Linux, Windows...not sure.) then create a 32bit virtual machine for general development with whatever is the best operating system for development and a set of others for testing under each operating system. Plus, since my dev machine is also my main personal use machine I guess a separate vm strictly for personal use. I'm thinking that we've almost reached the point where this is feasible (fast enough), but not sure. Is anyone doing their main development in a vm and how's the speed by comparison?


          "It's so simple to be wise. Just think of something stupid to say and then don't say it." -Sam Levenson

          J Offline
          J Offline
          Jonathan C Dickinson
          wrote on last edited by
          #38

          I have a Centrino Duo with VT (Hardware Virtualization - very important when choosing a CPU) and VM performance is acceptable. 3Ghz 2GB RAM (Toshiba Tecra A8 - but don't buy Toshiba, obscene amounts of homegrown standards). It can sometimes get a bit sloppy, but rebooting the VM always works like magic. The nice thing about it is that if you have a large product that as long to uninstall as it does to install, you can always just roll back: on top of that, a fudged installation is also only a roll back away. In this regard I really recommend VMWare Workstation - you can take multiple snapshots. It also handles the RAM allocation better (you can have, say 2 VMs with 1.5GB RAM each when you only have 2GB on your host). Furthermore, you are not bound to procedures that otherwise render your PC useless - like installing Windows. You can always continue doing something useful on your host. If you are truly serious about virtualization try Virtual Box on Linux. I personally use Windows (as our VPN is a Microsoft one and Linux doesn't like Microsoft VPNs), but my virtualization experience was a lot better on Linux (especially the integrated mode that Virtual Box has a' la Parallels).

          He who asks a question is a fool for five minutes. He who does not ask a question remains a fool forever. [Chineese Proverb] Jonathan C Dickinson (C# Software Engineer)

          1 Reply Last reply
          0
          • M Member 96

            I've been kicking around the idea of doing future development on a virtual machine once I get the major release out in the spring that I'm working on now. It's been two years with the current quad core pc, time to put it out to pasture or at least wipe the hard drive and start fresh again. My theory is you get a kick ass fast computer with 64bit processor and oodles of ram, choose a 64bit host operating system on the hazy criteria that it be the best for vm hosting (fastest to boot? Most efficient? Linux, Windows...not sure.) then create a 32bit virtual machine for general development with whatever is the best operating system for development and a set of others for testing under each operating system. Plus, since my dev machine is also my main personal use machine I guess a separate vm strictly for personal use. I'm thinking that we've almost reached the point where this is feasible (fast enough), but not sure. Is anyone doing their main development in a vm and how's the speed by comparison?


            "It's so simple to be wise. Just think of something stupid to say and then don't say it." -Sam Levenson

            S Offline
            S Offline
            stackemedia
            wrote on last edited by
            #39

            We've practically gone completely virtual. We have virtual Servers and Virtual development environments. I would say it's been a varied experience. I have a reasonably good development machine, 3Ghz Dual core pc with 2GB RAM. Essentially it's been fine for general development with Visual Studio 2005 (small web apps). Problems occurred when developing BizTalk applications (my vpc would run like a dog). Also we have Mcaffe virus scan installed on all our development builds, which can cause problems like blocking emails and grinding the vpcs to a halt. Personally I think having separate installs for development is great - but things can get frustratingly slow :(

            1 Reply Last reply
            0
            • M Member 96

              I've been kicking around the idea of doing future development on a virtual machine once I get the major release out in the spring that I'm working on now. It's been two years with the current quad core pc, time to put it out to pasture or at least wipe the hard drive and start fresh again. My theory is you get a kick ass fast computer with 64bit processor and oodles of ram, choose a 64bit host operating system on the hazy criteria that it be the best for vm hosting (fastest to boot? Most efficient? Linux, Windows...not sure.) then create a 32bit virtual machine for general development with whatever is the best operating system for development and a set of others for testing under each operating system. Plus, since my dev machine is also my main personal use machine I guess a separate vm strictly for personal use. I'm thinking that we've almost reached the point where this is feasible (fast enough), but not sure. Is anyone doing their main development in a vm and how's the speed by comparison?


              "It's so simple to be wise. Just think of something stupid to say and then don't say it." -Sam Levenson

              J Offline
              J Offline
              Jose Motta
              wrote on last edited by
              #40

              Definitely this is a good idea. I´ve been using VMs last couple years. Even with simple machines with a dual Core CPU, 2 GB RAM, SATA drives, Win2K3R2 and latest Virtual Server you can run a 1GB RAM XP VM for development with Visual Studio. It is very useful do work on different projetcs, since you can customize the environment by project. Build a brand-new-machine and freeze it in a 20GB file. You can duplicate it for each new project. You can run one development VM each time but there is still room in the host server for a second 512M RAM XP VM for personal use, email, etc. My goal now is to try a 8GB 64-bit (wait i7?), SATA 10K and Win2K8 at host server. Jose Motta

              J.Motta

              D 1 Reply Last reply
              0
              • P Pierre Leclercq

                Thank you! I'd even add: http://www.custompc.co.uk/news/605271/windows-7-allows-directx-10-acceleration-on-the-cpu.html[^] Oh my! They got it all wrong! I guess than rather chasing yahoo as a substitute for google they should have bought nvidia and electronic arts. Hey guys, you missed the google train 10 years ago, so move on now...

                D Offline
                D Offline
                Dan Neely
                wrote on last edited by
                #41

                Given how shit intel ingrated gfx are, something needs to be done to make areo 2.0 run on $400 hardware.

                Today's lesson is brought to you by the word "niggardly". Remember kids, don't attribute to racism what can be explained by Scandinavian language roots. -- Robert Royall

                1 Reply Last reply
                0
                • J Jose Motta

                  Definitely this is a good idea. I´ve been using VMs last couple years. Even with simple machines with a dual Core CPU, 2 GB RAM, SATA drives, Win2K3R2 and latest Virtual Server you can run a 1GB RAM XP VM for development with Visual Studio. It is very useful do work on different projetcs, since you can customize the environment by project. Build a brand-new-machine and freeze it in a 20GB file. You can duplicate it for each new project. You can run one development VM each time but there is still room in the host server for a second 512M RAM XP VM for personal use, email, etc. My goal now is to try a 8GB 64-bit (wait i7?), SATA 10K and Win2K8 at host server. Jose Motta

                  J.Motta

                  D Offline
                  D Offline
                  Dan Neely
                  wrote on last edited by
                  #42

                  at the same clock speed core i7 is ~20% faster than a core2 on a single threaded app. Apps that scale nicely over its 8 threads will see a ~50% gain over a core 2 quad. The Caveat is that CPU/Mobo/Ram (DDR3) will cost you $800ish.

                  Today's lesson is brought to you by the word "niggardly". Remember kids, don't attribute to racism what can be explained by Scandinavian language roots. -- Robert Royall

                  1 Reply Last reply
                  0
                  • M Member 96

                    I've been kicking around the idea of doing future development on a virtual machine once I get the major release out in the spring that I'm working on now. It's been two years with the current quad core pc, time to put it out to pasture or at least wipe the hard drive and start fresh again. My theory is you get a kick ass fast computer with 64bit processor and oodles of ram, choose a 64bit host operating system on the hazy criteria that it be the best for vm hosting (fastest to boot? Most efficient? Linux, Windows...not sure.) then create a 32bit virtual machine for general development with whatever is the best operating system for development and a set of others for testing under each operating system. Plus, since my dev machine is also my main personal use machine I guess a separate vm strictly for personal use. I'm thinking that we've almost reached the point where this is feasible (fast enough), but not sure. Is anyone doing their main development in a vm and how's the speed by comparison?


                    "It's so simple to be wise. Just think of something stupid to say and then don't say it." -Sam Levenson

                    E Offline
                    E Offline
                    estump
                    wrote on last edited by
                    #43

                    We used VMs for development at my last job - the whole IT department for the most part had one - well over 100 developers, QA, DBAs and BAs, plus VM servers for development/QA. For the most part, they worked out pretty well as far as speed and performance are concerned. Reliability was an issue for the first few months. Occasionally a VM would lock up or you would not be able to logon to your VM and you'd have to have the helpdesk re-start it. We did lose a few and have to re-create them, but that was the company's fault for going ahead and using them before the backup/recovery process was tested and in place. The only real issue I saw as a developer was when we used VMs as servers (win2k3 and win2k8) for SQL Server or BizTalk or any of those types of development tools (except IIS - those ran fine). These ran REALLY slow and it didn't take much to lock them up. Unless you are in a position to allocate alot of resources (2GB RAM or more, CPU -??) to these, I would not use them as day-to-day servers, or at least be prepared to to allocate the necessary resources to them.

                    1 Reply Last reply
                    0
                    • M Member 96

                      I've been kicking around the idea of doing future development on a virtual machine once I get the major release out in the spring that I'm working on now. It's been two years with the current quad core pc, time to put it out to pasture or at least wipe the hard drive and start fresh again. My theory is you get a kick ass fast computer with 64bit processor and oodles of ram, choose a 64bit host operating system on the hazy criteria that it be the best for vm hosting (fastest to boot? Most efficient? Linux, Windows...not sure.) then create a 32bit virtual machine for general development with whatever is the best operating system for development and a set of others for testing under each operating system. Plus, since my dev machine is also my main personal use machine I guess a separate vm strictly for personal use. I'm thinking that we've almost reached the point where this is feasible (fast enough), but not sure. Is anyone doing their main development in a vm and how's the speed by comparison?


                      "It's so simple to be wise. Just think of something stupid to say and then don't say it." -Sam Levenson

                      D Offline
                      D Offline
                      decaffeinatedMonkey
                      wrote on last edited by
                      #44

                      Now that I've finally gotten a quad-core machine, and oodles of memory (4 GB, which isn't much when running VM's), developing on a virtual machine has become incredibly beneficial. I got the VMWare Workstation and with it snapshots make it easy to restore in a hurry when you've done something stupid, or installed that Microsoft security update that you wished you hadn't. Plus, as many have said already, it's very easy to move them around. Speed is somewhat slower when building due to disk access speeds, but it's perfect for what I do.

                      1 Reply Last reply
                      0
                      • M Member 96

                        I've been kicking around the idea of doing future development on a virtual machine once I get the major release out in the spring that I'm working on now. It's been two years with the current quad core pc, time to put it out to pasture or at least wipe the hard drive and start fresh again. My theory is you get a kick ass fast computer with 64bit processor and oodles of ram, choose a 64bit host operating system on the hazy criteria that it be the best for vm hosting (fastest to boot? Most efficient? Linux, Windows...not sure.) then create a 32bit virtual machine for general development with whatever is the best operating system for development and a set of others for testing under each operating system. Plus, since my dev machine is also my main personal use machine I guess a separate vm strictly for personal use. I'm thinking that we've almost reached the point where this is feasible (fast enough), but not sure. Is anyone doing their main development in a vm and how's the speed by comparison?


                        "It's so simple to be wise. Just think of something stupid to say and then don't say it." -Sam Levenson

                        I Offline
                        I Offline
                        Idaho Edokpayi
                        wrote on last edited by
                        #45

                        It's not just feasible - it's standard practice at many prominent Dev houses. I do SharePoint development from a 2 GHZ dual core laptop with Vista Ultimate and have run small SharePoint farms off my machine for sales demos.

                        Idaho Edokpayi

                        1 Reply Last reply
                        0
                        • M Member 96

                          I've been kicking around the idea of doing future development on a virtual machine once I get the major release out in the spring that I'm working on now. It's been two years with the current quad core pc, time to put it out to pasture or at least wipe the hard drive and start fresh again. My theory is you get a kick ass fast computer with 64bit processor and oodles of ram, choose a 64bit host operating system on the hazy criteria that it be the best for vm hosting (fastest to boot? Most efficient? Linux, Windows...not sure.) then create a 32bit virtual machine for general development with whatever is the best operating system for development and a set of others for testing under each operating system. Plus, since my dev machine is also my main personal use machine I guess a separate vm strictly for personal use. I'm thinking that we've almost reached the point where this is feasible (fast enough), but not sure. Is anyone doing their main development in a vm and how's the speed by comparison?


                          "It's so simple to be wise. Just think of something stupid to say and then don't say it." -Sam Levenson

                          R Offline
                          R Offline
                          r2musings
                          wrote on last edited by
                          #46

                          I have been using VMs for development for a long time on my laptop and have never noticed any issues with speed. My current client is a major national cable network and when I joined the project earlier this year, the Project Manager handed me a drive with the VM and I was developing in a matter of minutes on a setup that would have taken me at least a day of configuration. This setup is on Windows Server 2003 using VSTS 2008. The .NET solution is huge and has over 10 large projects. I only have 1GB of RAM assigned to the VM. My laptop specs: Intel Core 2 Duo, 2.00 GHz. 4GHz of RAM. Running Vista Ultimate 64bit. I use VMWare Workstation (costs around $200) as I've not been real pleased with any of MS offerings for Virtualization. We've found that it's best to always store the VM on a separate drive (not your hard drive). Also, my current project doesn't involve Sharepoint (thank god), but developing on a VM with Windows Server 2003 (or 2008) for Sharepoint is the only way to go. So, in closing, I highly recommend giving virtualization for dev work a try. I would stick with VMWare if you can afford to do so. I think you'll find that you don't need as much "super power" as you might think.

                          1 Reply Last reply
                          0
                          • M Member 96

                            I've been kicking around the idea of doing future development on a virtual machine once I get the major release out in the spring that I'm working on now. It's been two years with the current quad core pc, time to put it out to pasture or at least wipe the hard drive and start fresh again. My theory is you get a kick ass fast computer with 64bit processor and oodles of ram, choose a 64bit host operating system on the hazy criteria that it be the best for vm hosting (fastest to boot? Most efficient? Linux, Windows...not sure.) then create a 32bit virtual machine for general development with whatever is the best operating system for development and a set of others for testing under each operating system. Plus, since my dev machine is also my main personal use machine I guess a separate vm strictly for personal use. I'm thinking that we've almost reached the point where this is feasible (fast enough), but not sure. Is anyone doing their main development in a vm and how's the speed by comparison?


                            "It's so simple to be wise. Just think of something stupid to say and then don't say it." -Sam Levenson

                            D Offline
                            D Offline
                            Dave Buhl
                            wrote on last edited by
                            #47

                            Actually, I changed over to this methodology about 6 months ago and am very happy. I currently am running an Intell Q9300 Quad core machine with 4GB ram and 3 250 GB 7200rpm drives in Raid 1 config. My host OS is Vista 32 bit My VM of choice is VirtualBox (supported by Sun and is free) I have VMs with XP Pro, Win 98, Ubuntu Linux, Centos Linux, Windows Server 2008 and develop with VS2005, VS2008, and Eclipse in separate vms of course. I tend to run out of ram when I run more than 2 vms simultaneously :( so am thinking of changing out to a 64 bit host with more ram but the speed is acceptable even with multiple vms running on a Vista host. Granted, my applications tend to run less than 50K lines of code so if you are developing one of those million lines of code monsters ymmv. BTW the way virtualbox works (and probably the others as well) a portion of ram is sandboxed for each vm but the vm will take advantage of multi core/multiple processors when available. Great benefits i can see to this is your personal vm is in its own sandbox (unless you change the configuration of your network) and wont interfere with your dev or test vms. If you test something screwy, just delete the vm and mount a new copy and you are back up with a fresh install in seconds. Also, if you have enough resources, you can set up several vms in their own private network with domain controllers, web servers, firewalls, ... to test in a private connected environment simulating a workplace infrastructure. I have even thought about building a server to just run my vms and remote desktop/vnc/... into the vms from my main pc. Have to consider that expenditure now with the economy the way it is. :) Almost forgot. There is one downside to using vms and this was especially evident with the release of Vista. VMs give you a pc with a limited set of generic hardware so if all your testing in done in vms you might run into problems when your apps are released into the wild. Most of the Beta testers of Vista, including me :suss:, tested in vms so many problems with the HAL were not discovered until it was released into the wild. Bad on us, and not sure how many realize their part in the poor quality of the Vista release.

                            1 Reply Last reply
                            0
                            • M Member 96

                              I've been kicking around the idea of doing future development on a virtual machine once I get the major release out in the spring that I'm working on now. It's been two years with the current quad core pc, time to put it out to pasture or at least wipe the hard drive and start fresh again. My theory is you get a kick ass fast computer with 64bit processor and oodles of ram, choose a 64bit host operating system on the hazy criteria that it be the best for vm hosting (fastest to boot? Most efficient? Linux, Windows...not sure.) then create a 32bit virtual machine for general development with whatever is the best operating system for development and a set of others for testing under each operating system. Plus, since my dev machine is also my main personal use machine I guess a separate vm strictly for personal use. I'm thinking that we've almost reached the point where this is feasible (fast enough), but not sure. Is anyone doing their main development in a vm and how's the speed by comparison?


                              "It's so simple to be wise. Just think of something stupid to say and then don't say it." -Sam Levenson

                              J Offline
                              J Offline
                              James H
                              wrote on last edited by
                              #48

                              I do all my development in VM's now and in many ways performance has improved. My main PC is a quad core Q6600 (2.4GHz ish) with 8GB RAM and loads of disk space running Win 2003 Server 64 bit cut down light (i.e. very little excess baggage installed on the host PC) - all my day to day work is done in a number of VMWare virtual machines which I run with VMWare Player 2.5. I originally setup the VM's on the free version of VMWare Server - but once you have the hang of it and look around on the net a bit (e.g. sanbarrow.com) you can quite easily setup new VM's for VMWare player from scratch without paying for WorkStation. I chose player over Server and Workstation because it seem to work better with multiple VM's running at once as they end up in clear separate windows and I can easily have a separate VM running full screen on each monitor. I even "P2V'd" in my old PC that had all the day to day debris stuff on it like Office, Outlook etc etc and run that in a VM too. I have to support some pretty old code (VB6 stuff mainly) and still some VS 2003 code, mainly VS 2005 and some VS 2008. I also do quite a lot of installer work. If you have MSDN then you can do what I did - set up separate VM's for each environment - mine are all running XP with as little as needed installed and 1GB RAM assigned to each VM - I can happily run 4 or 5 VM's at a time with no real performance issues. Splitting each development environment has had a number of bonuses no listing everything a couple are: 1. No more agro when one env screws up the other (as e.g. VS 2005 seemed to with a parallel VS2003 install etc) 2. Turn off the VM of the env you are not using - then there is no overhead until they are needed A drawback has been that sometimes that "useful little utility" is not available in the VM you are in - so you either have to install it - or what I now do where possible is use portable apps (e.g. PortableApps.com) off a network share so I can run them from all VM's without installing (my basic philosophy has been only install what you REALLY need - I have a SandBox VM to try stuff first to see if I really do need it!). All the main VM vmdk disks and settings are running off one 2.5" 300GB Western Digital disk in an IcyBox caddy that has a docking station slot in the main PC attaching the disk via SATA but when undocked can also be attached by eSATA or USB. This disk is fully encrypted using TrueCrypt. All this extra load (encryption and contention on the single disk) does not seem too much of a problem - yes I am s

                              M 1 Reply Last reply
                              0
                              • M Member 96

                                I've been kicking around the idea of doing future development on a virtual machine once I get the major release out in the spring that I'm working on now. It's been two years with the current quad core pc, time to put it out to pasture or at least wipe the hard drive and start fresh again. My theory is you get a kick ass fast computer with 64bit processor and oodles of ram, choose a 64bit host operating system on the hazy criteria that it be the best for vm hosting (fastest to boot? Most efficient? Linux, Windows...not sure.) then create a 32bit virtual machine for general development with whatever is the best operating system for development and a set of others for testing under each operating system. Plus, since my dev machine is also my main personal use machine I guess a separate vm strictly for personal use. I'm thinking that we've almost reached the point where this is feasible (fast enough), but not sure. Is anyone doing their main development in a vm and how's the speed by comparison?


                                "It's so simple to be wise. Just think of something stupid to say and then don't say it." -Sam Levenson

                                D Offline
                                D Offline
                                dazfuller
                                wrote on last edited by
                                #49

                                I wish I could move development over to a VM at work, that way I could install all of the stuff which may mess the machine up in a throw-away environment. Plus I could have an environment set up like the client machine for testing. I recently made a change to a product that threw up an issue on older machines I couldn't test for, if I could have had a VM set up with restricted hardware (e.g. 256Mb RAM, 4Gb HDD) I could have tested the change and found the issue. There are too many pro's and not enough cons in my opinion so go forth and VM your heart out :)

                                1 Reply Last reply
                                0
                                • J James H

                                  I do all my development in VM's now and in many ways performance has improved. My main PC is a quad core Q6600 (2.4GHz ish) with 8GB RAM and loads of disk space running Win 2003 Server 64 bit cut down light (i.e. very little excess baggage installed on the host PC) - all my day to day work is done in a number of VMWare virtual machines which I run with VMWare Player 2.5. I originally setup the VM's on the free version of VMWare Server - but once you have the hang of it and look around on the net a bit (e.g. sanbarrow.com) you can quite easily setup new VM's for VMWare player from scratch without paying for WorkStation. I chose player over Server and Workstation because it seem to work better with multiple VM's running at once as they end up in clear separate windows and I can easily have a separate VM running full screen on each monitor. I even "P2V'd" in my old PC that had all the day to day debris stuff on it like Office, Outlook etc etc and run that in a VM too. I have to support some pretty old code (VB6 stuff mainly) and still some VS 2003 code, mainly VS 2005 and some VS 2008. I also do quite a lot of installer work. If you have MSDN then you can do what I did - set up separate VM's for each environment - mine are all running XP with as little as needed installed and 1GB RAM assigned to each VM - I can happily run 4 or 5 VM's at a time with no real performance issues. Splitting each development environment has had a number of bonuses no listing everything a couple are: 1. No more agro when one env screws up the other (as e.g. VS 2005 seemed to with a parallel VS2003 install etc) 2. Turn off the VM of the env you are not using - then there is no overhead until they are needed A drawback has been that sometimes that "useful little utility" is not available in the VM you are in - so you either have to install it - or what I now do where possible is use portable apps (e.g. PortableApps.com) off a network share so I can run them from all VM's without installing (my basic philosophy has been only install what you REALLY need - I have a SandBox VM to try stuff first to see if I really do need it!). All the main VM vmdk disks and settings are running off one 2.5" 300GB Western Digital disk in an IcyBox caddy that has a docking station slot in the main PC attaching the disk via SATA but when undocked can also be attached by eSATA or USB. This disk is fully encrypted using TrueCrypt. All this extra load (encryption and contention on the single disk) does not seem too much of a problem - yes I am s

                                  M Offline
                                  M Offline
                                  Member 96
                                  wrote on last edited by
                                  #50

                                  Good stuff James, yes you should write an article on it if you have time, there is clearly a lot of interest in it here judging by the responses. I'm curious about one thing: you said you need to reactivate XP when you run your vm on a different machine, I thought that was not necessary unless the settings for the VM's ram or disk are changed. Does it want to be reactivated solely because the host os and machine is different or is it a result of you having to change settings on the vm on your notebook?


                                  "It's so simple to be wise. Just think of something stupid to say and then don't say it." -Sam Levenson

                                  J 1 Reply Last reply
                                  0
                                  • M Member 96

                                    I've been kicking around the idea of doing future development on a virtual machine once I get the major release out in the spring that I'm working on now. It's been two years with the current quad core pc, time to put it out to pasture or at least wipe the hard drive and start fresh again. My theory is you get a kick ass fast computer with 64bit processor and oodles of ram, choose a 64bit host operating system on the hazy criteria that it be the best for vm hosting (fastest to boot? Most efficient? Linux, Windows...not sure.) then create a 32bit virtual machine for general development with whatever is the best operating system for development and a set of others for testing under each operating system. Plus, since my dev machine is also my main personal use machine I guess a separate vm strictly for personal use. I'm thinking that we've almost reached the point where this is feasible (fast enough), but not sure. Is anyone doing their main development in a vm and how's the speed by comparison?


                                    "It's so simple to be wise. Just think of something stupid to say and then don't say it." -Sam Levenson

                                    M Offline
                                    M Offline
                                    MattPenner
                                    wrote on last edited by
                                    #51

                                    I recently saw a presentation from Stephen Rose (http://mcsegeek.wordpress.com/[^]) at the Inland Empire .Net User Group (http://www.iedotnetug.org[^]) in SoCal, USA on this very subject. He had a new HP laptop he had recently picked up at Fry's Electronics for $799 (after a few in-store discounts). It had 4GB of RAM and ran on the Intel Centrino2 technology. He had all his VPC images running off an external USB hard drive that ran at 72k rpm. During the presentation he had the base OS (Vista 64bit - I believe it was Vista Ultimate but I'm not sure) along with 4 VPC's all running concurrently! The 4 VPC's were: MS Server 2003 (general install with IIS for the web server), MS Server 2003 with MS SQL Server 2005 (the db tier), an XP dev image (with VS 2008, etc) and another XP image for the test client (just XP using IE 7). What was truly amazing is that everything ran without a hitch. The CPU wasn't spiked other than the initial start up of the VPC's. Everything ran as you would expect on dedicated machines. He didn't start them all up at the same time of course. There was no perceivable lag at all. The RAM was pegged, but that's to be expected with 5 O/S's running at the same time, each grabbing it's share. It wasn't as fast as dedicated quad-core servers for the web and SQL tier of course, but it was the fasted personal multi-server dev environment I've seen. I'm lucky if I ever get a "test" server to play with. Usually it's pretty obsolete hardware and then I have to share it with others. Having all this on VPC's has an incredible number of benefits. The keys, Stephen was saying, were to use the Centrino2 (or AMD equivalent) with the new virtual extensions, as much ram as you can get, and put your VPC's on a separate drive from your main O/S. He really likes external USB drives for the portability. Get an external drive that's as fast as you can find. I am definitely making this my next development setup.

                                    M 1 Reply Last reply
                                    0
                                    • M MattPenner

                                      I recently saw a presentation from Stephen Rose (http://mcsegeek.wordpress.com/[^]) at the Inland Empire .Net User Group (http://www.iedotnetug.org[^]) in SoCal, USA on this very subject. He had a new HP laptop he had recently picked up at Fry's Electronics for $799 (after a few in-store discounts). It had 4GB of RAM and ran on the Intel Centrino2 technology. He had all his VPC images running off an external USB hard drive that ran at 72k rpm. During the presentation he had the base OS (Vista 64bit - I believe it was Vista Ultimate but I'm not sure) along with 4 VPC's all running concurrently! The 4 VPC's were: MS Server 2003 (general install with IIS for the web server), MS Server 2003 with MS SQL Server 2005 (the db tier), an XP dev image (with VS 2008, etc) and another XP image for the test client (just XP using IE 7). What was truly amazing is that everything ran without a hitch. The CPU wasn't spiked other than the initial start up of the VPC's. Everything ran as you would expect on dedicated machines. He didn't start them all up at the same time of course. There was no perceivable lag at all. The RAM was pegged, but that's to be expected with 5 O/S's running at the same time, each grabbing it's share. It wasn't as fast as dedicated quad-core servers for the web and SQL tier of course, but it was the fasted personal multi-server dev environment I've seen. I'm lucky if I ever get a "test" server to play with. Usually it's pretty obsolete hardware and then I have to share it with others. Having all this on VPC's has an incredible number of benefits. The keys, Stephen was saying, were to use the Centrino2 (or AMD equivalent) with the new virtual extensions, as much ram as you can get, and put your VPC's on a separate drive from your main O/S. He really likes external USB drives for the portability. Get an external drive that's as fast as you can find. I am definitely making this my next development setup.

                                      M Offline
                                      M Offline
                                      Member 96
                                      wrote on last edited by
                                      #52

                                      MattPenner wrote:

                                      The keys, Stephen was saying, were to use the Centrino2 (or AMD equivalent) with the new virtual extensions, as much ram as you can get, and put your VPC's on a separate drive from your main O/S. He really likes external USB drives for the portability.

                                      Good info thanks.


                                      "It's so simple to be wise. Just think of something stupid to say and then don't say it." -Sam Levenson

                                      J 1 Reply Last reply
                                      0
                                      • M Member 96

                                        I've been kicking around the idea of doing future development on a virtual machine once I get the major release out in the spring that I'm working on now. It's been two years with the current quad core pc, time to put it out to pasture or at least wipe the hard drive and start fresh again. My theory is you get a kick ass fast computer with 64bit processor and oodles of ram, choose a 64bit host operating system on the hazy criteria that it be the best for vm hosting (fastest to boot? Most efficient? Linux, Windows...not sure.) then create a 32bit virtual machine for general development with whatever is the best operating system for development and a set of others for testing under each operating system. Plus, since my dev machine is also my main personal use machine I guess a separate vm strictly for personal use. I'm thinking that we've almost reached the point where this is feasible (fast enough), but not sure. Is anyone doing their main development in a vm and how's the speed by comparison?


                                        "It's so simple to be wise. Just think of something stupid to say and then don't say it." -Sam Levenson

                                        E Offline
                                        E Offline
                                        ensoftrob
                                        wrote on last edited by
                                        #53

                                        I just switched to VMware Server on a 64-bit host with 32-bit and 64-bit Windows XP guests 2 weeks ago. My main reason for switching was that I seem to have 1 or 2 hardware failures a year, and it always takes me a long time to rebuild my workstation just how I like it. With my primary development workstation running in a VM, I can just do a bare OS install on a system, throw VMware on, and I'm ready to go again. I also recently started working on building 64-bit versions of our software, so I need a 64-bit system to test them on. Performance under a VM on the new Athlon 64 X2 5000+ is better than on my previous workstation, a Pentium D 2.8 GHz. As long as you install a 64-bit host OS and at least 4 GB of RAM, you should be able to comfortably host several VMs. So far doing development on a VM is going pretty well for me, but there are a couple of minor gotchas. If you use multiple monitors, you'll have to change your work style a little. The VMware console window will only maximize to a single monitor and has some minor usability issues, so you'll probably want to connect to the VM using Remote Desktop with the -span switch. The taskbar will stretch across both monitors, so you'll lose a little screen real estate. I use WinSplit Revolution to "maximize" windows to one monitor or the other. If you run multiple VMs that are hard drive intensive, you'll want to put their virtual hard drives on separate physical hard drives (or use the raw disks for the VMs' hard drives). You also should settle on a single virtualization package for all the VMs running on one host system. If you have VMware VMs and VirtualPC VMs running on the same machine, for example, they'll both compete for the same resources and you'll see significant performance degradation. (I found out just the other day because I had to create a VirtualPC VM for someone while I was trying to work in my VMware VM...I ended up having to take a break while I waited for the one to finish.) If you just have one virtualization package running, it will be able to allocate system resources more efficiently. Right now I have My Documents and some other data folders stored on a network-shared physical drive on the host OS. My ultimate goal is to set up a 64-bit Solaris VM with a ZFS filesystem over a couple of big disks, and redirect all my VMs to store the home directories on that drive, but we'll see if I actually get around to that. Rob

                                        modified on Tuesday, December 2, 2008 3:26 PM

                                        M 1 Reply Last reply
                                        0
                                        • E ensoftrob

                                          I just switched to VMware Server on a 64-bit host with 32-bit and 64-bit Windows XP guests 2 weeks ago. My main reason for switching was that I seem to have 1 or 2 hardware failures a year, and it always takes me a long time to rebuild my workstation just how I like it. With my primary development workstation running in a VM, I can just do a bare OS install on a system, throw VMware on, and I'm ready to go again. I also recently started working on building 64-bit versions of our software, so I need a 64-bit system to test them on. Performance under a VM on the new Athlon 64 X2 5000+ is better than on my previous workstation, a Pentium D 2.8 GHz. As long as you install a 64-bit host OS and at least 4 GB of RAM, you should be able to comfortably host several VMs. So far doing development on a VM is going pretty well for me, but there are a couple of minor gotchas. If you use multiple monitors, you'll have to change your work style a little. The VMware console window will only maximize to a single monitor and has some minor usability issues, so you'll probably want to connect to the VM using Remote Desktop with the -span switch. The taskbar will stretch across both monitors, so you'll lose a little screen real estate. I use WinSplit Revolution to "maximize" windows to one monitor or the other. If you run multiple VMs that are hard drive intensive, you'll want to put their virtual hard drives on separate physical hard drives (or use the raw disks for the VMs' hard drives). You also should settle on a single virtualization package for all the VMs running on one host system. If you have VMware VMs and VirtualPC VMs running on the same machine, for example, they'll both compete for the same resources and you'll see significant performance degradation. (I found out just the other day because I had to create a VirtualPC VM for someone while I was trying to work in my VMware VM...I ended up having to take a break while I waited for the one to finish.) If you just have one virtualization package running, it will be able to allocate system resources more efficiently. Right now I have My Documents and some other data folders stored on a network-shared physical drive on the host OS. My ultimate goal is to set up a 64-bit Solaris VM with a ZFS filesystem over a couple of big disks, and redirect all my VMs to store the home directories on that drive, but we'll see if I actually get around to that. Rob

                                          modified on Tuesday, December 2, 2008 3:26 PM

                                          M Offline
                                          M Offline
                                          Member 96
                                          wrote on last edited by
                                          #54

                                          ensoftrob wrote:

                                          I just switched to VMware Server on a 64-bit host

                                          Which 64bit host? I'm considering Linux as well as Windows since VMWare supports both as host. I'm thinking performance might be better on one than the other with less resources being consumed by the host OS.


                                          "It's so simple to be wise. Just think of something stupid to say and then don't say it." -Sam Levenson

                                          E 1 Reply Last reply
                                          0
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          • Login

                                          • Don't have an account? Register

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Categories
                                          • Recent
                                          • Tags
                                          • Popular
                                          • World
                                          • Users
                                          • Groups