Warning: I may have misunderstood the issue completely. If there is a list (or any other collection) maintaining the set of value classes, it stands to reason that it is synchronized for use in a multithreaded environment, and the contention for its lock may very well cause a performance hit. If a lookup using this list is necessary for distinguishing between constant and non-constant hash codes, I don't see how caching a constant hash code may improve the situation.
-W On 03/01/2013, Henschel, Joerg <[email protected]> wrote: > Yes, we (Software AG) have a source license, so it'd be great if you could > provide a patch for this. > > Thanks! > > Jörg Henschel > Director Research & Development > > Email: [email protected] > Phone: +49 341 49287-700 | Fax: +49 341 49287-01 > > itCampus Software- und Systemhaus GmbH | a Software AG Company > Nonnenstrasse 37 | 04229 Leipzig | Germany | http://www.itcampus.de > Amtsgericht Leipzig HRB 15872 | Managing Director: Guido Laures > > > > -----Ursprüngliche Nachricht----- > Von: [email protected] [mailto:[email protected]] Im > Auftrag von Friedman-Hill, Ernest > Gesendet: Dienstag, 18. Dezember 2012 19:50 > An: jess-users > Betreff: Re: JESS: [EXTERNAL] Jess in a multithreaded environment > > Are you adding non-value classes to the list yourself, or is this just with > the small number of default listings? > > This method will get called when you evaluate the hash code of a Java object > in the Rete memory; this will happen often during pattern matching. There's > actually enough room to cache the hash code in the members of the Value > class that are unused for Java object values, so we could try that as a > performance improvement. Do you have a source license, so I could send you > a patch to try? > > From: <Nguyen>, Son Nguyen > <[email protected]<mailto:[email protected]>> > Reply-To: jess-users > <[email protected]<mailto:[email protected]>> > Date: Thursday, December 13, 2012 11:04 AM > To: jess-users > <[email protected]<mailto:[email protected]>> > Subject: JESS: [EXTERNAL] Jess in a multithreaded environment > > > > Hi Jess experts, > > We use Jess in a multi-threaded environment and have experienced some > performance degradation when going from a single thread to multiple > threads. > > Our implementation uses the Slot Specific feature. > > Using a Java profiler, HashCodeComputer.isValueObject() stood out as one of > the main contributing factors, if not the most likely, to the degradation > > > > -------------------------------------------------------------------- > To unsubscribe, send the words 'unsubscribe jess-users [email protected]' > in the BODY of a message to [email protected], NOT to the list > (use your own address!) List problems? Notify [email protected]. > -------------------------------------------------------------------- > > -------------------------------------------------------------------- To unsubscribe, send the words 'unsubscribe jess-users [email protected]' in the BODY of a message to [email protected], NOT to the list (use your own address!) List problems? Notify [email protected]. --------------------------------------------------------------------
