IB/java - now uses tons of memory?

Discussion in 'Retail Brokers' started by gaj, Aug 18, 2008.

  1. gaj


    i upgraded IB and java recently, and now notice that the pair is using tons of memory. i opened the TWS, have done nothing in there except have it open, and it's at 140meg used (in 1 hour).


    IB 884.6
    java 1.6_0_07

    windows xp sp 2.

    any suggestions / ideas? i know the minimize-the-window trick, but it seems like it's eating up far too much memory...

  2. I remember when I used to get pissed about it moving up to 30M of memory.

    The way I've set it up (1.6.0_10rc 64bit server config for better performance) its using 313M of memory but I've got 2G in my current setup so I don't care. My recommendation would be more memory because anything you do to reduce javaw's footprint or to force windows to clear out more memory will probably reduce performance. 2G of memory should be pretty cheap - even 4 isn't a lot.
  3. I'm using 885.7 with Java 1.5.0_06, two instances of TWS, and 10 charts open. Using Quotetracker as well. I notice a little slowness but it's not horrible. At least it's stable ... for now.

    Try an older Java and the previous TWS. There's absolutely zero reason to ever upgrade once you have a smoothly running version, imho.
  4. gaj


    thanks - i may revert back if nothing else happens. interesting thing: i minimized at the time of this post, haven't done anything, and it's only at 80 meg. that sounds much better.

    i currently have 3 gig of memory in my machine, but was just concerned about java or TWS leaking memory...

    i also use winmem optimizer; anyone else use this?
  5. A funny thing happened to me today after I posted this.

    So I'm nibbling at the market all morning - small scalps in and out, just to see if the selloff is for real. Then I finally commit to the short side with some size (for me) ... and when I start placing my exit orders at my targets, I noticed they're not being acknowledged. Then comes the dreaded pink out. Then I can't even close TWS to restart. Great ... I've just put on a huge ES position and I'm locked out and blind.

    So I called IB to see what was up, and the guy, who was at least trying to be helpful, told me it was my old version that was causing the problem. He wanted to walk me through updating right then and there.

    Long story longer ... while the guy was telling me all the reasons why I needed the newest version, I finally was able to close out TWS and then re-open it (the old version), and it came back just fine. I was able to place my exit orders finally. Luckily I hadn't panicked and exited over the phone (I was down 4 figures at the time).

    Moral of the story: never post in a public forum a recommendation to avoid updating TWS.
  6. I've used memory optimizers gaj but don't any more. Why? Because I switch my machine off once a day (I don't leave anything connected to the net/wireless while we sleep) so I've never seen unacceptable memory use expansion and when you optimize you force dlls etc to unload/tidy up. Such unloading may make them fractionally slower to load when the app needs them. And I want everything responsive as hell.

    Note that running Winxp (today) I only use 69M for Javaw. Yesterday I was running the 64bit version of Windows Server 2008 & java. It just leaves every damn thing in memory ---- but it is as responsive as hell :)

    Both were on tws 886.5 and java 1.6.0_10rc (the best java yet!)
  7. For potentially greater memory usage but better responsiveness under windows xp.

    right click my computer
    select properties (system properties)
    advanced tab
    performance settings
    advanced tab

    and favour Background Services and System Cache.

    This tells XP to give things that are running in the background (java, your ip stack etc) higher priority and to allocate more memory rather than trying to recover as much as it can. The net should be more responsiveness in a trading environment.
  8. Do you mean you installed the 6u10 JDK package instead of the 6u10 JRE?
    Also how did you setup your software to use the java server instead of the client release that's normally already installed?

    Thanks for your time.