Re: AssertionError on barrier addWaiter
Amaury Denoyelle <[email protected]> Fri, 5 May 2017 17:10:18 +0200
| Newsgroups | gmane.comp.java.grinder.user |
|---|---|
| Message-ID | <20170505151018.REljP69kU%[email protected]> |
Gary Mulder <[email protected]> wrote: > On 5 May 2017 at 08:02, Amaury Denoyelle <[email protected]> wrote: > > > > Do you have any idea of the cause of the problem ? Is 10,000 threads > > waiting on one barrier a little bit overkill ? > > > I can't speak about your barrier exception, but I can say that 5000 threads > per server is quite a large number for the JVM to manage. With reasonably > simple test code I usually have a rule of thumb of no more than 100 threads > per core with random sleeps between HTTP requests. This would imply a 50 > core server for 5000 concurrent threads. > > However you may have a bigger problem if a many of those 5000 threads are > being synchronised at a barrier. You say that the threads aren't > synchronised, but with that number of threads the Linux scheduler is likely > being hammered as many threads become ready to run at the same time. A 16 > core hyper-threaded server has 32 hyper-cores, so the Linux scheduler can > physically only concurrently schedule 32 threads. If you're using Windows > the problem is likely worse as the Linux scheduler is a lot more > lightweight than the Windows scheduler. > > Finally, keep an eye on your JVM Garbage Collection. With some many threads > creating objects your GC is likely running quite hot. > > In all, you will be fighting a lot with your test execution performance and > need to prove to yourself that it isn't the primary bottleneck, otherwise > your test time will reflect the performance of your test harness and not > system under test. Thank you for your quick answer. I currently use two agents, with 16 cores on each. You are maybe right on the fact that it is too much for the system, but I really need 10,000 threads. I will maybe try to add more agents, but I do not have countless of these servers. That being said, I find that the tests on the agents are accurate. I do not measure precise timer, but just check some basic conditions and all 10,000 tests are finely executed. All agents are doing their works fine. The problem I encounter is on the console, on a dedicated host without other processes so that confuses me a little. -- Amaury Denoyelle ------------------------------------------------------------------------------ Check out the vibrant tech community on one of the world's most engaging tech sites, Slashdot.org! http://sdm.link/slashdot