In my last attempt to stress the JavaFX platform, I ported the Strange Attractor demo/benchmark. Different from JavaFX Balls, this is not scenegraph-driven animation, but old-school "pixel by pixel" drawing… still, makes for another batch of interesting findings, including a few issues in the JavaFX Script language and its compiler, and other topics like fractal maths, BigDecimal...
on Oct 29, 2009
Sun just released the first maintenance update for JavaFX 1.2. This release brings mostly a batch of important javafxc fixes, that I dissect in this blog...
Java programmers are used to the fact that compilation of Java source code is a relatively straightforward process, because the Java language has a simple mapping to the Java bytecode. So javac is a trivial compiler, at least in the code...
on Sep 9, 2009
This blog entry describes how WebSphere eXtreme Scale uses memory. This allows customers to better size how much memory they need when storing a large number of key value pairs in a grid.
The text is in my personal blog at this link.
on Oct 28, 2009
Avid readers of the glassfish aliases know that we are frequently asked questions about why their server isn't responding, or why it is slow, or how many requests are being worked on. And the first thing we always say is to look at the jstack output.
So you're running on a Sun 5120 with 128 hardware threads and so you have 368 request processing threads and the jstack output is 10K lines. Now...
on Oct 16, 2009
I upgraded my laptop OS to Karmic Koala (Ubuntu 9.10) beta version to play with new features and capabilities provided in this release.
Out of habit or whatever I am using 32 bit version of the OS both on the laptop and desktop (both are 64 bit) and I rather prefer to stay with 32 bits as some application sucks on 64 bit (are they still suck?). Well in previous versions I replaced the kernel with...
on Oct 13, 2009
During the JVM Summit, I was doing some tests for
my presentation with the latest
when I've seen some *BIG* performance improvement between jdk7 b71 and jdk7 b72.
A quick look to the summary of changes, hum,
Escape Analysis is now enabled by default.
On my tests, I got a 3x improvement, Wow !
With a quick micro-benchmark, it's even better, as always :)
on Oct 6, 2009
Here is a review of some concurrency tips from Joshua Bloch, Brian
Goetz and others.
Prefer immutable objects/data
Immutable objects do not change after construction. Immutable objects
are simpler, safer, require no locks, and are thread safe. To
make an object immutable don't provide setters/mutator methods, make
fields private final, and prevent...
on Sep 17, 2009
Apache JMeter is an open source tool that can be used to measure the performance of Java applications. The JMeter can be used to test a wide range of Java applications like web, EJB, web services etc. I am not going to elaborate more on this, and you can get more information about this from the Apache JMeter website at http://jakarta.apache.org/jmeter/
The JMeter can also be extended, to create...
on Dec 9, 2008
I am working for a customer, doing some performance review for their java application and tuning glassfish as well.
They use linux 64 bits (kernel 2.6.18 SMP), glassfish v2 u2 and JDK 5 u12. At some point I needed to generate a heap dump to better understand the object allocation and if possible some hints as to where to look for optimization for the application.
Now the big problem, I could not...
on Oct 1, 2008
There is a wiki site at Sun, about HotSpot Internals, with valuable information to people who wants to better understand HotSpot but don't have the proper time to dedicate to such good reading of HotSpot source code.
As an example, there are tips about how to optimize Java code to the best and how HostSpot sees it
on Aug 20, 2008
You can see my presentation about Tools and Tips to Diagnose Performance Issues on-line or download it.
It was great, because the room was almost full, people keep taking pictures, looks like the topic was interesting.
Some people asked questions at the end, where I want to answer here, to a broad audience.
All of them are hard questions. As there is no recipe to answer them.
Q.1) What is...
on Jun 25, 2008
week I am heading up to the northern hemisphere to join a
crowd of Java professionals and enthusiasts to participate to Jazoon
Tools and Tips to Diagnose
Performance Issues is the session I am going to
share tips and tools to help diagnose performance issues on Java
applications. Some of them are heap and thread dump analysys,
on Jun 13, 2008
I was working on a kind of Outlook entirely based on the web and written 100% in Java. I was part of a team responsible for maintaining that application for thousands of users and performance was a critical piece. Actually, still is a critical piece because the application still exists and it is there for almost ten years.
I joined the team after the application has been released and being used...
on Apr 28, 2008
If I ask someone else what a Jazooner is, probably they could think it is a character from Klingon, right ?
But for the people at Zurich organizing such a java international conference, it is a place for learning, sharing, talking about Java and meet good professionals. I am proud to be part of the show.
My session Tools and Tips to Diagnose Performance Issues, is scheduled at June, 24 at 5:30pm...
on Apr 12, 2008
As a performance engineer, I'm often asked which X is faster (for a variety of X). The answer to that question always depends on your perspective.
Today, I'll talk about the answer in terms of hardware and application servers.
People quite often measure the performace of their appserver on, say, their laptop and a 6-core, 24-thread Sun Fire T1000
and are surprised that the cheaper laptop can...
on Apr 1, 2008
Recently, I've been reading an article entitled
The Fallacy of Premature Optimization by Randall Hyde. I urge everyone to go read the full article, but I can't help
summarizing some of it here -- it meshes so well with some of my conversations with developers
over the past few years.
Most people can quote the line "Premature optimization is the root of all evil" (which was
popularized by Donald...
on Feb 25, 2008
I've written several times before about how you have to measure performance to understand how you're doing -- and so here's my favorite performance stat of the day: New York 17, New England 14.
on Feb 3, 2008
I spent last week working with a customer in Phoenix (only a few weeks before the Giants go there to beat the Patriots), and one of the things we wanted to test was how their application would work with the new in-memory replication feature of the appserver. They brought along one of their apps, we installed it and used their jmeter test, and quickly verified that the in-memory session...
on Jan 22, 2008
One connection good.
Then two connections better.
Or maybe not so.
on Dec 17, 2007
The refcard discuss the following items:
The BDB Family : An introduction to different DBD family members, including BDB Base Edition, BDB XML edition and BDB Java Edition with tables comparing their features.
Key Features: Key features of BDB family members and BDB Java Edition exclusive features are explained here
Introducing Berkeley DB Java Edition includin:
Installation: How to...
on Sep 1, 2009