Forums

 
HomeHomeRoyal TS V 1.xRoyal TS V 1.xGeneral Discuss...General Discuss...Speed of invocationSpeed of invocation
Previous
 
Next
New Post
11/28/2009 2:14 AM
 

First off - brilliant program ! I've long enjoyed the Remote Desktops function provided by the server tools for 2003/8 but, the latest RSAT Remote Desktops pushed me over the edge with it's lack of grouping, naming and other oddities. Royal TS solves all of these and more ! Thanks !

However, my machine is no slouch - it's got 8Gb of RAM, dual proc, eSata Gen 2 disks and runs Win7 x64.

I'm just wondering what RTS is doing when it starts up. After a double-click to start it's ~4 seconds before it's ready to work. I know that doesn't sound much but, hey, I'm used to "instant on" !! Being constantly in and out of programs all day this would become an irritation. I'll definitely live with it because of everything else RTS brings - but if it could be sped up in any way I'd be intrigued to know (it's not the AV - I've already allowed the app through that as a trusted process).

Thanks!
Mike

 

 
New Post
11/28/2009 12:14 PM
 

Hi Mike,

thanks for the feedback. I too noticed a delayed startup on x64 systems compared to x86 - not much but application startup feels a bit slower on 64 bit.

I briefly looked into some application traces and it seems that loading and JITting the assemblies needed by Royal TS is causing the delays. Royal TS depends on some UI libraries (Krypton, DevExpress Datagrid and a 3rd party tree view) which put on a little overhead here.

Theoretically there's the possibility to precompile these assemblies (using NGEN) for the user's platform but I haven't really tested it (yet). I'm afraid that precompilation may cause more trouble than improvement.

cheers,

Stefan


Stay in touch with code4ward.net:

Subscribe to our Blog RSS FeedFollow us on TwitterLike us on FacebookOur Google+ page
 
New Post
11/28/2009 1:31 PM
 

Hi Stefan

Thanks for the detailed response. If you get anywhere with testing or need someone to beta test it then please do let me know - happy to help test it out for you!

Regards
Mike

 
New Post
11/28/2009 1:51 PM
 

Hi Stefan

Well, I went ahead anyway and ngen'd the app - and the total time drops by 75%, now loads in just under 1 second ! And, so far, no issues - everything still continues to work as expected. Will let you know if anything has broken but all seems good !

Regards
Mike

 

 
New Post
11/28/2009 2:27 PM
 

That's great news, Mike! Can you share the exact steps what you did, so that others (myself included) can play around and test it? If this is reliable and has no side effects, I might append the ngen-ing at the end of the installer...

cheers,

Stefan


Stay in touch with code4ward.net:

Subscribe to our Blog RSS FeedFollow us on TwitterLike us on FacebookOur Google+ page
 
New Post
11/28/2009 2:34 PM
 

Sure, I simply created a cmd file in c:\tmp\ as so:

C:\Windows\Microsoft.NET\Framework64\v2.0.50727\ngen install "C:\Program Files (x86)\code4ward\Royal TS\rtsapp.exe"

Then, simply open a cmd prompt as Admin (it won't work unless you are an administrator - which may affect your ability to add this to the installer?) just let it run! I watched as all the dll's were pre-compiled and placed into cache. You can find these after just by searching for rts*.* from the root.

This is detailed here : http://msdn.microsoft.com/en-us/library/6t9t5wcf(VS.80).aspx 

Regards
Mike

 
New Post
11/28/2009 2:37 PM
 

I see, you just ngened the main assembly. Very interesting that you get this performance boost. I suspected you also need to ngened the other assemblies...

I will play around a bit with this...

Thanks!


Stay in touch with code4ward.net:

Subscribe to our Blog RSS FeedFollow us on TwitterLike us on FacebookOur Google+ page
 
New Post
11/28/2009 2:39 PM
 

Hi Stefan

It actually searches for those and does them as well. It doesn't do just the main assembly.

Regards
Mike

 
New Post
1/18/2010 12:09 PM
 

Very nice Mike, thanks.

 

I tried that too and it has definitely sped things up on my Win7 x64 machine with 3GB RAM.

 

I got the following error at the end of the NGEN but it still seems to be running fine:

WARNING: Cannot hardbind to System.Core, Version=3.5.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 because depen
dency does not have a native image (check FusLogVw for reason)
RoyalDocument, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null

 
New Post
7/15/2010 7:40 PM
 

Unfortunately this doesn't work with v1.6.9 and v4.0 of .NET despite it being required... recompiled back to v2.0 and it was fine again...

07/15/2010 19:32:33.642 [4824]: 1>    Compiling assembly System.Design, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a (CLR v4.0.30319) ...
07/15/2010 19:32:34.968 [4824]: 2>Error compiling C:\Program Files (x86)\code4ward\Royal TS\rtsapp.exe: An attempt was made to load a program with an incorrect format. (Exception from HRESULT: 0x8007000B)
07/15/2010 19:32:34.983 [4824]: 2>Ngen failed to generate native code for image C:\Program Files (x86)\code4ward\Royal TS\rtsapp.exe because of the following error: An attempt was made to load a program with an incorrect format. (Exception from HRESULT: 0x8007000B)
07/15/2010 19:32:34.983 [4824]: 2>Ngen will retry compilation of image C:\Program Files (x86)\code4ward\Royal TS\rtsapp.exe
07/15/2010 19:32:35.030 [4824]: 2>    Compiling assembly C:\Program Files (x86)\code4ward\Royal TS\rtsapp.exe (CLR v4.0.30319) ...
07/15/2010 19:32:39.055 [4824]: 2>Error compiling C:\Program Files (x86)\code4ward\Royal TS\rtsapp.exe: An attempt was made to load a program with an incorrect format. (Exception from HRESULT: 0x8007000B)
07/15/2010 19:32:39.055 [4824]: 2>Uninstalling assembly C:\Program Files (x86)\code4ward\Royal TS\rtsapp.exe because of an error during compilation: An attempt was made to load a program with an incorrect format. (Exception from HRESULT: 0x8007000B)
07/15/2010 19:32:43.969 [4824]: 1>System.Design, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
07/15/2010 19:32:47.448 [4824]: An attempt was made to load a program with an incorrect format. (Exception from HRESULT: 0x8007000B)
07/15/2010 19:32:47.448 [4824]: ngen returning 0xffffffff

 
Previous
 
Next
HomeHomeRoyal TS V 1.xRoyal TS V 1.xGeneral Discuss...General Discuss...Speed of invocationSpeed of invocation


spacer
dummy