<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[IVM heap usage &amp; game objects]]></title><description><![CDATA[<p>I've been hitting:</p>
<p>Error: Isolate was disposed during execution due to memory limit</p>
<p>A lot recently. It seems to happen between ticks: after my code has returned and before the code starts on the next tick. Alternatively it may be supressing logs on the tick it occurs. Impossible to say.</p>
<p>So I've been digging into heap size. Specifically, I've been logging:</p>
<p>stats[&quot;total_heap_size&quot;] + stats[&quot;externally_allocated_size&quot;];</p>
<p>in various places. I'm on shard 2 and I believe my limit is ~315MB. A few findings:</p>
<ul>
<li>My heap size at the start of a new global (ie. at the top of Main.js) is ~135MB. After Memory parsing this goes to ~142MB. I guess this is related to code compiled size + one instance of all game objects + terrain data?</li>
<li>My heap size will regularly climb ~70MB from the end of one tick to the start of another. My belief is that this is new game objects being created and old ones not being cleared. The next tick it'll drop down 70MB again. That means that, before I even use any heap myself, about 210MB is gone.</li>
<li>As it happens the two 70MB oscillations happen between ~210MB and 280MB, which suggestes there may be another copy of all the game objects lying around (140 at code load, +70 to 210, +70 to 280).</li>
<li>The memory limit is always hit when I end my tick on a high: in other words on the &quot;280MB&quot; ticks. My guess is that another copy of the game objects is being created without clearing the last lot out, and it's failing to do that.</li>
</ul>
<p>To be clear, I'm not putting game objects on global or anything like that. I do put game objects on other game objects, but that sort of circular reference should be fine for the GC. I am able to get 1000+ of ticks with the same global at times, and then observe repeated crashes with memory limits every 10-20 ticks or so.... then another period of calm. If I am leaking anything, it's not enough to break it in 1000+ ticks, and then suddenly is enough to break it in 10-20 ticks.</p>
<p>It's my belief that at high GCL when you have a lot of room visibilty (I can typically see ~160) rooms on any one tick. That the overhead of game objects on the heap severly limits how much the user can use the heap, and can cause crashes that the user has very little control over. My suspicion is that my crash-calm cycle is because the crashes kill my bucket, so my code stops spawning so much, and the game object count drops. In the calm period the spawns climb back up, and I tip over the threshold again.</p>
<p>Now obviously I can't rule out my code. You never can. I've tried commenting out large chunks of code, but there's no obvious thing on my end that's causing the issue. I'd be interested in hearing stories from other people will very high general room visibility to see if they suffer from the same issues.</p>
<p>Can we consider raising the limit for high GCL players? Or maybe just in general? Alternatively, can the game objects be optimized so they don't take up 70MB of heap per tick?</p>
]]></description><link>http://screeps.com/forum/topic/2163/ivm-heap-usage-game-objects</link><generator>RSS for Node</generator><lastBuildDate>Thu, 14 May 2026 04:20:19 GMT</lastBuildDate><atom:link href="http://screeps.com/forum/topic/2163.rss" rel="self" type="application/rss+xml"/><pubDate>Mon, 19 Mar 2018 15:26:26 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to IVM heap usage &amp; game objects on Mon, 19 Mar 2018 15:54:18 GMT]]></title><description><![CDATA[<p>I've been hitting:</p>
<p>Error: Isolate was disposed during execution due to memory limit</p>
<p>A lot recently. It seems to happen between ticks: after my code has returned and before the code starts on the next tick. Alternatively it may be supressing logs on the tick it occurs. Impossible to say.</p>
<p>So I've been digging into heap size. Specifically, I've been logging:</p>
<p>stats[&quot;total_heap_size&quot;] + stats[&quot;externally_allocated_size&quot;];</p>
<p>in various places. I'm on shard 2 and I believe my limit is ~315MB. A few findings:</p>
<ul>
<li>My heap size at the start of a new global (ie. at the top of Main.js) is ~135MB. After Memory parsing this goes to ~142MB. I guess this is related to code compiled size + one instance of all game objects + terrain data?</li>
<li>My heap size will regularly climb ~70MB from the end of one tick to the start of another. My belief is that this is new game objects being created and old ones not being cleared. The next tick it'll drop down 70MB again. That means that, before I even use any heap myself, about 210MB is gone.</li>
<li>As it happens the two 70MB oscillations happen between ~210MB and 280MB, which suggestes there may be another copy of all the game objects lying around (140 at code load, +70 to 210, +70 to 280).</li>
<li>The memory limit is always hit when I end my tick on a high: in other words on the &quot;280MB&quot; ticks. My guess is that another copy of the game objects is being created without clearing the last lot out, and it's failing to do that.</li>
</ul>
<p>To be clear, I'm not putting game objects on global or anything like that. I do put game objects on other game objects, but that sort of circular reference should be fine for the GC. I am able to get 1000+ of ticks with the same global at times, and then observe repeated crashes with memory limits every 10-20 ticks or so.... then another period of calm. If I am leaking anything, it's not enough to break it in 1000+ ticks, and then suddenly is enough to break it in 10-20 ticks.</p>
<p>It's my belief that at high GCL when you have a lot of room visibilty (I can typically see ~160) rooms on any one tick. That the overhead of game objects on the heap severly limits how much the user can use the heap, and can cause crashes that the user has very little control over. My suspicion is that my crash-calm cycle is because the crashes kill my bucket, so my code stops spawning so much, and the game object count drops. In the calm period the spawns climb back up, and I tip over the threshold again.</p>
<p>Now obviously I can't rule out my code. You never can. I've tried commenting out large chunks of code, but there's no obvious thing on my end that's causing the issue. I'd be interested in hearing stories from other people will very high general room visibility to see if they suffer from the same issues.</p>
<p>Can we consider raising the limit for high GCL players? Or maybe just in general? Alternatively, can the game objects be optimized so they don't take up 70MB of heap per tick?</p>
]]></description><link>http://screeps.com/forum/post/9973</link><guid isPermaLink="true">http://screeps.com/forum/post/9973</guid><dc:creator><![CDATA[Tigga]]></dc:creator><pubDate>Mon, 19 Mar 2018 15:54:18 GMT</pubDate></item><item><title><![CDATA[Reply to IVM heap usage &amp; game objects on Tue, 20 Mar 2018 00:21:02 GMT]]></title><description><![CDATA[<p>May be partially (or completely) fixed by: <a href="https://github.com/laverdet/isolated-vm/commit/4be664347bc5251de96c953b74f2bf4b5e3c6a17" rel="nofollow">https://github.com/laverdet/isolated-vm/commit/4be664347bc5251de96c953b74f2bf4b5e3c6a17</a></p>
]]></description><link>http://screeps.com/forum/post/9974</link><guid isPermaLink="true">http://screeps.com/forum/post/9974</guid><dc:creator><![CDATA[Tigga]]></dc:creator><pubDate>Tue, 20 Mar 2018 00:21:02 GMT</pubDate></item><item><title><![CDATA[Reply to IVM heap usage &amp; game objects on Invalid Date]]></title><description><![CDATA[<p>I'd also like to add that I cleared out about 5000 flags, and since then I've only had a few OOM errors. It's been much more stable. I'm still pretty close to the threshold though, and given I'm only GCL 23, there's plenty of scope for more room object visibilty.</p>
]]></description><link>http://screeps.com/forum/post/9975</link><guid isPermaLink="true">http://screeps.com/forum/post/9975</guid><dc:creator><![CDATA[Tigga]]></dc:creator><pubDate>Invalid Date</pubDate></item><item><title><![CDATA[Reply to IVM heap usage &amp; game objects on Invalid Date]]></title><description><![CDATA[<p>Hm so we should have a base level of heap that than scales with room visibility or global object count?<br />
That sounds actually pretty reasonable, the question is how demanding the dynamic heap level management would be on the system.</p>
<p>But since big (slow computing ones) screeps colonies should run with other big colonies together on one server node there should be a surplus of heap memory anyway since they should have to handle less scripts.<br />
Still, that's just in theory...</p>
<p>But since memory usage should not have extreme jumps, adjustment could be done every 20 50 or even 100 ticks.</p>
]]></description><link>http://screeps.com/forum/post/9982</link><guid isPermaLink="true">http://screeps.com/forum/post/9982</guid><dc:creator><![CDATA[MrFaul]]></dc:creator><pubDate>Invalid Date</pubDate></item><item><title><![CDATA[Reply to IVM heap usage &amp; game objects on Invalid Date]]></title><description><![CDATA[<p>Deleting my flags seemed like a short-term solution for me. My bot used the extra CPU it got from not crashing out so frequently to expand a bit, getting more room/structure/creep visibilty and pushing the game object memory size back up into the danger zone. OOM errors aren't as common as they were pre-flag deletion, but they're still happening with reasonable frequency.</p>
]]></description><link>http://screeps.com/forum/post/9986</link><guid isPermaLink="true">http://screeps.com/forum/post/9986</guid><dc:creator><![CDATA[Tigga]]></dc:creator><pubDate>Invalid Date</pubDate></item><item><title><![CDATA[Reply to IVM heap usage &amp; game objects on Wed, 21 Mar 2018 13:02:14 GMT]]></title><description><![CDATA[<p>With 1000+ Game.creeps, 4450+ Game.structures and 220+ Game.rooms I'm definetly at the limit (my rooms are only on Shard0). My heap [(heapStats.total_heap_size + heapStats.externally_allocated_size) / heapStats.heap_size_limit] runs between 76% and 105%. I only trigger gc() myself when it's &gt;110%, because only that would led to that memory error.
Normally it's ok for me, but in bad server times I got too much automatic garbage collection time added (~150-300cpu) to my ticktime. With this I got ticktimes where Game.cpu.getUsed()&gt;600.</p>
<p>This was a bad server day (20.3.) since 7am for me:
<img src="/forum/assets/uploads/files/1521578186831-6f3b26ab-3f11-428f-b3ff-c0201ce95379-image-resized.png" alt="0_1521578184240_6f3b26ab-3f11-428f-b3ff-c0201ce95379-image.png" class="img-responsive img-markdown" /></p>
<p>It normalized in the evening...</p>
]]></description><link>http://screeps.com/forum/post/9987</link><guid isPermaLink="true">http://screeps.com/forum/post/9987</guid><dc:creator><![CDATA[demawi]]></dc:creator><pubDate>Wed, 21 Mar 2018 13:02:14 GMT</pubDate></item><item><title><![CDATA[Reply to IVM heap usage &amp; game objects on Fri, 23 Mar 2018 12:19:28 GMT]]></title><description><![CDATA[<p>Currently the server has a top performance. Not seen as strong in a long time.
<img src="/forum/assets/uploads/files/1521798996098-28bc0e6a-e6c9-439e-b2cf-c6e67cf0209e-image-resized.png" alt="0_1521798995581_28bc0e6a-e6c9-439e-b2cf-c6e67cf0209e-image.png" class="img-responsive img-markdown" /></p>
<p>My script also runs very well with this. I almost can not detect any auto-GC within my ticktime, which had lately brought down my skript performance. So currently I don't have that much problems with my big heap, it's constantly at ~91%. Nice server tweaks. Thx!</p>
<p>Only RoomHistory does not seem to work that well.</p>
]]></description><link>http://screeps.com/forum/post/10012</link><guid isPermaLink="true">http://screeps.com/forum/post/10012</guid><dc:creator><![CDATA[demawi]]></dc:creator><pubDate>Fri, 23 Mar 2018 12:19:28 GMT</pubDate></item><item><title><![CDATA[Reply to IVM heap usage &amp; game objects on Wed, 28 Mar 2018 14:54:51 GMT]]></title><description><![CDATA[<p>Since monday I have massive &quot;out-of-tick&quot; heap spikes again. Even with an empty main file like:</p>
<pre><code>&quot;use strict&quot;;
module.exports.loop = function() {
    console.log(JSON.stringify(Game.cpu.getHeapStatistics()));
};
</code></pre>
<p>I'm getting this output:</p>
<pre><code class="language-json">[02:21:50][shard0]{&quot;total_heap_size&quot;:136630272,&quot;total_heap_size_executable&quot;:3670016,&quot;total_physical_size&quot;:132199368,&quot;total_available_size&quot;:253438720,&quot;used_heap_size&quot;:115367752,&quot;heap_size_limit&quot;:380633088,&quot;malloced_memory&quot;:8192,&quot;peak_malloced_memory&quot;:3157248,&quot;does_zap_garbage&quot;:0,&quot;externally_allocated_size&quot;:10403655}
[02:21:54][shard0]{&quot;total_heap_size&quot;:224628736,&quot;total_heap_size_executable&quot;:3670016,&quot;total_physical_size&quot;:223458688,&quot;total_available_size&quot;:172878960,&quot;used_heap_size&quot;:197190144,&quot;heap_size_limit&quot;:380633088,&quot;malloced_memory&quot;:8192,&quot;peak_malloced_memory&quot;:8342992,&quot;does_zap_garbage&quot;:0,&quot;externally_allocated_size&quot;:10404068}
[02:22:00][shard0]{&quot;total_heap_size&quot;:319496192,&quot;total_heap_size_executable&quot;:3670016,&quot;total_physical_size&quot;:317757464,&quot;total_available_size&quot;:88642040,&quot;used_heap_size&quot;:280341456,&quot;heap_size_limit&quot;:380633088,&quot;malloced_memory&quot;:8192,&quot;peak_malloced_memory&quot;:8342992,&quot;does_zap_garbage&quot;:0,&quot;externally_allocated_size&quot;:104044810}
[02:22:04][shard0]{&quot;total_heap_size&quot;:205230080,&quot;total_heap_size_executable&quot;:3670016,&quot;total_physical_size&quot;:203091360,&quot;total_available_size&quot;:180387432,&quot;used_heap_size&quot;:194743176,&quot;heap_size_limit&quot;:380633088,&quot;malloced_memory&quot;:8192,&quot;peak_malloced_memory&quot;:8342992,&quot;does_zap_garbage&quot;:0,&quot;externally_allocated_size&quot;:104040682}
* [02:22:08][shard0]{&quot;total_heap_size&quot;:304816128,&quot;total_heap_size_executable&quot;:3670016,&quot;total_physical_size&quot;:303294784,&quot;total_available_size&quot;:87892272,&quot;used_heap_size&quot;:281215952,&quot;heap_size_limit&quot;:380633088,&quot;malloced_memory&quot;:8192,&quot;peak_malloced_memory&quot;:8342992,&quot;does_zap_garbage&quot;:0,&quot;externally_allocated_size&quot;:104044810}
[02:22:13][shard0]{&quot;total_heap_size&quot;:202608640,&quot;total_heap_size_executable&quot;:3670016,&quot;total_physical_size&quot;:200794288,&quot;total_available_size&quot;:180377760,&quot;used_heap_size&quot;:194807280,&quot;heap_size_limit&quot;:380633088,&quot;malloced_memory&quot;:8192,&quot;peak_malloced_memory&quot;:8342992,&quot;does_zap_garbage&quot;:0,&quot;externally_allocated_size&quot;:104040682}
[02:22:17][shard0]{&quot;total_heap_size&quot;:304291840,&quot;total_heap_size_executable&quot;:3670016,&quot;total_physical_size&quot;:302934176,&quot;total_available_size&quot;:88121808,&quot;used_heap_size&quot;:280890640,&quot;heap_size_limit&quot;:380633088,&quot;malloced_memory&quot;:8192,&quot;peak_malloced_memory&quot;:8342992,&quot;does_zap_garbage&quot;:0,&quot;externally_allocated_size&quot;:104044810}
[02:22:21][shard0]Error: Isolate was disposed during execution due to memory limit
    at ()
    at runUser (/opt/engine/dist/core/runtime/make.js:162:34)
    at _tickDomainCallback (internal/process/next_tick.js:228:7)
[02:22:25][shard0]Script execution has been terminated: your isolate disposed unexpectedly, restarting virtual machine
</code></pre>
]]></description><link>http://screeps.com/forum/post/10030</link><guid isPermaLink="true">http://screeps.com/forum/post/10030</guid><dc:creator><![CDATA[demawi]]></dc:creator><pubDate>Wed, 28 Mar 2018 14:54:51 GMT</pubDate></item><item><title><![CDATA[Reply to IVM heap usage &amp; game objects on Sun, 08 Apr 2018 14:13:46 GMT]]></title><description><![CDATA[<p>I had a bit of an empire collapse due to a big war. I've recovered a bit now, and recently added some code that leads to quite a bit more room visibilty (checking for power banks pre-observer with static creeps).</p>
<p>This has lead to my heap hitting the memory limit repeatedly once more. It seems that game objects are still a major issue when it comes to heap.</p>
<p><a class="plugin-mentions-user plugin-mentions-a" href="http://screeps.com/forum/uid/74">@stuy486</a> mentioned in slack that maybe this is due to JS GC, and maybe could be tweaked. He said:</p>
<blockquote>
<p>Now armed with 15 minutes of reading on Node GC and nothing else... I wonder if, for the Screeps use case, the new-space heap size that's being used isn't large enough? This would cause a bunch of tick-only aged stuff to get moved to old-space, which might be the reason we see the heap size step up like that... This would affect larger players much more since the amount of heap used to generate <code>Game</code> is much higher.</p>
</blockquote>
<p>I do hope this is being looked at. I don't feel we should be penalized by resets/skipped ticks just because we can see a lot of game objects. Rooms visibily seems to be often the culprit.</p>
]]></description><link>http://screeps.com/forum/post/10162</link><guid isPermaLink="true">http://screeps.com/forum/post/10162</guid><dc:creator><![CDATA[Tigga]]></dc:creator><pubDate>Sun, 08 Apr 2018 14:13:46 GMT</pubDate></item><item><title><![CDATA[Reply to IVM heap usage &amp; game objects on Mon, 09 Apr 2018 05:19:07 GMT]]></title><description><![CDATA[<p>I'm not sure about the new-space old-space thing, as I mentioned in my comment, I just read a quick post about it. Seems like something that should be investigated if it hasn't already been.</p>
<p>My current experience is that I'm getting 5-10 <code>CPU time limit reached</code> messages an hour, and they are very clearly occurring when GC hits in the middle of my tick. For a period of about a week ending a couple days ago, it seemed that the 500 CPU/tick limit was relaxed. During that time, I was never getting errors, but was frequently seeing ticks that would take 700-800CPU. Given that I short circuit my code at 350CPU and average ~215CPU, this means that GC is taking 400-500CPU when it hits my code mid-tick.</p>
<p>I suspect these heap/GC issues have always been around and now they're just more obvious with IVM and the addition of <code>get_heap_statistics()</code>. I also suspect that if we're able to figure out what's going on, the servers as a whole will really benefit. Similar to <a class="plugin-mentions-user plugin-mentions-a" href="http://screeps.com/forum/uid/22">@demawi</a>, I see my used heap climb ~70MB ever tick before my code even runs. It only increases 3-5MB while my code is running.</p>
]]></description><link>http://screeps.com/forum/post/10194</link><guid isPermaLink="true">http://screeps.com/forum/post/10194</guid><dc:creator><![CDATA[stuy486]]></dc:creator><pubDate>Mon, 09 Apr 2018 05:19:07 GMT</pubDate></item><item><title><![CDATA[Reply to IVM heap usage &amp; game objects on Mon, 09 Apr 2018 22:35:22 GMT]]></title><description><![CDATA[<p>I have more problems with this: (don't know if it's also a heap problem?)</p>
<pre><code class="language-[00:06:34][shard0]Script">[00:06:38][shard0]Script execution timed out ungracefully
[00:06:43][shard0]Script execution timed out ungracefully
[00:06:48][shard0]Script execution timed out ungracefully
[00:06:53][shard0]Script execution timed out ungracefully
[00:06:58][shard0]Script execution timed out ungracefully
[00:07:03][shard0]Script execution timed out ungracefully
[00:07:07][shard0]Script execution timed out ungracefully
[00:07:12][shard0]Script execution timed out ungracefully
</code></pre>
<p>currently... each tick without getting to my code..
I already had such a phase a few days ago.where it lasted over 200 ticks..</p>
]]></description><link>http://screeps.com/forum/post/10209</link><guid isPermaLink="true">http://screeps.com/forum/post/10209</guid><dc:creator><![CDATA[demawi]]></dc:creator><pubDate>Mon, 09 Apr 2018 22:35:22 GMT</pubDate></item><item><title><![CDATA[Reply to IVM heap usage &amp; game objects on Sat, 14 Apr 2018 18:04:47 GMT]]></title><description><![CDATA[<p>Since wednsday it went back to previously described heap problems. And he doesn't stabilize any more. Currently every 3 ticks I have to call gc myself, but still getting &quot;Isolate was disposed during execution due to memory limit&quot;-errors regularily.
Frustrating... <img
      src="http://screeps.com/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f622.png?v=a1k070tfs06"
      class="not-responsive emoji emoji-emoji-one emoji--crying_face"
      title=";("
      alt="😢"
    /></p>
<p>with an empty main-file:</p>
<pre><code class="language-json[20:00:53][shard0]Script">[20:00:57][shard0]{&quot;total_heap_size&quot;:140148736,&quot;total_heap_size_executable&quot;:3670016,&quot;total_physical_size&quot;:131834272,&quot;total_available_size&quot;:252732968,&quot;used_heap_size&quot;:115534184,&quot;heap_size_limit&quot;:380633088,&quot;malloced_memory&quot;:8192,&quot;peak_malloced_memory&quot;:3157248,&quot;does_zap_garbage&quot;:0,&quot;externally_allocated_size&quot;:104036698}
[20:01:01][shard0]{&quot;total_heap_size&quot;:234536960,&quot;total_heap_size_executable&quot;:3670016,&quot;total_physical_size&quot;:225970904,&quot;total_available_size&quot;:175003304,&quot;used_heap_size&quot;:195191992,&quot;heap_size_limit&quot;:380633088,&quot;malloced_memory&quot;:8192,&quot;peak_malloced_memory&quot;:7507824,&quot;does_zap_garbage&quot;:0,&quot;externally_allocated_size&quot;:104040970}
[20:01:06][shard0]{&quot;total_heap_size&quot;:323624960,&quot;total_heap_size_executable&quot;:3670016,&quot;total_physical_size&quot;:322073392,&quot;total_available_size&quot;:76740336,&quot;used_heap_size&quot;:291719864,&quot;heap_size_limit&quot;:380633088,&quot;malloced_memory&quot;:8192,&quot;peak_malloced_memory&quot;:7507824,&quot;does_zap_garbage&quot;:0,&quot;externally_allocated_size&quot;:104047668}
[20:01:10][shard0]{&quot;total_heap_size&quot;:206999552,&quot;total_heap_size_executable&quot;:3670016,&quot;total_physical_size&quot;:202776616,&quot;total_available_size&quot;:182927992,&quot;used_heap_size&quot;:192229592,&quot;heap_size_limit&quot;:380633088,&quot;malloced_memory&quot;:8192,&quot;peak_malloced_memory&quot;:7507824,&quot;does_zap_garbage&quot;:0,&quot;externally_allocated_size&quot;:104040970}
[20:01:14][shard0]{&quot;total_heap_size&quot;:314101760,&quot;total_heap_size_executable&quot;:3670016,&quot;total_physical_size&quot;:303882056,&quot;total_available_size&quot;:87456760,&quot;used_heap_size&quot;:280090032,&quot;heap_size_limit&quot;:380633088,&quot;malloced_memory&quot;:8192,&quot;peak_malloced_memory&quot;:7507824,&quot;does_zap_garbage&quot;:0,&quot;externally_allocated_size&quot;:104045242}
[20:01:19][shard0]{&quot;total_heap_size&quot;:205426688,&quot;total_heap_size_executable&quot;:3670016,&quot;total_physical_size&quot;:201582624,&quot;total_available_size&quot;:182969808,&quot;used_heap_size&quot;:192228672,&quot;heap_size_limit&quot;:380633088,&quot;malloced_memory&quot;:8192,&quot;peak_malloced_memory&quot;:7507824,&quot;does_zap_garbage&quot;:0,&quot;externally_allocated_size&quot;:104040970}
[20:01:23][shard0]{&quot;total_heap_size&quot;:308334592,&quot;total_heap_size_executable&quot;:3670016,&quot;total_physical_size&quot;:301953816,&quot;total_available_size&quot;:89031408,&quot;used_heap_size&quot;:279926960,&quot;heap_size_limit&quot;:380633088,&quot;malloced_memory&quot;:8192,&quot;peak_malloced_memory&quot;:7507824,&quot;does_zap_garbage&quot;:0,&quot;externally_allocated_size&quot;:104045242}
[20:01:27][shard0]{&quot;total_heap_size&quot;:205950976,&quot;total_heap_size_executable&quot;:3670016,&quot;total_physical_size&quot;:201367544,&quot;total_available_size&quot;:182943552,&quot;used_heap_size&quot;:192254952,&quot;heap_size_limit&quot;:380633088,&quot;malloced_memory&quot;:8192,&quot;peak_malloced_memory&quot;:7507824,&quot;does_zap_garbage&quot;:0,&quot;externally_allocated_size&quot;:104040970}
[20:01:31][shard0]{&quot;total_heap_size&quot;:312528896,&quot;total_heap_size_executable&quot;:3670016,&quot;total_physical_size&quot;:302439016,&quot;total_available_size&quot;:88842216,&quot;used_heap_size&quot;:280037088,&quot;heap_size_limit&quot;:380633088,&quot;malloced_memory&quot;:8192,&quot;peak_malloced_memory&quot;:7507824,&quot;does_zap_garbage&quot;:0,&quot;externally_allocated_size&quot;:104045242}
[20:01:36][shard0]{&quot;total_heap_size&quot;:206475264,&quot;total_heap_size_executable&quot;:3670016,&quot;total_physical_size&quot;:202223896,&quot;total_available_size&quot;:182919864,&quot;used_heap_size&quot;:192277880,&quot;heap_size_limit&quot;:380633088,&quot;malloced_memory&quot;:8192,&quot;peak_malloced_memory&quot;:7507824,&quot;does_zap_garbage&quot;:0,&quot;externally_allocated_size&quot;:104040970}
[20:01:40][shard0]{&quot;total_heap_size&quot;:312528896,&quot;total_heap_size_executable&quot;:3670016,&quot;total_physical_size&quot;:302239240,&quot;total_available_size&quot;:86718288,&quot;used_heap_size&quot;:280431392,&quot;heap_size_limit&quot;:380633088,&quot;malloced_memory&quot;:8192,&quot;peak_malloced_memory&quot;:7507824,&quot;does_zap_garbage&quot;:0,&quot;externally_allocated_size&quot;:104045242}
[20:01:45][shard0]{&quot;total_heap_size&quot;:208048128,&quot;total_heap_size_executable&quot;:3670016,&quot;total_physical_size&quot;:203117480,&quot;total_available_size&quot;:182891712,&quot;used_heap_size&quot;:192277784,&quot;heap_size_limit&quot;:380633088,&quot;malloced_memory&quot;:8192,&quot;peak_malloced_memory&quot;:7507824,&quot;does_zap_garbage&quot;:0,&quot;externally_allocated_size&quot;:104040970}
[20:01:49][shard0]{&quot;total_heap_size&quot;:310681600,&quot;total_heap_size_executable&quot;:3670016,&quot;total_physical_size&quot;:301337400,&quot;total_available_size&quot;:85588216,&quot;used_heap_size&quot;:280931136,&quot;heap_size_limit&quot;:380633088,&quot;malloced_memory&quot;:8192,&quot;peak_malloced_memory&quot;:7507824,&quot;does_zap_garbage&quot;:0,&quot;externally_allocated_size&quot;:104045242}
 
</code></pre>
]]></description><link>http://screeps.com/forum/post/10302</link><guid isPermaLink="true">http://screeps.com/forum/post/10302</guid><dc:creator><![CDATA[demawi]]></dc:creator><pubDate>Sat, 14 Apr 2018 18:04:47 GMT</pubDate></item><item><title><![CDATA[Reply to IVM heap usage &amp; game objects on Invalid Date]]></title><description><![CDATA[<p>Me again!</p>
<p>It's better than it was, but I'm still seeing heap limits hit when I get too much room visibility. Up to 200 rooms visibile before it starts crapping out now.</p>
<p>I still feel fairly strongly that we shouldn't be seeing errors as users just because we can see too much stuff. It's a reallt weird game mechanic.</p>
]]></description><link>http://screeps.com/forum/post/10367</link><guid isPermaLink="true">http://screeps.com/forum/post/10367</guid><dc:creator><![CDATA[Tigga]]></dc:creator><pubDate>Invalid Date</pubDate></item><item><title><![CDATA[Reply to IVM heap usage &amp; game objects on Invalid Date]]></title><description><![CDATA[<p>I've been moving rooms from shard0 to shard1/2 to reduce heap size, and have a similar experience as Tigga visible rooms was close to 200. I've now reduced it to below 180, and have no longer problem with heap size. It is probably a combination of your improvements and my room-reduction.</p>
<p>I'll add graph of global age for the last month, where most resets the last 10 days have been code uploads.</p>
<p><img src="/forum/assets/uploads/files/1524089827441-global-resized.png" alt="0_1524089825560_global.PNG" class="img-responsive img-markdown" /></p>
]]></description><link>http://screeps.com/forum/post/10368</link><guid isPermaLink="true">http://screeps.com/forum/post/10368</guid><dc:creator><![CDATA[Kasami]]></dc:creator><pubDate>Invalid Date</pubDate></item><item><title><![CDATA[Reply to IVM heap usage &amp; game objects on Invalid Date]]></title><description><![CDATA[<p>as long as you're tweaking the server and those heap spikes are a regularily problem, it would be nice if you could spend more heap memory (in general, gcl-dependent, or per claimed room don't know what's possilble).. so nobody has to worry about being thrown out of the game after a server tweak</p>
]]></description><link>http://screeps.com/forum/post/10369</link><guid isPermaLink="true">http://screeps.com/forum/post/10369</guid><dc:creator><![CDATA[demawi]]></dc:creator><pubDate>Invalid Date</pubDate></item><item><title><![CDATA[Reply to IVM heap usage &amp; game objects on Invalid Date]]></title><description><![CDATA[<p>Still having issues at about 200 rooms. It's usually around 202/203 it starts going.</p>
<p>Is there an ETA for a fix? I heard rumours persistent game objects were planned. It'd be nice to get this sooner rather than later, or maybe a +20% heap allocation while we're waiting.</p>
]]></description><link>http://screeps.com/forum/post/10472</link><guid isPermaLink="true">http://screeps.com/forum/post/10472</guid><dc:creator><![CDATA[Tigga]]></dc:creator><pubDate>Invalid Date</pubDate></item><item><title><![CDATA[Reply to IVM heap usage &amp; game objects on Invalid Date]]></title><description><![CDATA[<p><a class="plugin-mentions-user plugin-mentions-a" href="http://screeps.com/forum/uid/138">@tigga</a></p>
<blockquote>
<p>maybe a +20% heap allocation while we're waiting</p>
</blockquote>
<p>That would just shift the visible rooms limit to ~240. Do you think the 20% increase solves the issue for you?</p>
]]></description><link>http://screeps.com/forum/post/10473</link><guid isPermaLink="true">http://screeps.com/forum/post/10473</guid><dc:creator><![CDATA[artch]]></dc:creator><pubDate>Invalid Date</pubDate></item><item><title><![CDATA[Reply to IVM heap usage &amp; game objects on Invalid Date]]></title><description><![CDATA[<p><a class="plugin-mentions-user plugin-mentions-a" href="http://screeps.com/forum/uid/3">@artch</a> I guess there's other things going into the equation (such as creeps/structures).</p>
<p>I think it would probably be sufficient until we get persistent game objects. My understanding was that the ETA was that was not too far away. I'm GCL 24 right now, so there's only 20% more CPU I can get.</p>
]]></description><link>http://screeps.com/forum/post/10474</link><guid isPermaLink="true">http://screeps.com/forum/post/10474</guid><dc:creator><![CDATA[Tigga]]></dc:creator><pubDate>Invalid Date</pubDate></item><item><title><![CDATA[Reply to IVM heap usage &amp; game objects on Invalid Date]]></title><description><![CDATA[<p>Alright, we've temporarily increased heap limit by 64 MB. We'll keep an eye on our servers, to see if they actually can mantain such memory usage.</p>
]]></description><link>http://screeps.com/forum/post/10475</link><guid isPermaLink="true">http://screeps.com/forum/post/10475</guid><dc:creator><![CDATA[artch]]></dc:creator><pubDate>Invalid Date</pubDate></item><item><title><![CDATA[Reply to IVM heap usage &amp; game objects on Invalid Date]]></title><description><![CDATA[<p>Just a individual feedback: For me 64MB is not enough to stand the ~100MB spikes. The time before the tweak my memory has magically stabilized, currently he doesn't. I don't have to call gc() myself anymore, to prevent out of memory IVM resets. But intick-autoGC triggers regularly and consumes a significant amount of cpu. Before I was at ~265cpu/tick in average, currently it's over 300.</p>
]]></description><link>http://screeps.com/forum/post/10477</link><guid isPermaLink="true">http://screeps.com/forum/post/10477</guid><dc:creator><![CDATA[demawi]]></dc:creator><pubDate>Invalid Date</pubDate></item><item><title><![CDATA[Reply to IVM heap usage &amp; game objects on Invalid Date]]></title><description><![CDATA[<p><a class="plugin-mentions-user plugin-mentions-a" href="http://screeps.com/forum/uid/22">@demawi</a> Please elaborate what tweak are you referring to?</p>
]]></description><link>http://screeps.com/forum/post/10478</link><guid isPermaLink="true">http://screeps.com/forum/post/10478</guid><dc:creator><![CDATA[artch]]></dc:creator><pubDate>Invalid Date</pubDate></item><item><title><![CDATA[Reply to IVM heap usage &amp; game objects on Invalid Date]]></title><description><![CDATA[<p>I meant the increase of the heap limit by 64MB (I have no knowledge about other changes today)</p>
]]></description><link>http://screeps.com/forum/post/10479</link><guid isPermaLink="true">http://screeps.com/forum/post/10479</guid><dc:creator><![CDATA[demawi]]></dc:creator><pubDate>Invalid Date</pubDate></item><item><title><![CDATA[Reply to IVM heap usage &amp; game objects on Invalid Date]]></title><description><![CDATA[<p><img src="/forum/assets/uploads/files/1524842926535-c161874d-3d06-4c3d-b866-377d52533186-image-resized.png" alt="0_1524842925244_c161874d-3d06-4c3d-b866-377d52533186-image.png" class="img-responsive img-markdown" /></p>
<p>My heap is a lot more unstable after today. It reached thousands of ticks on the same global (purple line) before, but now its resetting a lot more often now.</p>
]]></description><link>http://screeps.com/forum/post/10480</link><guid isPermaLink="true">http://screeps.com/forum/post/10480</guid><dc:creator><![CDATA[Geir1983]]></dc:creator><pubDate>Invalid Date</pubDate></item><item><title><![CDATA[Reply to IVM heap usage &amp; game objects on Invalid Date]]></title><description><![CDATA[<p><a class="plugin-mentions-user plugin-mentions-a" href="http://screeps.com/forum/uid/1396">@geir1983</a> said in <a href="/forum/post/10480">IVM heap usage &amp; game objects</a>:</p>
<blockquote>
<p>My heap is a lot more unstable after today. It reached thousands of ticks on the same global (purple line) before, but now its resetting a lot more often now.</p>
</blockquote>
<p>I wonder what's going on there. The change was made at 12:30, right? I didn't see the 9:30 change on my plots, but I think you're on a different shard. It's the 9:30 change that seems to have messed something up for you.</p>
]]></description><link>http://screeps.com/forum/post/10481</link><guid isPermaLink="true">http://screeps.com/forum/post/10481</guid><dc:creator><![CDATA[Tigga]]></dc:creator><pubDate>Invalid Date</pubDate></item><item><title><![CDATA[Reply to IVM heap usage &amp; game objects on Invalid Date]]></title><description><![CDATA[<p>Just wait a day or two, it should calibrate itself after some time and become more stable.</p>
]]></description><link>http://screeps.com/forum/post/10483</link><guid isPermaLink="true">http://screeps.com/forum/post/10483</guid><dc:creator><![CDATA[artch]]></dc:creator><pubDate>Invalid Date</pubDate></item></channel></rss>