Infralution Support Forum Index Infralution Support
Support groups for Infralution products
 
 FAQFAQ   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

EvaluationMonitor.FindBaseKey Questions

 
Post new topic   Reply to topic    Infralution Support Forum Index -> Licensing Support
View previous topic :: View next topic  
Author Message
KSoft



Joined: 26 Sep 2006
Posts: 19

PostPosted: Tue Sep 26, 2006 7:13 pm    Post subject: EvaluationMonitor.FindBaseKey Questions Reply with quote

I'm using VB.NET, Visual Studio 2003, Xenocode's Postbuild (for obfuscation, not the "native EXE" stuff), and Infralution 3.2.0.

In trying to debug some performance problems I've been seeing at startup I enabled Postbuild's Code Profiling. Much to my surprise there was a *huge* bottleneck at calls to EvaluationMonitor.FindBaseKey -- on one of the P4 2.4GHz machines here each call took almost 3 seconds! On faster machines it does happen faster but there calls to that method are still taking quite a while..

Is there any reason that would take so long? Other tests inside VMware virtual machines showed the same thing under the OSes XP Home, Pro, and Windows 2000.
_________________
--
- Mitchell
Back to top
View user's profile Send private message Visit poster's website
Infralution



Joined: 28 Feb 2005
Posts: 5027

PostPosted: Wed Sep 27, 2006 5:02 am    Post subject: Reply with quote

This method is used to locate the hidden registry entry used to store the evaluation data. Potentially on a machine which has a very large number of registry entries this could take longer (try using a registry cleaner and see if this improves things). Certainly on our development machines it takes nothing like this amount of time.

We will also take a look at the code and see whether we can do any optimization.
_________________
Infralution Support
Back to top
View user's profile Send private message Visit poster's website
KSoft



Joined: 26 Sep 2006
Posts: 19

PostPosted: Wed Sep 27, 2006 1:13 pm    Post subject: Reply with quote

It seems to take a really long time on virtual machines, too. All that I tested on were brand new installs (I use snapshots to keep machines at their new-install state most of the time).

I'll do some more experimenting and see what I can find - thanks!
_________________
--
- Mitchell
Back to top
View user's profile Send private message Visit poster's website
Infralution



Joined: 28 Feb 2005
Posts: 5027

PostPosted: Sun Oct 08, 2006 11:15 pm    Post subject: Reply with quote

On our test machines this is taking less then half a second in the debugger. I'm guess that on the virtual machines the implementation of the registry functions is for some reason not very efficient.

The FindBaseKey method locates the hidden registry key used to store the evaluation parameters. The registry key used is dynamic (ie it is different for each installation) that means that the EvaluationMonitor has to search a range of keys to find the key containing the data. If you are willing to forgo this extra security you can modify the CreateBaseKey method to use a fixed baseKeyName (instead of generating it). You could then modify FindBaseKey to open that key directly (instead of searching for it).
_________________
Infralution Support
Back to top
View user's profile Send private message Visit poster's website
Display posts from previous:   
Post new topic   Reply to topic    Infralution Support Forum Index -> Licensing Support All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


Powered by phpBB © 2001, 2005 phpBB Group