Summary: | [EFL] Need to optimize Rendering | ||||||
---|---|---|---|---|---|---|---|
Product: | WebKit | Reporter: | Ryuan Choi <ryuan.choi> | ||||
Component: | WebKit EFL | Assignee: | Nobody <webkit-unassigned> | ||||
Status: | RESOLVED WORKSFORME | ||||||
Severity: | Enhancement | CC: | antognolli+webkit, leandro, lucas.de.marchi, tonikitoo | ||||
Priority: | P2 | ||||||
Version: | 528+ (Nightly build) | ||||||
Hardware: | PC | ||||||
OS: | Linux | ||||||
Attachments: |
|
Description
Ryuan Choi
2010-09-07 17:44:11 PDT
Created attachment 66832 [details]
Patch
(In reply to comment #1) > Created an attachment (id=66832) [details] > Patch This patch is for 1 and 2 I suggested. I tested this in http://www.naver.com number is # of rectangles calling paint_contents. [without this patch] 6 should be rendered 0 should be rendered 10 should be rendered 0 should be rendered 9 should be rendered 0 should be rendered 4 should be rendered 0 should be rendered 7 should be rendered 0 should be rendered 20 should be rendered 124 should be rendered 0 should be rendered 128 should be rendered 5 should be rendered 16 should be rendered 10 should be rendered 0 should be rendered 29 should be rendered 53 should be rendered 0 should be rendered 6 should be rendered 3 should be rendered 17 should be rendered 1 should be rendered 1 should be rendered 8 should be rendered 4 should be rendered 11 should be rendered 1 should be rendered 1 should be rendered 1 should be rendered 1 should be rendered 2 should be rendered 2 should be rendered 2 should be rendered 2 should be rendered 2 should be rendered 2 should be rendered 2 should be rendered 1 should be rendered 1 should be rendered 26 should be rendered 0 should be rendered 1 should be rendered [with this patch] 6 should be rendered 10 should be rendered 7 should be rendered 1 should be rendered 2 should be rendered 6 should be rendered 18 should be rendered 24 should be rendered 1 should be rendered 36 should be rendered 16 should be rendered 1 should be rendered 10 should be rendered 1 should be rendered 1 should be rendered 27 should be rendered 4 should be rendered 3 should be rendered 10 should be rendered 4 should be rendered 4 should be rendered 2 should be rendered 1 should be rendered 4 should be rendered 1 should be rendered 2 should be rendered 2 should be rendered 2 should be rendered 2 should be rendered 11 should be rendered 1 should be rendered 1 should be rendered 1 should be rendered 1 should be rendered 2 should be rendered 2 should be rendered 2 should be rendered 2 should be rendered 2 should be rendered 2 should be rendered 3 should be rendered (In reply to comment #0) > I tested how many rect was rendered. > EFL: until finishing google.com in EWebLauncher > [EFL] 6 will be drawn > [EFL] 0 will be drawn > [EFL] 11 will be drawn > [EFL] 2 will be drawn > [EFL] 4 will be drawn > [EFL] 4 will be drawn > [EFL] 4 will be drawn > [EFL] 2 will be drawn > [EFL] 5 will be drawn > [EFL] 14 will be drawn > > GTK+: same condition > [GTK+] 1 rect will be drawn > [GTK+] 1 rect will be drawn > [GTK+] 1 rect will be drawn > [GTK+] 1 rect will be drawn > [GTK+] 1 rect will be drawn > [GTK+] 1 rect will be drawn > [GTK+] 1 rect will be drawn > > Although count is good factor to measure render performance, Although count is not a good factor to measure render performance, > I believe that EWK have point of improvement. > > I suggest below. > 1. optimize code > a) remove 0 case, > b) move below code out of EINA_ITERATOR_FOREACH > ewk_view_paint_context_translate(ctxt, -sx, -sy); > > 2. add shouldCoalesce like GTK+. > > 3. use cairo_region included in Cairo 1.10.0 with some logic. > currently, EWK just add rectangle without considering region. We need better measurements for this. |