[
https://issues.apache.org/jira/browse/NETBEANS-2291?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16799219#comment-16799219
]
Shevek commented on NETBEANS-2291:
----------------------------------
[~TLN] I'm more than happy to grab more information from the heap if it's
relevant; I can grab everything up to and including perf and gdb-level traces,
and I have enough RAM to dump and analyze a heap of this size. If you or anyone
wants more information to lead to a fix, please ask specifically, and I will
grab it. What I don't have is a very large number of hours to debug this; I'm
here because slowness in netbeans is no longer permitting me to do my day job,
and I'm trying to contribute to the netbeans community, but my day job remains
my priority.
I've attempted to show thread dumps which all fall within a single theme, and I
have kept back those which show other classes of issue:
1. Threads are waiting for the compiler when many of them could happily
continue without that information. There isn't good control over who calls the
compiler, and for what, and when.
2. GUI threads block on waitIOLoadLowerThan when a background thread is
performing I/O. This is backwards. GUI interactivity should have priority.
3. When I dig into the compiler, I find that the NetBeans-provided FileSystem
implementation has been plugged into javac, and is much slower than javac is
expecting - I have more detailed profiles to show this, but it's apparently
taking 50% of the compiler time doing lookups, finding source roots, and so
forth. So the background work is taking longer than it should.
We ALSO have a (presumed) compiler bug in JDK11; right now NB10 on JDK8 is
working (relatively) OK.
> NetBeans is unusably slow
> -------------------------
>
> Key: NETBEANS-2291
> URL: https://issues.apache.org/jira/browse/NETBEANS-2291
> Project: NetBeans
> Issue Type: Bug
> Affects Versions: 8.2, 10.0
> Environment: Ubuntu 18.10
> Linux 4.18.0
> 12 core Xeon E-2176M with 64Gb RAM
> -Xmx2536m (2.5Gb for NB, of which it uses about 1.7G)
> NetBeans 10vc2, 10vc5, 8.2
> JDK 11.0.1
> JDK 1.8
> G1GC, CMS GC, Serial GC
> Reporter: Shevek
> Priority: Critical
> Labels: performance, usability
> Attachments: netbeans-10vc5-jdk8-hang-gototype.txt.tdump,
> netbeans-10vc5-jdk8-hang-progressutils.txt.tdump,
> netbeans-10vc5-jdk8-hang.txt.tdump, open-file-slow-01.txt.tdump,
> open-file-slow-02.txt.tdump, open-file-slow-03.txt.tdump, slow-stack-00.txt
>
>
> I used to use NetBeans 8 on JDK8, it was tolerable, but slow.
> Now I have a new laptop, I've tried nb8, nb10 on jdk8, jdk11, with g1gc,
> cmsgc, other gc. They are all UNUSABLY slow. By which I mean, it takes over a
> minute just to open a file.
> Mostly this is because things are waiting for things waiting for very
> inefficiently implemnted file I/O, editor parsing, or things like that. I've
> watched a 12-core Xeon chip spend over 4 hours just attempting to handle the
> Active Reference Queue Daemon thread.
> The slowdown is somewhat incremental - I can escape it as long as I'm happy
> to restart NetBeans every hour or so (which I'm not happy to do).
> Attached a stack dump to get you started, this took over a minute to open a
> 284-line Java file from idle.
> Please feel free to ask all the obvious questions, although I'm fairly sure
> all the obvious things have been done. Mostly, I've got GC down to a
> negligible amount.
> If there's one or more features of NetBeans I can disable to get acceptable
> behaviour while still being able to realistically edit Java code, please tell
> me and I will disable them because I am at the end of my rope after using
> (and developing for) NetBeans for nearly 10 years. If I can get IntelliJ to
> load a Java/Gradle project neatly before this gets fixed, I'm gone.
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]
For further information about the NetBeans mailing lists, visit:
https://cwiki.apache.org/confluence/display/NETBEANS/Mailing+lists