9

Jetbrains Java runtime.
I just disabled it and enabled system Java runtime instead. I should have done this months ago, or maybe even years. The performance went from terrible to amazing in just a few seconds. Wow!

Comments
  • 4
    Without knowing anything about this, my gut feeling is that the jetbrains runtime is a highly-encumbered debug build, which would explain the performance difference.

    If so, this is intentional and you might lose features or debuggability in some cases.

    Just a hunch.
  • 0
  • 2
    @junon
    Its just a version optimized for it's intended use. I'm really shocked at the number of java people who don't even consider optimizing the runtime.

    "These modifications include: Subpixel Anti-Aliasing, enhanced font rendering on Linux, HiDPI support, ligatures, some fixes for native crashes not presented in official builds, and other small enhancements"
  • 0
    @SortOfTested Oh so it's the runtime the intellij Editor uses itself?

    Also agreed about the optimizing runtimes bit.
  • 1
    @SortOfTested oh..I install ide and write, never optimized java runtime ever. What am I missing? Not arguing, but you being shocked means I’ve been doing it wrong
  • 5
    @d-fanelli
    The default JRE is a generic swiss army knife of everything under the sun. On a big project with a lot of cost, you can obtain a lot of advantages in terms of memory, deployment and spinup times by cutting the things you don't need out. You can also add features that are not typically present (visuals and rendering things like jetbrains adds, or whatever you happen to need).

    Another interesting use is being able to ship an internal service framework that people can use, but not see the code for, to prevent IP leakage if you wanted to. Amazon actually made a process out of this with Apollo (SOA) and brazil (integrated platform builds) before this functionality existed.

    Jigsaw, jlink enable all this in fairly easy fashion.

    And then there's considerations like whether or not a hotspot JVM would benefit perf, which seems to never be a point of conversation.
  • 0
    @SortOfTested Sorry, I understood bits and pieces of that lol. Looking up ANS Brazil...wow I must be terrible if half of what you said is foreign language to me
  • 1
    @d-fanelli
    Just internal bits at amazon. There's been a lot written about Apollo, much less about brazil. Seeing java at the largest possible scale is enlightening
  • 0
    @SortOfTested ok just feeling down bc of all these things I never heard of. Jigsaw, Apollo, all these cutting edge tools that I never met professionally. It’s ok, I should’ve read up about them but I feel like a caveman not knowing them. It’s like every week a hot new thing comes out that I should know else the industry (not you) says ha ha u cant code. Btw not putting this on you, you put a lot into your post!
  • 0
    Update: My laptop also lasts 1-2 hours longer while programming. The only bug I found so far, that file creation popup doesn't focus automatically, so I have to click it, but I can surely live with that.
  • 1
    @d-fanelli

    > Jigsaw, Apollo, all these cutting edge tools that I never met professionally

    There are tons of tools you haven't met professionally. You can always play with them in your own free time though ;) and there will be millions of cool things that will never appear on your screen or even hit your ethernet cord. That is just how large the industry is now.
  • 0
    Java has a lot of shiny stuff under the hood.

    But finding the necessary documentation can be ... terrifying.

    Terrifying because Oracle's Java documentation is bit rot and erratic - a hierarchy doesn't exist, pages have random generated names... And so on.

    (Open-) JDK pages and bug tracker the same...

    A lot of the internals, eg choice of GCs, configuration of GC, ...require a background knowledge which requires documentation....

    It's the thing that's really fucked up in Java: Documentation is non existent or a funny minesweeper game where you have to expect that every assumption made is wrong, as the documentation is incorrect.

    And yeah, like @SortOfTested said, Java has a lot of gems - in configuration and build / linking, too.

    Just that it requires a lot of patience....
Add Comment