Version 23 (modified by oetiker, 16 years ago) (diff) |
---|
Features for RRDtool 1.3
Updates
2007-08-03 | RRDtool 1.3 beta 1 is out http://oss.oetiker.ch/rrdtool/pub/beta/rrdtool-1.2.99907080300.tar.gz |
2007-06-20 | Added notes on a PortableRrdFormat |
2007-06-15 | Multiplicative Holt-Winters Forecasting added |
2007-06-14 | Performance impact of MMAP IO and madvise quantified. |
Added TEXTALIGN command |
Completed
Multiplicative Holt-Winters Forecasting
Evan Miller of IMVU added support for multiplicative Holt-Winters:
There are two popular variants of the Holt-Winters forecasting method; RRDtool supports the "additive" method, which means that seasonal variation is simply added to the baseline. For our application, it would be more appropriate to use the "multiplicative" Holt-Winters method, where seasonal variation is a coefficient multiplied by the baseline. Quick example to illustrate the difference: if the average doubles season-over-season, the additive method would predict the delta between min and max to be constant, whereas the multiplicative method would predict the delta to double as well.
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. With the 1.3 code base 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
. 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.
- 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
Attachments (4)
-
minmax.mono.png
(7.3 KB) -
added by oetiker 16 years ago.
All antialiasing can be disabled ... font and graph seperately.
-
minmax.anti.png
(14.7 KB) -
added by oetiker 16 years ago.
Antialiased and grid fitted demo graph.
-
minmax.12.png
(19.5 KB) -
added by oetiker 16 years ago.
The test graph rendered by rrdtool 1.2.23
-
minmax.2.pdf
(18.7 KB) -
added by oetiker 16 years ago.
PDF output created by RRDtool 1.3
Download all attachments as: .zip