> On which OS/platform is the server running?

Linux Debian (kernel 2.6-smp) and Gentoo (kernel 2.6-smp)

> Is it running in "headless" mode?

Yes (-Djava.awt.headless=true)

> The image has roughly 1500 points which are displayed using a
> symbol stored in a GIF image.

I'm confused by this statement. Are you saying that the original SVG
document is being converted into a GIF image on the server-side? 

No, I'm wrong on this one. The application actually allows us to either output 
the data as an SVG document or as GIF/PNG/JPEG. 

Basically, it's a GIS-based application. We retrieve points on a particular 
area that we want to "mark" with some graphics (for instance hotel, restaurant, 
whatever). In this case we have 1500 points on the generated image.

Images are generated on server-side so if we have 20 clients, we have 20 
running threads generating images.


> How large is the generated image in pixels?

400*400

How do you create the image that the SVG content is rendered into?
Is it something like "new BufferedImage()", or something else?

I don't know. I am very new. I'll have more info tomorrow. The only thing which 
sounds a bit weird to me is that we call Graphic2D.fill a lot of time for a 
single image (~2500 times). I have also turn java2d debugging on and I can't 
see around 50.000 calls (native?)


> JProfiler shows that the 15 threads are blocked most of the times.
> Further investigations show that they need a lock somewhere in
> Graphics2D.drawImage.

Do you have a stack trace or something else that shows which lock is
being used in the call stack? In your subject you mention
Graphics2D.fill(), but here you say Graphics2D.drawImage()...

We have locks on both. JProfiler stacktrace (both the thread having the lock 
and the threads waiting for the lock) on Graphics2D.XXX. The monitor is 
java.lang.Class (?!). I am actually searching for a tool that would provide me 
more detail.

These kinds of applications should scale well to many threads without
blocking, so the answers to the above questions may uncover some
problem in your application.

I think so to. I am just unable to see where I should investigate.

Thanks a lot,

Stéphane
[Message sent by forum member 'stephanenicoll' (stephanenicoll)]

http://forums.java.net/jive/thread.jspa?messageID=188239

===========================================================================
To unsubscribe, send email to [EMAIL PROTECTED] and include in the body
of the message "signoff JAVA2D-INTEREST".  For general help, send email to
[EMAIL PROTECTED] and include in the body of the message "help".

Reply via email to