summaryrefslogtreecommitdiff
path: root/NEWS
AgeCommit message (Collapse)AuthorFilesLines
2009-08-29Eliminate self-intersecting strokes.Chris Wilson1-0/+18
We refactor the surface fallbacks to convert full strokes and fills to the intermediate polygon representation (as opposed to before where we returned the trapezoidal representation). This allow greater flexibility to choose how then to rasterize the polygon. Where possible we use the local spans rasteriser for its increased performance, but still have the option to use the tessellator instead (for example, with the current Render protocol which does not yet have a polygon image). In order to accommodate this, the spans interface is tweaked to accept whole polygons instead of a path and the tessellator is tweaked for speed. Performance Impact ================== ... Still measuring, expecting some severe regressions. ...
2009-07-31[xlib] Use server-side gradients.Chris Wilson1-0/+28
We can offload creation of gradients to server that support RENDER 0.10 and later. This greatly reduces the amount of traffic we need to send over our display connection as the gradient patterns are much smaller than the full image. Even if the server fallbacks to using pixman, performance should be improved by the reduced transport overhead. Furthermore this is a requisite to enable hardware accelerated gradients with the xlib backend. Running cairo-perf-trace on tiny, Celeron/i915: before: firefox-20090601 211.585 after: firefox-20090601 270.939 and on tiger, CoreDuo/nvidia: before: firefox-20090601 70.143 after: firefox-20090601 87.326 where linear gradients are used extensively throughout the GTK+ theme. Not quite the result I was expecting! In particular, looking at tiny: xlib-rgba paint-with-alpha_linear-rgba_over-512 47.11 (47.16 0.05%) -> 123.42 (123.72 0.13%): 2.62x slowdown █▋ xlib-rgba paint-with-alpha_linear3-rgba_over-512 47.27 (47.32 0.04%) -> 123.78 (124.04 0.13%): 2.62x slowdown █▋ xlib-rgba paint-with-alpha_linear-rgb_over-512 47.19 (47.21 0.02%) -> 123.37 (123.70 0.13%): 2.61x slowdown █▋ xlib-rgba paint-with-alpha_linear3-rgb_over-512 47.30 (47.31 0.04%) -> 123.52 (123.62 0.09%): 2.61x slowdown █▋ xlib-rgba paint_linear3-rgb_over-512 47.29 (47.32 0.05%) -> 118.95 (119.60 0.29%): 2.52x slowdown █▌ xlib-rgba paint_linear-rgba_over-512 47.14 (47.17 0.06%) -> 116.76 (117.06 0.16%): 2.48x slowdown █▌ xlib-rgba paint_linear3-rgba_over-512 47.32 (47.34 0.04%) -> 116.85 (116.98 0.05%): 2.47x slowdown █▌ xlib-rgba paint_linear-rgb_over-512 47.15 (47.19 0.03%) -> 114.08 (114.55 0.20%): 2.42x slowdown █▍ xlib-rgba paint-with-alpha_radial-rgb_over-512 117.25 (119.43 1.21%) -> 194.36 (194.73 0.09%): 1.66x slowdown ▋ xlib-rgba paint-with-alpha_radial-rgba_over-512 117.22 (117.26 0.02%) -> 193.81 (194.17 0.11%): 1.65x slowdown ▋ xlib-rgba paint_radial-rgba_over-512 117.23 (117.26 0.02%) -> 186.35 (186.41 0.03%): 1.59x slowdown ▋ xlib-rgba paint_radial-rgb_over-512 117.23 (117.27 0.02%) -> 184.14 (184.62 1.51%): 1.57x slowdown ▋ Before 1.10, we may choose to disable server-side gradients for the current crop of Xorg servers, similar to the extended repeat modes. [Updated by Chris Wilson. All bugs are his.]
2009-07-23Remove clip handling from generic surface layer.Chris Wilson1-0/+6
Handling clip as part of the surface state, as opposed to being part of the operation state, is cumbersome and a hindrance to providing true proxy surface support. For example, the clip must be copied from the surface onto the fallback image, but this was forgotten causing undue hassle in each backend. Another example is the contortion the meta surface endures to ensure the clip is correctly recorded. By contrast passing the clip along with the operation is quite simple and enables us to write generic handlers for providing surface wrappers. (And in the future, we should be able to write more esoteric wrappers, e.g. automatic 2x FSAA, trivially.) In brief, instead of the surface automatically applying the clip before calling the backend, the backend can call into a generic helper to apply clipping. For raster surfaces, clip regions are handled automatically as part of the composite interface. For vector surfaces, a clip helper is introduced to replay and callback into an intersect_clip_path() function as necessary. Whilst this is not primarily a performance related change (the change should just move the computation of the clip from the moment it is applied by the user to the moment it is required by the backend), it is important to track any potential regression: ppc: Speedups ======== image-rgba evolution-20090607-0 1026085.22 0.18% -> 672972.07 0.77%: 1.52x speedup ▌ image-rgba evolution-20090618-0 680579.98 0.12% -> 573237.66 0.16%: 1.19x speedup ▎ image-rgba swfdec-fill-rate-4xaa-0 460296.92 0.36% -> 407464.63 0.42%: 1.13x speedup ▏ image-rgba swfdec-fill-rate-2xaa-0 128431.95 0.47% -> 115051.86 0.42%: 1.12x speedup ▏ Slowdowns ========= image-rgba firefox-periodic-table-0 56837.61 0.78% -> 66055.17 3.20%: 1.09x slowdown ▏
2009-07-22[NEWS] Add stub for OpenGL.Chris Wilson1-0/+8
2009-07-17Add OpenVG backend.Chris Wilson1-0/+3
Based on the work by Øyvind Kolås and Pierre Tardy -- many thanks to Pierre for pushing this backend for inclusion as well as testing and reviewing my initial patch. And many more thanks to pippin for writing the backend in the first place! Hacked and chopped by myself into a suitable basis for a backend. Quite a few issues remain open, but would seem to be ready for testing on suitable hardware.
2009-07-03Export meta-surfaceChris Wilson1-0/+27
The meta-surface is a vital tool to record a trace of drawing commands in-memory. As such it is used throughout cairo. The value of such a surface is immediately obvious and should be applicable for many applications. The first such case is by cairo-test-trace which wants to record the entire graph of drawing commands that affect a surface in the event of a failure.
2009-06-16[NEWS] Add release notes from 1.8.8Chris Wilson1-1/+68
2009-06-12NEWS: Fix date and name of 1.9.2 snapshotCarl Worth1-2/+2
It's a snapshot, not a release, and the broken REFERENCE_IMAGE list derailed me from finishing yesterday.
2009-06-11NEWS: Update date for snapshot planned for today.Carl Worth1-1/+1
2009-06-11NEWS: Explain bovine polaroids a bit more.Carl Worth1-2/+9
It's a fun joke, but the COW snapshots feature is important enough that we should actually tell users what it is.
2009-06-11NEWS: Cleanup in preparation for 1.9.2 snapshotCarl Worth1-26/+45
Mostly just wrapping to a reasonable line length, and some minor wording changes.
2009-06-11[NEWS] Add more notesChris Wilson1-6/+44
2009-02-12[NEWS] Add API changes.Chris Wilson1-1/+19
Scan the public headers for obvious additions.
2008-12-14[NEWS] Add notes for 1.8.6Chris Wilson1-0/+49
Add the historical blurb for 1.8.6.
2008-11-14Merge branch '1.8'Carl Worth1-3/+52
Conflicts: NEWS cairo-version.h
2008-11-14NEWS: Add notes for cairo 1.8.4Carl Worth1-0/+52
Just a few bug fixes here.
2008-11-06[NEWS] Add a few notes.Chris Wilson1-0/+42
Help Carl with a speedy snapshot by writing a few notes about what has been added so far to 1.9.
2008-10-30Fix typo in bug URL.Carl Worth1-1/+1
Thanks to AndrewR in IRC for pointing out the typo.
2008-10-29NEWS: Finish the entry for the 1.8.2 release.Carl Worth1-29/+60
Add some summarizing paragraphs and organize bug-fixes and optimizations into separate sections.
2008-10-30[NEWS] Spot another couple of typos.Chris Wilson1-4/+4
Proof-reading is difficult, even with the squiggly lines.
2008-10-30[NEWS] Correct a couple of typos.Chris Wilson1-5/+5
Whilst Carl's not looking, fix a couple of typos -- in particular the one calling me a bug! ;-)
2008-10-29NEWS: Add long list of bugs fixed for 1.8.2.Carl Worth1-0/+110
(Still need to add a paragraph or two summarizing the release.)
2008-10-28Correct NEWS to say 'release' instead of 'snapshot' for 1.8.0Carl Worth1-2/+2
A copy-and-paste bug strikes again.
2008-10-13Update documentation to remove references to cairo_has_show_text_glyphs().Chris Wilson1-1/+1
With the addition of cairo_show_text_glyphs() came a couple of functions to query whether the target supported the extended attributes. However, at Carl's request cairo_has_show_text_glyphs() was removed - but the documentation was not updated to reflect that.
2008-09-25NEWS: Add notes for the 1.8.0 release.Carl Worth1-4/+166
Heavily cribbed from 1.7.x snapshot NEWS of course.
2008-09-18Correct NEWS mention to talk about fontconfig setting not Xsetting.Carl Worth1-1/+1
Thanks to Behdad for helping me get the terminology right.
2008-09-18NEWS: Add notes for 1.7.6 snapshot.Carl Worth1-4/+80
Note 1.7 API changes: Remove lcd_filter, cairo_has_show_glyphs, and add cairo_text_cluster_flags_t. Also mention a few major bug fixes, Behdad's build-system rework, and Chris's customary robustness improvements.
2008-08-11[configure.in,NEWS] Release 1.7.41.7.4Behdad Esfahbod1-0/+8
2008-08-11[configure.in,NEWS] Release 1.7.21.7.2Behdad Esfahbod1-35/+183
2008-08-10NEWS: Win32 font backend has been fixedAdrian Johnson1-3/+0
2008-08-08[NEWS] Add some notes about recent happeningsBehdad Esfahbod1-0/+52
2008-04-11NEWS: Add notes for cairo 1.6.4Carl Worth1-0/+29
2008-04-11NEWS: Add notes for 1.6.2 releaseCarl Worth1-0/+35
2008-04-10NEWS: Add notes for 1.6.0 releaseCarl Worth1-8/+190
2008-04-08NEWS: Add notes for 1.5.20 snapshotCarl Worth1-0/+47
2008-04-06NEWS: Add notes for 1.5.18 snapshotCarl Worth1-0/+111
2008-04-01NEWS: Add notes for the cairo 1.5.16 snapshotCarl Worth1-0/+109
2008-03-20NEWS: Add notes for 1.5.14 snapshotCarl Worth1-1/+128
2008-02-28Clarify that 16-bit limit still exists in pixmanCarl Worth1-10/+11
2008-02-28NEWS: Add notes for cairo 1.5.12Carl Worth1-0/+94
2008-02-21Patch hole in fabric of time-space continuumCarl Worth1-1/+1
2008-02-20Mention that cairo_get_current_point is void againCarl Worth1-0/+4
2008-02-20NEWS: Add notes for cairo 1.5.10Carl Worth1-5/+94
2008-01-30NEWS: Add notes for the 1.5.8 snapshotCarl Worth1-0/+103
2008-01-16NEWS: Add notes for cairo 1.5.6Carl Worth1-5/+95
2007-12-05Fix misspellingsCarl Worth1-3/+3
2007-12-05Fix version number typoCarl Worth1-1/+1
2007-12-05NEWS: Add notes for 1.5.4Carl Worth1-0/+57
2007-10-30Add notes for 1.5.2 snapshotCarl Worth1-0/+252
2007-06-27Add notes to NEWS for 1.4.10Carl Worth1-0/+45