Viewing profile — NobleExpress
NobleExpress
HN member- Joined
- Fri, Mar 17, 2023, 11:21 PM UTC
- HN karma
- 61
- Public activity
- 24 items
- HN profile
- View on Hacker News ↗
About NobleExpress
No profile information was provided.
Recent public activity
-
comment
Comment #40510402
Probably. But they still write “On a side note, Oracle's ZGC Generational—GenZGC—is not supported in production yet.” GenZGC is supported on OpenJDK 21 onwards [1]. [1]: https://in…
- story
-
comment
Comment #39989831
Ah right. I assumed it was a native image.
-
comment
Comment #39989777
-server is only a thing for HotSpot. They mention that HotSpot works perfectly fine. There is no option of "-server" for Graal native-image. It has "-O{0,1}" though for turning opt…
-
comment
Comment #39989623
Interesting. Perhaps you can inspect the disassembly of the function in question when using Graal and HotSpot. It is likely related to that. Another debugging technique we use for …
-
comment
Comment #39872505
Honestly, I was never convinced that concentrating all developer effort onto Wayland was the best idea. Wayland seemed like a massive over-correction from X11, where the protocol a…
-
comment
Comment #39823829
Using microbenchmarks to measure allocation performance is a bit misleading. The optimizations that occurred in the microbenchmarks may not actually occur for real-world code. Thre…
-
comment
Comment #39823794
They're (effectively) the same. Bump allocation is the term in GC literature and is the more general term. Arena allocation can be slightly more nuanced as you can throw an entire …
-
comment
Comment #35509881
Well page protection is expensive which is why the predominant way to implement concurrent copying/compaction until recently was using read barriers (and still is -- ART seems to b…
-
comment
Comment #35503640
MESI cache coherency (and its derivatives) [1] means that you can have exclusive writes to cache if and only if no other core tries to access that data. I would think most if not a…
-
comment
Comment #35503565
> RC is super cheap. Seriously. You can do about several billion of them per second. Right. You bump allocate faster, however. RC is an additional operation to the allocation reque…
-
comment
Comment #35498936
I will say that you seem to be stating "smearing that over total execution time tends to give better results" without proof as well. I certainly don't think using atomic operations…
-
comment
Comment #35498839
I'm aware. Rust isn't a conventional "managed language" which is why I consciously omitted it from the above list. In an increasingly multi-threaded world, you just have to use the…
-
comment
Comment #35498763
Thanks for the links!
-
comment
Comment #35495698
Yes and no. LXR is a highly optimized deferred and coalesced reference counting (amongst many other optimizations) GC and it looks nothing like the RC implementations you see in ot…
-
comment
Comment #35495084
I've always heard of the "Swift elides reference counts" statements but I've never seen it substantiated. I don't claim to be a Swift GC expert by any means, but the impression I g…
-
comment
Comment #35494257
Real time GCs exist such as the IBM Metronome GC. Though I'll be honest and say I haven't heard of many real-time GCs other than the Metronome one. Certainly many new GCs have redu…
-
comment
Comment #35494047
Certainly interesting, but there are no performance numbers mentioned in the white paper comparing userfaultfd to read barriers. So the actual benefit to switching to userfaultfd i…
-
comment
Comment #35481300
Great read. Reminds me of this checklist: https://www.sigplan.org/Resources/EmpiricalEvaluation/ There is a bunch of overlap with what Gernot talks about, but I think it's more gen…
-
comment
Comment #35407095
Hm? G1 is a generational GC? And so is Serial/Parallel. And work on generational ZGC is ongoing [1]. Not sure what you're referring to here. [1]: https://openjdk.org/jeps/439
-
comment
Comment #35215892
[dead]
-
comment
Comment #35215862
Ehh yes and no. Many languages indeed use conservative GCs, but that is because it is significantly easier to implement than precise GCs which require stack maps etc. I don't think…
-
comment
Comment #35204401
Someone ported the G1 collector to JikesRVM [1], a research Java VM. It's not a production case-study of course, but interesting nonetheless. [1]: https://users.cecs.anu.edu.au/~st…
-
comment
Comment #35204301
C# has interior pointers as well and it is a language with a precise, moving garbage collector. The deal with Go is that is has a concurrent mark-sweep collector, so it is non-movi…