On Monday 04 July 2005 16:55, Silvan wrote:
> On Sunday 03 July 2005 12:52 pm, Guillaume Laurent wrote:
> > grep -- '-> Composition'
>
> -> CompositionModelImpl::getRectanglesIn:  CPU: 1160 calls, 1010ms,
> 870.69us/call
> -> CompositionModelImpl::getRectanglesIn: real: 1160 calls,  0.927421000R,
> 0.000799501R/call
> -> CompositionModelImpl::getRectanglesIn: last:  CPU: 0ms,    real:
> 0.000769000R
> -> CompositionModelImpl::computeSegmentOrigin:  CPU: 1150 calls, 40ms,
> 34.7826us/call
> -> CompositionModelImpl::computeSegmentOrigin: real: 1150 calls,
> 0.021798000R,  0.000018955R/call
> -> CompositionModelImpl::computeSegmentOrigin: last:  CPU: 0ms,    real:
> 0.000009000R
> -> CompositionModelImpl::computeSegmentRect:  CPU: 1150 calls, 580ms,
> 504.348us/call
> -> CompositionModelImpl::computeSegmentRect: real: 1150 calls, 
> 0.486874000R, 0.000423369R/call
> -> CompositionModelImpl::computeSegmentRect: last:  CPU: 0ms,    real:
> 0.000374000R
> -> CompositionView::refreshDrawBuffer:  CPU: 1160 calls, 1880ms,
> 1620.69us/call
> -> CompositionView::refreshDrawBuffer: real: 1160 calls,  1.836794000R,
> 0.001583443R/call
> -> CompositionView::refreshDrawBuffer: last:  CPU: 0ms,    real: 
> 0.001510000R -> CompositionView::drawArea:  CPU: 1160 calls, 1510ms,
> 1301.72us/call -> CompositionView::drawArea: real: 1160 calls, 
> 1.430857000R,
> 0.001233497R/call
> -> CompositionView::drawArea: last:  CPU: 0ms,    real:  0.001192000R

You did say you had a P4 in that new PC of yours, right ? I have a 2.4 GHz P4 
and a Matrox G450 which is more than 6 years old. Whatever on-board graphic 
chip you have should really easily match it. Now here's what I get :

-> CompositionModelImpl::getRectanglesIn:  CPU: 1412 calls, 260ms, 
184.136us/call
-> CompositionModelImpl::getRectanglesIn: real: 1412 calls,  0.255885000R,  
0.000181222R/call
-> CompositionModelImpl::getRectanglesIn: last:  CPU: 0ms,    real:  
0.000213000R
-> CompositionModelImpl::computeSegmentOrigin:  CPU: 1412 calls, 20ms, 
14.1643us/call
-> CompositionModelImpl::computeSegmentOrigin: real: 1412 calls,  
0.017922000R,  0.000012693R/call
-> CompositionModelImpl::computeSegmentOrigin: last:  CPU: 0ms,    real:  
0.000010000R
-> CompositionModelImpl::computeSegmentRect:  CPU: 1412 calls, 160ms, 
113.314us/call
-> CompositionModelImpl::computeSegmentRect: real: 1412 calls,  0.152334000R,  
0.000107885R/call
-> CompositionModelImpl::computeSegmentRect: last:  CPU: 0ms,    real:  
0.000124000R
-> CompositionModelImpl::refreshDrawBuffer:  CPU: 1412 calls, 610ms, 
432.011us/call
-> CompositionModelImpl::refreshDrawBuffer: real: 1412 calls,  0.586833000R,  
0.000415604R/call
-> CompositionModelImpl::refreshDrawBuffer: last:  CPU: 0ms,    real:  
0.000494000R
-> CompositionModelImpl::drawArea:  CPU: 1412 calls, 450ms, 318.697us/call
-> CompositionModelImpl::drawArea: real: 1412 calls,  0.453705000R,  
0.000321321R/call
-> CompositionModelImpl::drawArea: last:  CPU: 0ms,    real:  0.000398000R


Assuming you did follow the same test procedure (empty composition, create 1 
seg, move it across), getRectanglesIn() and computeSegmentRect() are about 
*4* times slower for you. I can understand refreshDrawBuffer() and drawArea() 
being slower since some drawing operations are actually made in those, but I 
still find it very surprising.

Anyway, this demonstrates that contrary to what I thought, some kind of 
caching scheme for the segment->rectangle computation might help.

-- 
Guillaume.
http://www.telegraph-road.org


-------------------------------------------------------
SF.Net email is sponsored by: Discover Easy Linux Migration Strategies
from IBM. Find simple to follow Roadmaps, straightforward articles,
informative Webcasts and more! Get everything you need to get up to
speed, fast. http://ads.osdn.com/?ad_id=7477&alloc_id=16492&op=click
_______________________________________________
Rosegarden-devel mailing list
Rosegarden-devel@lists.sourceforge.net - use the link below to unsubscribe
https://lists.sourceforge.net/lists/listinfo/rosegarden-devel

Reply via email to