How much physical memory is on your testing machine? I have a few Trinidad applications in production and don't see any of the performance issues you are having.
-Richard On Fri, Jan 8, 2010 at 12:33 PM, Jan-Kees van Andel < [email protected]> wrote: > I'm not sure, but I doubt the mailing list supports attachments. > Maybe you could provide a link to some image hosting site? > > My first thought, reflection is darn cheap, especially since Java 5 > and even more since Java 6. I'm no IBM JVM specialist, but I don't > think there are major differences with HotSpot... Compared with SQL > queries, backend transactions, web service calls, etc. reflective > method invocations really don't make a difference. > > Having said that, what kind of application are you testing? Does this > application have any I/O, locking or other expensive things that may > be the cause of the CPU-time imbalance? > > Also, what kind of load are you simulating on your application? Long > sessions with not much users? Lots of short sessions? Hyperactive > users without any pauses? > > /JK > > Ps. How did you configure your profiler? Sampling or > tracing/instrumentation? Although I don't think it makes a difference > in this case, sampling is less accurate... > > > 2010/1/8 Ravi Kapoor <[email protected]>: > > > > The actual call to getter method is only using 2% CPU. Rest 38% is being > > used within trinidad classes. > > I am attaching two screenshots to give you more details. > > > > In first screenshot, you can see at the top left corner, total CPU units > > taken by getProperty are 32391 > > getProperty calls javax.faces.el.ValueBinding.getValue which calls > > org.apache.myfaces.el.PropertyResolverImpl.getValue which calls > > org.apache.myfaces.el.PropertyResolverImpl.getProperty which calls > > java.lang.reflect.Method.invoke. > > > > In second screenshot you can see that Method.invoke is using only 1781 > units > > of CPU. Rest of the time is being spent within trinidad classes. > > > > Does this help? Also the rest of trinidad using 45% CPU usage is also > highly > > concerning. > > > > Thanks > > Ravi > > > > > > On Fri, Jan 8, 2010 at 1:47 PM, Jan-Kees van Andel > > <[email protected]> wrote: > >> > >> Hey, > >> > >> Is it possible that the getProperty indirectly invokes some expensive > >> computation? For example, do you have lots of logic inside your > >> getters? > >> > >> Regards, > >> Jan-Kees > >> > >> > >> 2010/1/8 Ravi Kapoor <[email protected]>: > >> > Hi Matthias, > >> > > >> > Here are the details: > >> > > >> > Server: Websphere 6.1 > >> > > >> > Trinidad version: 1.0.7 (We cant upgrade to 2.0 until we upgrade > >> > websphere > >> > which will happen in due course. Even then if this issue has not been > >> > addressed, the problem may exist in 2.0 as well.) > >> > > >> > OS: Windows (Even though I am measuring numbers on windows but I do > not > >> > think this is OS specific) > >> > > >> > > >> > Let me know if you need to know anything else. > >> > > >> > Regards > >> > Ravi > >> > > >> > > >> > > >> > On Fri, Jan 8, 2010 at 1:09 AM, Matthias Wessendorf > >> > <[email protected]>wrote: > >> > > >> >> Hello Ravi, > >> >> > >> >> some more background would be good, e.g. what version of Trinidad > etc. > >> >> > >> >> -Matthias > >> >> > >> >> On Thu, Jan 7, 2010 at 11:25 PM, Ravi Kapoor < > [email protected]> > >> >> wrote: > >> >> > Has anybody done performance tests on trinidad application. I have > an > >> >> > application and it appears that it is taking 80-90% of CPU in my > >> >> > application, thus killing performance. > >> >> > > >> >> > We ran load tests and our CPU went to 100% usage. At this point we > >> >> measured > >> >> > how much time was being taken by each class/method. Here are some > >> >> > interesting figures: > >> >> > > >> >> > CPU usage by all Trinidad + myfaces classes = 80-90% > >> >> > Myfaces CPU usage (without trinidad) = 8% (which implies trinidad > is > >> >> taking > >> >> > 70-80% of CPU) > >> >> > Total time taken by one method > >> >> > (org.apache.myfaces.trinidad.bean.FacesBeanImpl.getProperty) = 40% > >> >> > > >> >> > Can anybody confirm that they have seen this behavior? > >> >> > Or if somebody can confirm that this does not happen in their > >> >> > performance > >> >> > tests, that should help too. > >> >> > > >> >> > Thanks > >> >> > Ravi > >> >> > > >> >> > >> >> > >> >> > >> >> -- > >> >> Matthias Wessendorf > >> >> > >> >> blog: http://matthiaswessendorf.wordpress.com/ > >> >> sessions: http://www.slideshare.net/mwessendorf > >> >> twitter: http://twitter.com/mwessendorf > >> >> > >> > > > > > >

