This issue is not a bug. It depends on TM's design for thread
destruction. As I understand, Weldon suggested to serialized the
process of thread termination/creation in TM. The gc_thread_kill
should be invoked in the serialization part. If that's true, the spin
lock can be removed. I put the spin lock there because TM redesign is
not finished. When it's done, we will remove the spin lock, but then
it's TM's responsibility to invoke gc_thread_kill at proper moment.
Thanks,
xiaofeng
On 8/3/07, Gregory Shimansky (JIRA) <[EMAIL PROTECTED]> wrote:
[drlvm][gc_gen] Thread termination in thread.SmallStackThreadTest is
terribly slow
----------------------------------------------------------------------------------
Key: HARMONY-4601
URL: https://issues.apache.org/jira/browse/HARMONY-4601
Project: Harmony
Issue Type: Bug
Components: DRLVM
Environment: Linux/ia32
Reporter: Gregory Shimansky
The test creates a big number of threads (4000) that mostly do nothing.
Threads are waiting and then are joined by the main thread. This mostly
doesn't consume CPU on the machine. But then all of these threads go through
gc_thread_kill function. It executes thread deletion from a list under a
global spin-lock, so all 4000 threads are waiting on it using CPU at the
same time since the lock spins inside of the loop.
This test usually doesn't finish on linux/ia32 (for some reason it works
on other platforms) and times out. So I created this bug report to exclude
it.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
--
http://xiao-feng.blogspot.com