Issue 87689 - Aqua: copyBits() and copyArea() performance
Summary: Aqua: copyBits() and copyArea() performance
Status: CLOSED FIXED
Alias: None
Product: gsl
Classification: Code
Component: code (show other issues)
Version: OOo 2.4.0
Hardware: Mac Mac OS X, all
: P3 Trivial (vote)
Target Milestone: OOo 3.0
Assignee: wolframgarten
QA Contact: issues@gsl
URL:
Keywords: aqua
: 90101 (view as issue list)
Depends on:
Blocks: 90101
  Show dependency tree
 
Reported: 2008-04-01 11:50 UTC by hdu@apache.org
Modified: 2008-06-20 10:20 UTC (History)
1 user (show)

See Also:
Issue Type: ENHANCEMENT
Latest Confirmation in: ---
Developer Difficulty: ---


Attachments

Note You need to log in before you can comment on or make changes to this issue.
Description hdu@apache.org 2008-04-01 11:50:02 UTC
The methods which especially important for scroll performance (AquaSalGraphics::copyBits() and 
copyArea()), are currently implemented in a way that result in way to many bitmap accesses, some of 
which are of the very expensive GetPixel()/SetPixel() type. Since scroll and bitblit operations often involve 
large areas of the screen this is even more of a problem.

We should use an CGImageRef based approach to bitmap handling.
Comment 1 hdu@apache.org 2008-04-01 11:57:22 UTC
Done in CWS aquabmpfix01.

The enhancement currently only works for AquaSalGraphics::copyBits() and AquaSalGraphics::copyArea(), 
the longer term solution will be CGImageRef based AquaSalImage, which should become a base class for 
AquaSalBitmap.
Comment 2 hdu@apache.org 2008-04-25 16:50:26 UTC
After I refactored OOo's Aqua-GSL subsystem in CWS aquabmpfixes01 the interactive performance is quite 
improved. It pays of to make AquaSalGraphic objects avoid doing everything via Quartz bitmaps.
Comment 3 hdu@apache.org 2008-05-16 10:53:45 UTC
@wg: please verify in CWS aquabmpfix01 that scrolling is now considerably faster (at least 5x)
Comment 4 wolframgarten 2008-05-21 11:39:54 UTC
Verified in CWS on MAC OS.
Comment 5 hdu@apache.org 2008-06-02 08:14:53 UTC
*** Issue 90101 has been marked as a duplicate of this issue. ***
Comment 6 hdu@apache.org 2008-06-02 08:15:02 UTC
*** Issue 90101 has been marked as a duplicate of this issue. ***
Comment 7 hdu@apache.org 2008-06-02 08:15:13 UTC
*** Issue 90101 has been marked as a duplicate of this issue. ***
Comment 8 wolframgarten 2008-06-20 10:20:21 UTC
Tested in DEV300_m20. Closed.