Dear Eugene, made further experiments. If I run it directly with aggressiveHeap disabled (otherwise it takes too much memory), it is running even much earlier into trouble: backtest for defender1 fine, but comes to a crawl (factor 10 and more slower) for defender2 backtest. (Java grows to ~300 MB)
If I enable aggressiveheap, same picture: at ~49% of defender2 timelag becomes unbearable. Max size ~300 MB If I run it through eclipse with -Xmx512M it easily does defender1, defender2, Directional, .. slowing along the way and getting finally stuck with equalizer.. Each of those it does very rapidly if I start directly with it. So, it is not a problem of the strategy, but rather there a very negative side effects after doing a backtest. And I am wondering what they might be.. (Java grows to 550 MB) In all cases, the system is significantly slower already for the second backtest. The time when I said, I stop is basically when it requires dozens of second even for a single percentage point of progress. It can even become hard / impossible to stop the system, as everything hangs. Sorry, I am not a java guru. But to me this looks very much like for some reason the garbage collector can at some point not find enough space and is running over and over again. I would normally say some kind of memory leak: memory is not freed after running of a backtest. But I am not sure whether and how such things can happen with Java. It but is clear: the number of strategies you run with small problems depend on the total memory it is willing to use. Once it is getting close to the uper boundary (depending on parameters) the system increasingly stalls.. - I only do not understand why required memory depends on strategies previously backtested. I am running Win7 32, 4GB (out of which 3 are available and ~1 is needed for the system, leaving 2GB for JBT max.) Installed is Java 6 Update 18 and Java SE Development Kit 6 Update 16. I understand that I can alleviate the problem by adding parameters that allow JBT to grab more memory. But it seems this only increases the number of systems I can run until it gets unusable, so I would consider this more a hack than a solution. The key issue seems to be: why are there so strong side-effects from previously run strategies? BTW. The problem does also seem to happen if I repeatedly run the same strategy. Strongly reducing the usefulness of backtesting (of course I can always stop the system and rerun it..) Thanks Klaus On 6 Jun., 01:49, Eugene Kononov <[email protected]> wrote: > > (BTW, I start JBT directly from Eclipse) > > JBT will run faster if you start it as a stand-alone process. See the script > in the /run directory. -- You received this message because you are subscribed to the Google Groups "JBookTrader" group. To post to this group, send email to [email protected]. To unsubscribe from this group, send email to [email protected]. For more options, visit this group at http://groups.google.com/group/jbooktrader?hl=en.
