[Date Prev][Date Next][Thread Prev][Thread Next]
[Date Index]
[Thread Index]
- Subject: Re: GC stall in luaC_separateudata
- From: Rici Lake <lua@...>
- Date: Mon, 3 Dec 2007 11:39:34 -0500
On 3-Dec-07, at 8:34 AM, Niklas Frykholm wrote:
I am seeing a GC stall of about 8 ms in luaC_separateudata(). After
looking at the code and reading chapter 31 of Programming in Lua, I
think that there simply are too many userdata objects in my lua state.
That's probably not the issue. luaC_separateudata() atomically loops
over all the userdata
objects which are available for garbage collection. So the pause time
reflects the number
of objects being collected, not the number of objects available.
Since you have a lot of objects in your lua univese, the incremental
garbage collector
isn't running often enough, and when it does run you have a large
number of userdata's
to collect. (I'm referring to the total number of objects, not just the
userdatas.)