How could I know if I am running a NGEN'ed image?


after ngen'ed program , run it, found there no change on memory cost , running speed. doubt if still running old version(not ngen'ed) of program. how can run ngen'ed image directly? or how can know if running ngen'ed image?

thanks!

there no way run directly, think, nor of determining if can run. ngen makes difference if managed assemblies huge, , commonly shared dlls. how big they?

if have profiled , found jit time insignificant, make no difference.

here article ngen:

http://msdn.microsoft.com/msdnmag/issues/05/04/ngen/default.aspx

and describes when may useful (very rarely):

http://msdn.microsoft.com/library/en-us/dnpag/html/scalenetchapt05.asp

in particular, read section titled "scenarios limited or no sharing should not use ngen.exe", explains why large, shared dlls can benefit. stand-alone exes benefit.


.NET Framework  >  Common Language Runtime Internals and Architecture



Comments

Popular posts from this blog

Azure DocumentDB Owner resource does not exist

job syspolicy_purge_history job fail in sqlserver 2008

Trying to register with public marketplace error with 'Get-AzureStackStampInformation'