How much memory can a bot use?
The highlighted comment was created in this revision.
Hi mates. I'm playing with my new bot right now and it turned out he use quite a lot of memory. After a couple of rounds the client heap is full and things start to get very "strange". That leads me to the question: How much memory can a bot use? Is it restricted/shared in some way or can just one bot take all memory? It turned out that my test against Diamond and DrussGT leads to huge skipped turn counts on these bots but my bot is still fine (he just use memory like nothing in his current develop state to save on the cpu side).
Take Care
Memory isn't restricted per bot like CPU, so you can use all you want. But if your bot uses way more than its share, people's clients will crash only on battles with your bot and you'll get a lot of complaints. :-) I'd say your bot should be able to battle itself without ever causing OutOfMemory errors.
Do Diamond/DrussGT get the same amount of skipped turns if you pit them against each other, or themselves? I've definitely seen some cumulative CPU load effect on skipped turns - eg, Diamond is less likely to skip turns against Sample Bots than against DrussGT. Some amount of skipped turns is not a huge deal. How many are being skipped? Your high memory usage could lead to increased garbage collection, which I think would count against your bot's CPU time, but that can cause a few skipped turns for the other bot in my experience.