tags:

views:

439

answers:

6

we have a number of winforms apps that are written in dotnet 2.0. are there any performance upgrades that we would expect when moving to 3.5 runtime. Any particular benefits besides the language features

+5  A: 

There are probably a few minor performance improvements and bug fixes but the biggest benefit would be the improvements you can gain from the new language features. You can also take advantage of the .NET Client Profile install for your client applications, which is essentially a subset of the .NET Framework that includes the bits that are most relevant to client client applications, which means a smaller download/install size.

Scott Dorman
3.5 client profile is still larger than 2.0 full install.
Joel Coehoorn
+5  A: 

There are performance enhancements with appdomain startup time (assembly loading), networking, drawing and presentation, and threading to name a few.

Rex M
A: 

As far as I understand, the changes from .NET 2.0 to 3.5 are mostly focused on additions to the .NET 2.0 library, somewhat of an addon pack rather than a new framework version (not to diminish the many additional features you receive). As such, I would assume that you would only see minimal at best speed increases, perhaps from minor updates to the framework. This all assumes that you stick with winforms and your current code base. As always, changing code results in an entirely different ballgame!

Good luck!

Gregory
A: 

The 3.0 and 3.5 language features run on the core .NET 2.0 runtime. They are essentially library upgrades. You should notice no difference in performance.

Jim
They are additive (layer cake) on top of the .NET 2.0 CLR but they also introduce service packs to .NET 2.0 and 3.0, respectively.
Scott Dorman
+2  A: 

I get about a 10x performance increase on a simple app I wrote that makes heavy use of GetPixel() on drawing surfaces. I can't be sure it was the framework, because the comparison was across two machines, but they were similar.

recursive
I have also benefited from the GetPixel fix...in fact we had raised a bug with MS for that.
Sesh
Umm. If I recall correctly performance characteristics of Set/GetPixel, they are horrible and 10x enhancement is.. poor. I know it's a pain to get all the byteweights tested, but locking the data and accessing it as array gave me a way faster access.
Pasi Savolainen
A: 

The actual 3.5 framework won't make much of a performance difference. In many respects, it's just another library.

What will make a difference though is that the 3.5 framework requires CLR 2.0 SP1. SP1 has a number of performance improvements that will impact your application. Or 2.0 SP2 if you choose to use 3.5 SP1.

Here is a blog entry on some of the performance impromevents in CLR 2.0 SP2: http://blogs.msdn.com/clrcodegeneration/archive/2007/11/02/how-are-value-types-implemented-in-the-32-bit-clr-what-has-been-done-to-improve-their-performance.aspx

JaredPar