|
From: Julian S. <js...@ac...> - 2006-01-10 14:05:49
|
[On amd64, once clflush is fixed, java JIT spins at 100% CPU] Keith You're the second person to report this problem - Martin has the same on x86. I don't know why the spin happens. One possibility is that it could be due to atomic insns used for synchronisation: http://www.valgrind.org/docs/manual/manual-core.html#manual-core.limits: Atomic instruction sequences are not properly supported, in the sense that their atomicity is not preserved. This will affect any use of synchronization via memory shared between processes. They will appear to work, but fail sporadically. At this point perhaps the best thing is for you to put together a simple test case so I can at least try and reproduce the problem at this end. It's going to take a bit of GDBing to see what's going on. One quick thing to do: rerun V with --trace-flags=10000000 --trace-notbelow=999999. This prints out one line for each block translated and might give a clue about the names of the function it gets stuck in. Send the last hundred or so lines of the log. J |