Hi all,
I have a C#.net application which uses Oracle as back-end and draws a
complex GUI. I have tried everything I know to reduce the first
startup time such as;
1. Use a preloader to load all dlls at the Windows startup
2. Ngen
3. Rebasing etc;
Now the client asks "If we are using the preloader to load all the
dlls, why is the first startup not as fast as the second startup?"
1. IS there a way to make the first startup not as fast as the second
startup?
2. If not, what is the explanation I should give the client? It is
Japanese client who is very hard to convince ;)
Thanks in advance,
Shaji
Patrick van Dijk - 05 Jul 2007 07:32 GMT
My guess would be (but that is just guessing right), that your
application is using
Oracle resources (e.g certain tables, queries etc), so perhaps Oracle
needs to wake-up.
First time queries are slow, second time Oracle has them cached,
analyzed, data is cached etc...
Another possibility is that your application is using OS resources
like .ini, .config files etc,
which need to be processed (hence loaded into memory from disk).
Running the instance the second time the OS has them cached...
I would certainly have a look at which OS resources your are using
> Hi all,
> I have a C#.net application which uses Oracle as back-end and draws a
[quoted text clipped - 12 lines]
> Thanks in advance,
> Shaji
Alvin Bruney [MVP] - 05 Jul 2007 16:42 GMT
have u traced your app to see where the bottleneck is? (Before applying
solutions)

Signature
Regards,
Alvin Bruney
------------------------------------------------------
Shameless author plug
Excel Services for .NET is coming...
https://www.microsoft.com/MSPress/books/10933.aspx
OWC Black Book www.lulu.com/owc
Professional VSTO 2005 - Wrox/Wiley
> My guess would be (but that is just guessing right), that your
> application is using
[quoted text clipped - 26 lines]
>> Thanks in advance,
>> Shaji
schneider - 07 Jul 2007 00:10 GMT
Your preloader is not running all the same code that is run at start-up is
my guess.
> Hi all,
> I have a C#.net application which uses Oracle as back-end and draws a
[quoted text clipped - 12 lines]
> Thanks in advance,
> Shaji
Chris Mullins [MVP] - 07 Jul 2007 02:04 GMT
The whole problem of code startup vs warm startup is really complex. I wish
I had a good answer for ya.
Vance Morrison, one of the CLR Architects, has blogged about it a fair bit:
http://blogs.msdn.com/vancem/archive/2007/04/09/a-model-for-cold-startup-time-of
-an-application-on-windows.aspx
http://blogs.msdn.com/vancem/archive/2007/04/15/assumptions-used-in-the-cold-sta
rtup-formula-when-is-it-accurate.aspx
http://blogs.msdn.com/vancem/archive/2007/04/15/the-windows-prefetcher.aspx

Signature
Chris Mullins, MCSD.NET, MCPD:Enterprise, Microsoft C# MVP
http://www.coversant.com/blogs/cmullins
> Hi all,
> I have a C#.net application which uses Oracle as back-end and draws a
[quoted text clipped - 12 lines]
> Thanks in advance,
> Shaji
Alvin Bruney [MVP] - 07 Jul 2007 23:56 GMT
very nice read

Signature
Regards,
Alvin Bruney
------------------------------------------------------
Shameless author plug
Excel Services for .NET is coming...
https://www.microsoft.com/MSPress/books/10933.aspx
OWC Black Book www.lulu.com/owc
Professional VSTO 2005 - Wrox/Wiley
> The whole problem of code startup vs warm startup is really complex. I
> wish I had a good answer for ya.
[quoted text clipped - 21 lines]
>> Thanks in advance,
>> Shaji