Version 16 (modified by oetiker, 15 years ago) (diff)

wording improved

Features for RRDtool 1.3

Updates

2007-06-14 Performance impact of MMAP IO and madvise quantified.
Added TEXTALIGN command

Completed

MMAP IO

The whole IO subsystem has been redone by Bernhard Fisher. It can now uses MMAPed IO for all RRD file access and uses madvise extensively to help the kernel with cache handling.

The net effect is that in-memory updates are about twice as fast as before. My CoreDuo? Thinkpad was able to do 12k updates per second (in memory) with the 1.2 code base while it is able to do 22k updates per second (in memory).

Obviously RRD data has to go to disk eventually, there has not been all that much change, since the OS still has to write the blocks. My 5400 RPM Thinkpad HD continues to run at about 250 RRD updates per second.

Since we are now telling the kernel that we will not read/write the whole RRD file but just some blocks of it (random access) the disk access could be optimized and cache usage generally reduced. The number of RRD files that can be kept in cache at any one time is 3 to 5 times as large in 1.3 as in 1.2.

Graphing with Cairo/Pango?

No more libart, no more strange error messages about stability. The switch to Cairo makes for a number of neat new features:

  • --graph-render-mode=mono brings back the rrdtool 1.0.x look and feel
    All antialiasing can be disabled ... font and graph seperately.
    . The anti aliasing can be configured for graph and fonts separately.
  • full grid-fitting of all drawing operations makes for crisper looking graph output even when anti aliasing is active.
    Antialiased and grid fitted demo graph.
    The test graph rendered by rrdtool 1.2.23
  • PDF, SVG and EPS output are now created through cairo. The most striking difference here is that you can use the same fonts as in PNG output. A sample file is attached below.

We now use Pango for all text rendering. Pango integrates with Cairo, Freetype and Fontconfig. This has a number of implications:

  • Fonts are accessed through the fontconfig interface. This means you get access to all fonts on your system, and at the same time loose the ability to use true type fonts directly.
  • All text is passed through Pango Markup. This means it is now possible to switch font properties inside any rrdtool graph text field.

Other Enhancements

TEXTALIGN
The TEXTALIGN command lets you specify how the legend of the graph should be aligned by default.
 TEXTALIGN:left 

Planned

  1. rrdtool accelerator inspired by Philippe Simonet (tobi)
  2. Architecture independent data format with xdr (tobi with help from Matt Massie)
  3. command line parsing with popt (or some other thread-safe thing) (tobi)

Maybe

Attachments (4)

Download all attachments as: .zip


NOTE: The content of this website is accessible with any browser. The graphical design though relies completely on CSS2 styles. If you see this text, this means that your browser does not support CSS2. Consider upgrading to a standard conformant browser like Mozilla Firefox or Opera but also Apple's Safari or KDE's Konqueror for example. It may also be that you are looking at a mirror page which did not copy the CSS for this page. Or if some pictu res are missing, then the mirror may not have picked up the contents of the inc directory.