Virtual PC, a PowerBook, and .NET

by Brian Jepson

Don Box says "Maybe that 17" PowerBook isn't such a bad idea." Here are some hastily scrawled notes on my experiences running .NET apps under Virtual PC on a slightly underpowered PowerBook:



My primary machine is a 12" PowerBook, which is somewhat crippled by a
small L2 cache and a lack of L3 cache (and Connectix strongly recommends
using it on a machine with L3). Still, Virtual PC runs pretty well.
It's nowhere near as fast as VMWare on x86, simply because it has to
re-interpret x86 machine code where VMWare can simply hand it off to the
underlying processor.



Some things are slow; for reasons well over my head, the ngen portion of
the .NET Framework install takes longer than I'd expect. I used to use
VPC on a G3 iBook, and ngen was intolerable. It's not as bad on my G4.
This seems like it could be related to the CPU cache size and speed,
though.



Visual Studio is pretty slow, but then again it's pretty slow on my 600mhz
Pentium III laptop, and I use vim and the command-line compilers anyhow.
So, for most .NET programming, I don't really notice any speed difference
(except the damn SDK documentation, which takes ages to load each
documentation node).



Also, my .NET programming is confined to some hefty batch jobs that use
reflection and XML to emit DocBook source for things like Part IV of C# in
a Nutshell. And to be honest, that app grew organically and
pathologically, and I have lots of ideas for making it run a lot faster
(something as simple as caching all the raw reflection data on disk and rewriting most of it in Perl :-). But it's still a good test of performance, and
with each new release of VPC, this stuff has gotten a bit faster (it used
to be unbearably slow).



I've also done some tests of building Rotor, which may interest you. This
was with the older version of VPC:



http://www.macdevcenter.com/pub/a/mac/2002/11/19/mac_pc.html?page=3



Pretty disappointing numbers, I know, but remember that this was on my old
computer, and with the 5.x version of VPC. My experience has been that
it's quite usable for day to day stuff. I use a second monitor with my
PowerBook, often with VPC in full-screen mode on the right hand side.
It's so cool to just drag my mouse from the PC to the Mac.



I think you should go for it. My guess is that you'll get a *really*
interesting perspective on performance optimization possibilities for .NET
and VS.NET :-)

Have you used Virtual PC on a Mac to do .NET work?


3 Comments

anonymous2
2003-05-18 06:08:44
How about this: VPC 4.0 + .net Server 2003 EE
Just for the fun of I decided to install Windows 2003 Server Enterprise Edition onto Virtual PC 4.0 and see how far I could get with it... To my amazement it worked quite well, allowing me to play with ASP.net quite nicely.


Thanks for the inspiration.



(I was running it on a dual 867 with 512MB assigned to VPC)

anonymous2
2003-06-29 00:04:02
How about this: VPC 4.0 + .net Server 2003 EE
An irrelevent question. I installed Win 2003 Enterprise server on VPC 6. Everything seems to work except sound. What driver should be installed for the emulated SB 16 audio?


Thanks

bjepson
2003-07-10 17:20:57
How about this: VPC 4.0 + .net Server 2003 EE
I'm not sure, but there is some info about audio in Windows 2003 in this FAQ: Unofficial FAQ for Windows Server 2003