Has the time come for development on a virtual machine?
-
You require an OS license and activation for the VM just like a regular machine. I have an msdn subscription so it's not a big deal, you just make the virtual machine, install the OS, activate it and no problems unless you change something fundamental about the virtual machine like the amount of memory allocated to it or disk size in which case activation is required again just like when you change hardware on a physical machine.
"It's so simple to be wise. Just think of something stupid to say and then don't say it." -Sam Levenson
-
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 guess it depends on the kind of development you do. For example, as far as I know, virtual machines do not emulate GPUs. So it is kind of dead for serious game development, or image processing. In a way this is a pity, as graphics cards are already 128 bits, 256 bits or even more, with massively parallel capabilities. Sooo, once again software is lagging behind hardware...
-
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 am - I have a Mac, and I develop on a VM running XP. It's brilliant.
Christian Graus Driven to the arms of OSX by Vista.
-
I am - I have a Mac, and I develop on a VM running XP. It's brilliant.
Christian Graus Driven to the arms of OSX by Vista.
ROTFL!! LMAO!! :laugh: :laugh: :laugh: Now that's a good one! I'll take the multilingual version... (with both eastern and western languages)
-
I guess it depends on the kind of development you do. For example, as far as I know, virtual machines do not emulate GPUs. So it is kind of dead for serious game development, or image processing. In a way this is a pity, as graphics cards are already 128 bits, 256 bits or even more, with massively parallel capabilities. Sooo, once again software is lagging behind hardware...
Best point in this thread. In addition, you can also forget any serious perf work on it. And they are quite unlikely to 'split-up' or emulate work until 2012 at the very best. MS cannot even get its act together on speeding up 2.0 graphics apps hardly a VM.
-
Best point in this thread. In addition, you can also forget any serious perf work on it. And they are quite unlikely to 'split-up' or emulate work until 2012 at the very best. MS cannot even get its act together on speeding up 2.0 graphics apps hardly a VM.
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...
-
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
that is exactly what I did, although main dev is native and past dev and alt platforms are in VMs. All my support for VC6 is only through VMs work and home.
_________________________ Asu no koto o ieba, tenjo de nezumi ga warau. Talk about things of tomorrow and the mice in the ceiling laugh. (Japanese Proverb) John Andrew Holmes "It is well to remember that the entire universe, with one trifling exception, is composed of others."
-
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 do my daily development work in virtual machines. Virtual PC hardware acceleration is totally sweet. I use a quad core rig with 8GB of memory and Vista x64, and couldnt imagine moving to anything else. I also use 4 hard drives in raid 1+0 to get over teh increased disk traffic from running so many OSes In fact i have a whole test virtual ecosystem that I launch for real bug hunting. 2 Win2k3 Servers(one Domain controller, one SQL Server) and 1 Xp client machine. It also makes testing for different browsers or OS's a dream. although all my learning and wpf work still gets done on my host machine, most of my other development gets moved to the vms.
DrewG, MCSD .Net
-
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'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. :)
-
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
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.
-
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
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
-
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 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)
-
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
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 :(
-
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
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
-
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...
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
-
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
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
-
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
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.
-
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
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.
-
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
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
-
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 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.