Re:You could have invented the LMAX Disruptor, if only you w...
by jandrese on Thursday August 23, 2018 @11:11AM
(#17827900)
Isn't the memory use itself a big problem on modern architectures? Or has it gotten better lately since CPU clocks have been relatively flat and memory clocks have been creeping up? The problem with the "allocate-and-discard" model of programming in the past is that it thrashes the hell out of the cache, which means lots of trips to main memory, which is slow on modern machines.
When you get an article like this going "holy shit, where have you been all my life circular buffers" it emphasizes the point. You wanna go fast you have to avoid invalidating cache as much as possible.
Re:You could have invented the LMAX Disruptor, if only you w...
by dagenix on Thursday August 23, 2018 @11:17AM
(#17827952)
It doesn't sound like you understand how memory Management in Java works. In Java, you have a defined heap size. Java will claim memory in order to support that heap. If you are unhappy about how much memory it is using, you can change the heap size.
Re:You could have invented the LMAX Disruptor, if only you w...
by jerven on Thursday August 23, 2018 @12:19PM
(#17828504)
Or use ShenadoahGC ;) and it will uncommit heap not in use. Or wait for http://openjdk.java.net/jeps/8204089 to land.
In any case vastly improving idle RSS consumption.
Re:You could have invented the LMAX Disruptor, if only you w...
by tomaha on Thursday August 23, 2018 @11:06AM
(#17827845)
Memory usage is still terrible with Java but at least there are plans to address part of it with value types etc. But for a web service performance is pretty good (just look at techempower benchmarks and the fact that most high scale companies use Java for a significant part of their infrastructure). If you need to talk about startup time you don't need scalablitiy or really want a different solution/architecture.
A more famous example might be Minecraft, where even with its blocky graphics it can tax a high end gaming machine when you turn the view distance up to a range that almost no other engine would consider long. The engine has been rewritten in other languages where it is much faster, notably the Microsoft version and the Phone version.