Performance difference between THREADED_REDRAW and DIRECT_REDRAW mode

Technote (FAQ)


Question

What is the performance difference between THREADED_REDRAW and DIRECT_REDRAW mode?

Cause

THREADED_REDRAW will stack the repaint requests. The repaint requests will be enqueued for the AWT/Swing Event Queue thread which is processed asynchronously. This mode shows good performance in the amount of CPU utilization on behalf of the redrawing, but at the cost of some performance in the delay between a redraw request and the actual change on screen. It is impossible to overload the CPU with redraw requests because the slower the painting gets due to complex graphic objects, the more repaint request are merged and thus time is saved.

DIRECT_REDRAW does the opposite. It optimizes the performance in the delay between a redraw request and the actual change on screen, but at the cost of performance in the amount of CPU utilization on behalf of the redrawing. This mode is very useful in animations and multithreaded situations where the AWT/Swing EventQueue thread is blocked for a long time. Where as in THREADED_REDRAW mode when this thread is blocked, repainting is kept on hold leading to poor performance in the delay between a redraw and the actual change on screen. However, the drawback is that you have to ensure that there are not too many repaint requests because this could overload the CPU making your application not as responsive.

Note: You can switch the mode by calling the setRedrawMode(int mode) method of IlvManagerView. The default mode is THREADED_REDRAW.


Answer

Cross reference information
Segment Product Component Platform Version Edition
Business Integration IBM ILOG JViews Charts Performance Linux, Solaris, Windows, Mac OS X 8.8, 8.7, 8.6 All Editions
Business Integration IBM ILOG JViews Diagrammer Performance Linux, Solaris, Windows, Mac OS X 8.8, 8.7, 8.6 All Editions
Business Integration IBM ILOG JViews Gantt Performance Linux, Solaris, Windows, Mac OS X 8.8, 8.7, 8.6 All Editions
Business Integration IBM ILOG JViews Maps Performance Linux, Solaris, Windows, Mac OS X 8.8, 8.7, 8.6 All Editions
Business Integration IBM ILOG JViews Maps for Defense Performance Linux, Solaris, Windows, Mac OS X 8.8, 8.7, 8.6 All Editions
Business Integration IBM ILOG JViews Telecom Graphic Objects Performance Linux, Solaris, Windows, Mac OS X 8.8, 8.7, 8.6 All Editions

Rate this page:

(0 users)Average rating

Add comments

Document information


More support for:

IBM ILOG JViews Enterprise
Performance

Software version:

8.6, 8.7, 8.8

Operating system(s):

Linux, Mac OS X, Solaris, Windows

Software edition:

All Editions

Reference #:

1619748

Modified date:

2013-01-03

Translate my page

Machine Translation

Content navigation