How to limit PC performance to test software - performance

I am developing a .NET application, and have the luxury of doing this on a fairly powerful desktop PC. I want to ensure it runs okay on PCs with much lower spec, but I don't have spare machines kicking around and can't really afford to buy them. Is there any way to simulate a lower-spec PC on my current PC, to get a feel for how the software might run?
Any help or advice would be very much appreciated.
*My PC is Windows 7 Ultimate 64-bit with 8-core Intel i7 and 16GB RAM.

You could install VMWare and install any OS you want, with any hardware specs you want, provided that they don't exceed your current working hardware of course.
Keep in mind that VMWare is just a virtualization layer. It emulates an OS but you are still running your code on the same i7.

http://www.asp.net/mobile/device-simulators Here is an example of several Visual Studio plug-ins that emulate devices. You can also install Windows 8 and run hyper-v. It's great for this kind of thing.

Related

Running windows under virtual box for software development - performance issues?

So I have a question about what system I should use to do some C# development. In my course this year at least half of my courses require me to be using Windows specific programs i.e visio, MSSQL, C# etc. I know there are alternatives but I would like to stick to these. I'm wondering about two choices and wanted to know what people could suggest - I am more concerned with performance issues. I have a Macbook Pro and I could run windows 7 on it under virtualbox where I could give it 4gb of ram. Remember I would need windows open a lot with potentially multiple programs running. I also have a desktop gaming rig from a year ago which is much more grunty and am contemplating just using that instead where I could run windows natively. I would prefer to use the mac, but really what I wanted to know is if anyone else uses windows under vb with 4gb of ram dedicated to it with no performance issues?
It depends on what type development do you want to do ? If you will develop desktop,web,console application 4gb ram will work fine for you but if you develop mobile projects or games it will be a problem future times. I have co-worker friend who using MacBook Air and developing C# programs he is using two OS one of them is orginal MacBook OS other one W8 if you have 2 section HDD you can create another OS on your notebook. I think best solution for this stuiation is setup Windows 8 to your computer.

XNA Windows Phone Simulator on 'Mac-Windows' vs. regular Windows

I installed my .net stuff recently on a Mac, i.e. preinstalled a version of Windows 7 before using Bootcamp. Does anyone have an explanation, why the Windows Phone 7 Simulator is so slow, compared to a Simulator installed on a 'regular' Windows system when deploying a target onto it?
Performance overhead might be caused because of the non-nativity of the hardware platform you are running it on. The emulator itself has a set of requirements - if these aren't met then you should expect serious drops in performance and stability (in case it starts).
When you're comparing the performance "Regular Windows", do you mean on another machine (PC)? If so, it could be down to hardware differences - (Graphics card, processor speed, less RAM, slower hard disk).
It could also be down to drivers - I don't know much about the Mac hardware, but it's possible Windows drivers aren't as good for hardware that's more commonly used by Macs.

Building a dedicated visual studio 2010 virtual machine, which path has least resistance?

I'd like to ask anybody who has built a virtualized VS2010 environment in VirtualBox or VMware, which one was able to work out of the box without too much tweaking? Or both need workarounds to get stuff working?
Both are fine as long as you install the respective tools and drivers provided for the guest OS
If you're using VMWare Workstation, you can leverage even more out of the environment by installing Visual Studio on the Host PC, and using the Guest VM for debugging, if your application crashes you can actually rewind back to before the crash and step through your code with the same heap and stack before it crashed!
Basically, I suggest going with VMWare Workstation. It's pretty cheap (assuming you get paid to program) and has many, many awesome features that you'll come to love. If you're a hobbyist/student programmer however, you'll likely find VirtualBox to be a little more functional than the free VMWare Player.
As far as performance goes, Intel and AMD both have shipped chips with hardware virtualization since 2005/2006 respectively. This is called VT-x or AMD-V, and often has to be enabled in the bios on older machines.
Basically this means that your BIOS handles Memory and I/O virtualization on this chip, while specialist drivers (e.g. VMWare Tools) are installed to improve graphics and mouse performance - effectively this means the resulting VM has near native performance with minimal overhead.
Hope that helps!
You can work with a VS2010/Windows virtualized environment with no problems.
I've worked with such combination and I had no problems. Both VMWare and VirtualBox are stable so far since years and Windows OS virtualization works properly.
Obviously, you can have performance loss, because a virtualized OS has more bottle necked access to resources than a host one, but current CPUs from Intel and AMD have advanced virtualization instruction extensions which accelerates virtualization operations.
So... Just go ahead!
I don't know your requirement but there is also a great alternative using Win 7.
You can create a vhd file and boot on the vhd file.
A few steps more, you can create a base vhd file with everything you need, mark it as readonly and create as many differential disk as you want.
The drawback of this method are these ones :
it's a bit tricky to create the base and diff disk, because you have to do it in the setup console of windows setup (but google can help you)
there is a small performance impact on the disk I/O (but lower than the visualization environment)
you can run only one system at a time. In fact, nothing disallow you to install a virtualization software
you can't have your "host" and it's potential tools (corporate email, etc.)
but at least, the performance will be greatly better than a virtualization software.

Is the Oct 2010 Macbook Air able to run WP7 tools with GPU recognition?

Pretty much as the title says, using bootcamp.
WDDM1.1 compliance and GPU recognition confirmed by the WP7 emulator running with EnableFrameRateCounters showing.
I'm considering a Macbook air as a compromise to resolve a need to access iphone dev tools and upgrade my Win7 mobile capability to something reasonably performant with one device.
My current laptop barely runs Win7 and borders on unusable for WP7 tooling hence the interest to try and solve two problems with one device - if realistic.
I assume if the device can run WP7 tools satisfactorily, it would be capable of anything else I might want to do when booted under Win7.
The new MacBook Airs do not have very powerful processors. The 11" maxes at 1.66 Ghz, while the 13" maxes at 2.13 Ghz. However, they do have the same GPU as the current 13" MacBook Pro. Also, since they use solid state drives, data access is significantly faster. Overall, it will not be the fastest computer you've used, but it should be enough to work.
I've bought one, but since it's going to the wife, I won't be able to test it in depth.
Instead, the MacbookPro 13" from '09 works fine (monoTouch+iOS dev and bootcamp to vstudio+wp7 dev). I upgraded to 4 gigs memory and that helped, also the disk is slower than I'd like. It responds like a mid-grade desktop, imo.
The problem I see is that the processor on the air's is ULV with a really slow clock, also the sdd in the base version is only 64g which is going to be cramped, I think.
Consider this: many Mac gamers install Windows with bootcamp just to have better gameplay experience.
That's because Windows have native access to the GPU through bootcamp.
http://www.mth.kcl.ac.uk/~shaww/web_page/grid/macgpu.htm (2009 article)
http://www.gpgpu.org/forums/viewtopic.php?t=3766&highlight=bootcamp (2007 article)
So the answer is yes.

Virtual PC high CPU usage problems

I run VPC 2007 on my Vista business laptop with 4 gig RAM. I use VPC to run windows XP and maintain a VS2003 web project. At first everything was great. I assigned the VPC 512MB and did my work as usual. I also run Resharper and Visual SVN. Lately, the act of scrolling in a page causes the CPU to spike above 50, sometimes near 100. This freezes my machine occasionally and is frustrating. Typing code sometimes does the same thing.
I have experimented with changing allocated memory, disk space, turning on/off the paging file, uninstalling ReSharper and Visual SVN. There should be no reason this thing is slow with all the memory I have on this laptop! I don't have anything running on it but VPC at any one time.
I'm wondering if I should just install VS2003 on my Vista machine and deal with any incompatibility problems.
Any suggestions?
Try VirtualBox.
VirtualBox is a family of powerful x86
virtualization products for enterprise
as well as home use. Not only is
VirtualBox an extremely feature rich,
high performance product for
enterprise customers, it is also the
only professional solution that is
freely available as Open Source
Software under the terms of the GNU
General Public License (GPL).
If it were me, I'd run the VS.NET 2003 IDE on Vista natively. Just check out this page with the problems you might have:
http://msdn.microsoft.com/en-us/vs2005/bb188244.aspx
As far as your CPU goes, it could be a video driver/display issue. Have you tried turning Aero Glass on/off on your vista machine to see if that changes things? Are your number of colors for your desktop the same both in the VPC and on your host? Have you updated your video drivers recently?
I recommend VirtualBox. Every time I use VPC I soon give up because the performance is terrible. I run VirtualBox with a Vista virtual PC allocated 1.5gb ram and it runs really well. In fact I don't really notice much slow down from running natively.
First thing I'd suggest doing is run Process Explorer and Process Monitor to find out whats really eating the cpu. If it used to run fine, switching to another VM might not fix anything.
I'd bet VisualSVN is the problem. I had the same problem on a dual-core system with 6GB of RAM. I eventually just uninstalled it because it kept crashing the IDE.
BTW, I'm running Server2003 64-bit.
You probably have VPC07 runnning the active vhd at maximum speed. Go to options on the console menu and change this setting to divide CPU time equally among all vhd's and your problems will disappear!

Resources