Heya,
We recently tried to upgrade the clover engine to Clover 3.2.1 from 3.0.1 and discovered some of our memory intensive graphs have an extreme degredation in performance. I ran the same graph (we run via the command line) - with Clover 3.0.1 we had a running time of roughly 23 minutes and with Clover 3.2.1 we had a running time of 1 hour 10 minutes. Everything (the box, memory settings, nothing else running but the graph, etc) was the same except for the clover distribution (the plugin and lib).
I know that Clover changed the way they buffered data in 3.2.1 - would that cause such a dramatic difference? Can you give me some hints on where I should look for the issue? We’re trying to keep up with the releases of Clover, but the above time difference caused major issues with our production processing, so we had to pull it back.
Thanks,
Anna
Hi Anna,
We are not aware of any general performance degradation between versions you mentioned.
You can try to find out more specific problem - component, or block of components maybe. I would recommend this approach:
* find problematic graph
* try to introduce additional phases
* run on both versions and try to find out problematic phase (duration is in log)
Alternative is simplification of graf until you find slow component(s).
Heya,
As I already have a problematic graph, I will start with it. You mention below that “duration is in the log.” Which log are you referring to? Since we run from the command line, it does not produce a log. Is what you are referring to the continual output of the Watchdog that occurs when you change the logging level to INFO?
Thanks,
Anna
Hi Anna,
when graph is over, watchdog should produce something like:
INFO [WatchDog] - Phase# Finished Status RunTime(sec) MemoryAllocation(KB)
INFO [WatchDog] - 0 FINISHED_OK 5 3587
INFO [WatchDog] - 1 FINISHED_OK 34 4013
Based on this you can identify problem.