It's well known that the Java folks work hard at wringing extra performance in each version of the JDK. For example, the fork-join pool (which underlies parallel streams) got a nice
boost by tweaking how tasks are scheduled. And ConcurrentHashMap now does better with Comparable keys. But in general, I believe that real performance gains come from making it possible for the everyday programmer to do the right thing.
In the context of Java 8, that means parallel streams and parallel algorithms. Our challenge is to keep all those cores busy that we have at our disposal. That's hard to do by hand, but if you make a stream parallel, or call parallel sort, then it is automatic. So, if you have computationally intensive tasks, then
you should be able to get a nice boost by using the new tools to distribute the work over multiple processors.
Of course, that's not the only performance issue. Some people are more troubled by garbage collection or I/O. What perfomance bottleneck do you encounter in your work?
Cheers,
Cay