.NET Tutorials, Forums, Interview Questions And Answers
Welcome :Guest
Sign In
Win Surprise Gifts!!!

Top 5 Contributors of the Month
david stephan
Gaurav Pal
Post New Web Links

Where is ngen.exe?

Posted By:      Posted Date: October 20, 2010    Points: 0   Category :.NET Framework
I tried to call ngen.exe and got nothing. I then ran a search for ngen.exe. I found the executables for .NET 1.1 and 2.0, but nothing for .NET 3.5. I also searched the MSDN site to see if I could find it as a download, but got nothing. I am running VS2008 Professional with SP1 installed. Thanks in advance for any help.

View Complete Post

More Related Resource Links

CLR Inside Out: The Performance Benefits of NGen.


T ypically, methods in managed executables are just-in-time (JIT) compiled. The machine code generated by the JIT compiler is thrown away once the process running that executable exits; therefore, the method must be recompiled when the application is run again.

Surupa Biswas

MSDN Magazine May 2006

Speed: NGen Revs Up Your Performance with Powerful New Features


In the .NET Framework 2.0, NGen has been greatly improved and offers a number of compelling new features to make it easier and faster to deploy high-performance managed applications. This article introduces some of these new features and explains how and when you should use NGen to improve the performance of your apps.

Reid Wilkes

MSDN Magazine April 2005

How to use a .NET language without requiring .NET to be installed? Use NGEN to convert CIL to native

Here's what I've figured out from Wikipedia, and please correct me if I'm wrong: .NET is the original and most popular CLR (although there are other implementations of it, including cross-platform versions like Mono). Visual Studio creates a program containing CIL code that passes that code through the .NET CLR (if installed) to convert it to native machine code that matches the current environment, allowing the program to run on any machine that the CLR will run on (for .NET 4.0, that would be XP SP3 or greater). But the cost of this portability is that the code needs to be converted every time it's run, decreasing load time. So, which one of these paths seems like the best way to go: Keep using .NET and either packaging the framework with my installers or instructing users to install .NET 4.0 if they don't have it. Convert the CIL program to machine code using ngen BEFORE distributing it, so .NET is no longer required. (Is this possible, or would the .NET libraries still need to be installed, defeating the purpose?) Ditch .NET and all its wonderful libraries in favor of a language/compiler (like C++ or maybe C# with some compiler other than VS) that creates native code. (Don't want to do this, but I'm throwing it out there.) Is .NET the way to go? I love the libraries but I don't like that .NET needs to be installed (annoying for XP users and computers th

NGEN.EXE Install assembly

If I have  a.dll that I locate in directory c:\test\a.dll. I successfully run an ngen install of the dll and can see it clearly in an NGEN display, as well as the root section If I copy the dll to another folder .. example c:\test2\a.dll and load the a.dll from this folder, does the machine use the native image cache from my original ngen install. I am guessing it does not as there is no ngen root referernce to c:\test2\a.dll in my ngen display. I have searched the iternet for this answer and am hoping someone here has an opinion, or better yet, an answer.   Thanks ! 

Microsoft .NET Framework NGEN v4.0.30319_X86 not started error in server logs.

Not sure what the correct etiquit is for this. The thread I asked my question in last Friday was previously closed by a moderator, and I suspect that is why it's not getting answered.  Since I posted, there have been enough other people with the same issue posting to push it into the popular thread list. So I'm starting a new thread.  (Not sure what would be a better procedure.) Original thread is here: http://social.msdn.microsoft.com/Forums/en-US/netfxsetup/thread/4cb39c00-b038-45b2-bf38-2016a906570e Here was my question: This service was installed in a recent auto update on my SBS 2003 server and it was installed with automatic startup.  But it just starts up and shuts right back down.  The same occurs on my XP dev machines. Because of that my daily server report is showing: Auto-started Services Not Running Service Name Microsoft .NET Framework NGEN v4.0.30319_X86 Total auto-started services not running: 1 In normal conditions, these services should be running. For details, it is recommended that you review errors in the Event log related to the service.   It's a annoyance to have that in the daily server reports.  (I want to see all green items) Since starting up and immediately shutting down, appears to be the normal behavior for this service. (That's also what it does on XP. And the .net 4 full installation verifies as being

PreCompiled XSLT, ReBase and NGEN


Advanced performance question here.  Here's my scenario:

I have a database that contains thousands of XSLT documents.  One for each page of a website so these translate XML into HTML.  An ASP.NET web server (farm) loads the XSLT documents from the database and uses them to render HTML for each web request.

I've implemented the optimization of using XslCompiledTransform and caching it between database refreshed (every 30 minutes).  I'm looking to notch performance up further by pre-compiling the XSLT to DLLs with xsltc.exe.  This is supposed to eliminate all the Dynamic Method Invocations that XslCompiledTransform creates.

So, I have a separate server writing the XSLTs to files and running through them with xsltc.exe. Takes about 20 minutes but that's OK.  I then drop the DLLs onto each webserver.  Now I can just have the webserver dynamically load the DLLs on an as-needed basis.  Here's the code I'm using to load the assembly into XslCompiledTransform:

byte[] bytes = File.ReadAllBytes(Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "XsltDlls\\" + fileName + ".dll"));
Assembly assembly = Assembly.Load(bytes);
Type type = assembly.GetType(fileName);
XslCompiledTransform compiledTransform = new XslCompiledTransform();

ASP.NetWindows Application  .NET Framework  C#  VB.Net  ADO.Net  
Sql Server  SharePoint  Silverlight  Others  All   

Hall of Fame    Twitter   Terms of Service    Privacy Policy    Contact Us    Archives   Tell A Friend