Posted: Wed Dec 06, 2006 3:40 pm Post subject: Image handling performance improvements
While fixing a bug yesterday, I was able to finally implement some significant image handling performance improvements. With these improvements, some image drawing operations now take less memory and are faster). In particular, presentations with transitions and color gradients should be significantly faster. Granted, it still may be a bit slow, but the speed for such presentations should be much more tolerable.
Since this is a fairly significant code change, I am requesting that people test it out before I put it in an official patch. The test patch is in bug 2034.
Joined: Jun 20, 2006 Posts: 2051 Location: Midwest, USA
Posted: Wed Dec 06, 2006 8:49 pm Post subject:
As I noted in the bug report, the test presentation the original poster provided runs much faster. I also played around with photo-heavy sxi presentation I have (originally ppt, saved as sxi).
Earier (pre-text patch) I noticed that when the transition effect was "dissolve," the new slide flashed on the screen briefly, then the old slide flashed back up and "dissolved" in little squares, revealing the new slide. Now (post test patch), the dissolve happens without the new slide flashing on the screen first.
I also noticed the following two behaviors, but I'm not sure if current behavior is different that pre-patch. (I haven't used Impress much, yet)
-The Box in effect is excruciatingly slow.
-The Cover and Uncover effects cause the photos to blur so badly as to be unrecognizable while the picture is in motion. (Maybe this is normal behavior? I don't have enough experience with presentation software to know.)
Joined: Apr 25, 2006 Posts: 2315 Location: Montpellier, France
Posted: Thu Dec 07, 2006 11:40 am Post subject:
I did not notice the black lines after applying the test patch.
The performance improvement is significant : from 8 minutes and 22 seconds to 39 seconds !!
Lorinda, you will find a test document in bug 1894, which I believe features what you call the "box in" effect (test Neo2.ppt); if that's the case, then I can tell you that it's much faster with the patch than without it, although it's still slow.
Edit : even though they're closed, I added a link to bug 2034 in bug 1894 and 1473.
Joined: Jun 20, 2006 Posts: 2051 Location: Midwest, USA
Posted: Thu Dec 07, 2006 3:18 pm Post subject:
Samwise:
The sample file you pointed me to does use the same effect, and is about as slow as what I see on my machine with the presentation I mentioned. I'm glad to know the speed has improved, even if it is still quite slow.
Posted: Tue Dec 12, 2006 8:33 pm Post subject: Re: Image handling performance improvements
After working on the last test patch, I had a burst of creativity over the last week and I have enhanced the image handling code even further to prevent more unnecessary copying of images in memory.
Since this is a fairly significant code change from the first test patch, I am requesting that people test it out before I put it in an official patch. I have posted a new test patch in bug 2034.
Joined: Apr 25, 2006 Posts: 2315 Location: Montpellier, France
Posted: Wed Dec 13, 2006 12:19 pm Post subject:
Took slightly less than a minute this time.
With the original patch, when I clicked to load a slide it loaded immediately, but NeoOffice didn't respond to further clicks for a while (you could see the Windows equivalent of the spinning beachball).
With the new patch, once you click on there is a slight delay before the slide loads (accompanied by a Windows-like spinning object) as well as a delay after the slide loads. I think they're both a bit shorter than the delay with the other patch, but overall it's a bit slower (not much though).
P.S. so far I've only tested the attached file in bug 2034.
Edit : test Neo2.ppt in bug 1894 also seems a bit slower (1 min. 30 secs instead of about 1 min.).
Joined: Jun 20, 2006 Posts: 2051 Location: Midwest, USA
Posted: Wed Dec 13, 2006 2:52 pm Post subject:
I downloaded the test patch and then ran a photo-intensive sxi presentation I have. I'm afraid I have good news and bad news.
The good news is that the cover/uncover effects no longer blur the pictures. they are crisp and clear all the way in to their intended positions.
I didn't think to time the box-in effect before and after the patch, I'm afraid. My impression is that the initial moves in the box in are a touch faster, but it still bogs down. (In a related note, the box out effect is continuous; that is the photos slowly expands to fill the screen or it's assigned part of the screen. But the box in effect is staggered; the picture shrinks a little, then stops, then shrinks some more, stops, etc. This has been the case all the way through)
The bad news is that the slide show is noticeably slower. Before Patrick started tweaking the image-handling, this presentation ran at a very acceptable speed, without many (maybe not any) little hour glass icons. That was true until this present test patch. Now I get a little hour glass after each slide (event when there are no transition effects). Even once the hour glass dissapears, sometimes Neo doesn't respond to a click or a space bar to move to the next slide/effect.
I just ran the Italian presentation that is attached to bug 2034, and it seems slower than I remember. From pressing the space bar to the disappearance of the hourglass icon is about 3 seconds. The new slide pops up in good speed, but one still has to wait for the hour glass to disappear before issuing any other commands.
Would it help if I created a scaled down version of my presentation to add to bug 2034? Currently it is 80+ slides, but I could whittle that down in a test document and make sure to use a variety of transition effects.
Thanks so much for working on this, Patrick. So far I've really only used Impress to help out with bugzilla, but one of these days I'll want to start building presentations of my own, and I appreciate the work you are putting into improving the performance.
The good news is that the cover/uncover effects no longer blur the pictures. they are crisp and clear all the way in to their intended positions.
The blurring was due to a bug in the NeoOffice code that found when I was working on the latest test patch. In some cases, the wrong bounds were being used to scrape pixels off of the screen. In those cases and where the bounds did not intersect with the correct bounds, nothing was done.
Lorinda wrote:
I didn't think to time the box-in effect before and after the patch, I'm afraid. My impression is that the initial moves in the box in are a touch faster, but it still bogs down. (In a related note, the box out effect is continuous; that is the photos slowly expands to fill the screen or it's assigned part of the screen. But the box in effect is staggered; the picture shrinks a little, then stops, then shrinks some more, stops, etc. This has been the case all the way through)
I think I have to reiterate here that these types of drawing operations will never be fast. The OOo engineers reimplemented these transition effects in OOo 2.0 to do some things which are very fast on Windows and X11 but which are not supported by Cocoa. As a result, we must use Java's compositing engine to emulate the XORing and triangular clip region operations that OOo 2.0.x now depends on.
Lorinda wrote:
The bad news is that the slide show is noticeably slower. Before Patrick started tweaking the image-handling, this presentation ran at a very acceptable speed, without many (maybe not any) little hour glass icons. That was true until this present test patch. Now I get a little hour glass after each slide (event when there are no transition effects). Even once the hour glass dissapears, sometimes Neo doesn't respond to a click or a space bar to move to the next slide/effect.
I just ran the Italian presentation that is attached to bug 2034, and it seems slower than I remember. From pressing the space bar to the disappearance of the hourglass icon is about 3 seconds. The new slide pops up in good speed, but one still has to wait for the hour glass to disappear before issuing any other commands.
This is normal OOo behavior. While the hourglass is showing, all key strokes and mouse events are ignored. The reason that you are probably seeing the hourglass in this test patch is due to the fix for the blurring of images that I described above. When that bug was present, slide preparation could be much faster when the wrong bounds results in no drawing.
Joined: Jun 20, 2006 Posts: 2051 Location: Midwest, USA
Posted: Wed Dec 13, 2006 3:52 pm Post subject:
pluby wrote:
I think I have to reiterate here that these types of drawing operations will never be fast. The OOo engineers reimplemented these transition effects in OOo 2.0 to do some things which are very fast on Windows and X11 but which are not supported by Cocoa. As a result, we must use Java's compositing engine to emulate the XORing and triangular clip region operations that OOo 2.0.x now depends on.
That's helpful to know. Having no programming experience (beyond a bit of BASIC more than two decades ago ), I'm afraid I'm not on top of which types of effects/shapes are affected by XORing and which aren't. I hope you didn't take my comment about the box in effect as a "complaint," as that's not how I intended it.
Posted: Thu Dec 14, 2006 11:29 am Post subject: Re: Image handling performance improvements
I have made some more improvements. Although not all presentations will show an improvement, presentations like the one in bug 1894 show dramatic improvements in speed.
Since I haven't heard of any new crashes or drawing errors in the last few test patches, I would like to release the latest test patch that I just posted in bug 2034 as an official patch in the next few days. Can as many people as possible test it out and make sure that images draw correctly. Even if you don't use presentations, please verify that drawing doesn't get wonky in any of your documents or when printing.
Joined: Apr 25, 2006 Posts: 2315 Location: Montpellier, France
Posted: Fri Dec 15, 2006 8:50 am Post subject:
Test Patch 4 is similar in performance to Test Patch 2 for presentations such as the one in bug 2034, or Stephan Bergmann's presentation in bug 1894; for bug 1894's "test Neo2" presentation, Test 4 is faster than Test 2, but still a bit slower than Test 1 (although I understand that the performance loss from Test1 to Test 2 is due to a bugfix).
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum You cannot attach files in this forum You cannot download files in this forum