Re: which GC optimizations work better with Clojure?

2016-04-30 Thread Timothy Baldridge
I should mention here that if you are tuning the GC anywhere except at the end of your development cycle you're probably doing it wrong. 99% of the time you'll get better performance by reviewing your algorithms, running a CPU profiler, generating less garbage (via transients or something like

Re: which GC optimizations work better with Clojure?

2016-04-30 Thread Nando Breiter
I've found Censum by jClarity to be an excellent tool to tune JVM GC parameters to your specific application running on a particular server. You add a few GC parameters to enable logging that the tool needs, run your app under load for enough time to get sufficient data, and then feed the log

which GC optimizations work better with Clojure?

2016-04-30 Thread Niels van Klaveren
GC parameters used by a lot of projects are handed down like traditions for years, even spreading to others. They're almost never re-evaluated, which means they might actually lose out on new performance improvements, or worse, might even cause performance regressions. Most parameters in the

Re: which GC optimizations work better with Clojure?

2016-04-29 Thread dennis zhuang
It depends. CMS or G1 would be better in common cases as you said, clojure runtime has many short-lived objects. We are using G1 in your production. But sometimes you would prefer system throughput rather than GC pause time, you may try Parallel GC. 2016-04-29 19:02 GMT+08:00 Camilo Roca

which GC optimizations work better with Clojure?

2016-04-29 Thread Camilo Roca
Following this thread: http://stackoverflow.com/questions/16695874/why-does-the-jvm-full-gc-need-to-stop-the-world I was wondering if anybody has some experience regarding GC optimizations that would work better for Clojure than the default: stop-the-world approach. My point being that given