Looking at load-graph.cpp:
load_graph_expose() looks to be using cairo_curve_to() for every point on every refresh. This interpolation seems to me to be wasteful when there is no change in data. Memory usage tends to be a straight line.
I propose doing a quick check in the for loop to compare the current data with previous and if the difference is less than a certain amount, use cairo_line_to() instead.
The other option would be to offer a preference to use lines instead of curves.
Looking at load-graph.cpp:
load_graph_expose() looks to be using cairo_curve_to() for every point on every refresh. This interpolation seems to me to be wasteful when there is no change in data. Memory usage tends to be a straight line.
I propose doing a quick check in the for loop to compare the current data with previous and if the difference is less than a certain amount, use cairo_line_to() instead.
The other option would be to offer a preference to use lines instead of curves.
Both options should be easy to implement.