Viewing profile — NovaX
NovaX
HN member- Joined
- Wed, May 04, 2011, 6:17 AM UTC
- HN karma
- 288
- Public activity
- 166 items
- HN profile
- View on Hacker News ↗
About NovaX
Recent public activity
-
comment
Comment #47163281
Go tried that [1], a failed experiment that was a complex NIH version of the generational hypothesis. They currently use a CMS-stye collector. [1] https://docs.google.com/document/…
-
comment
Comment #46455641
Thanks for the corrected evaluation. Just for your awareness, the HotSpot team is working on offering a spectrum of AOT/JIT options under the Leyden project [1]. Currently one has …
-
comment
Comment #46448556
That is just a normal JVM with optional Graal components if enabled, but not being used. The default memory allocation is based on a percentage of available memory and uncommitted …
-
comment
Comment #43276131
In both the asMap() view unwraps the opinionated Cache facade to the underlying bounded map. There are a lot of little gotchas so it is best to not believe your own results until p…
-
comment
Comment #43275392
This was a good attempt but flawed. 1. You should use JMH to handle warmup, jit, timings, averaging of runs, etc. You might enjoy the following talks on the subject, though I am su…
-
comment
Comment #43233368
How about the senior engineer level error of forking Doug Lea's concurrent data structures only to make them operate in worst-case time complexity? Found this doozy recently. [1] h…
-
comment
Comment #42928007
I think the idea is that the cache is so large that hot data won't be forced out by one-hit wonders. In this 2017 talk [1], the speaker says that Twitter's SLA depends on having a …
-
comment
Comment #42914212
You might be interested in this thread [1] where I described an idea for how to incorporate the latency penalty into the eviction decision. A developer even hacked a prototype that…
-
comment
Comment #42911840
As the article mentions, Caffeine's approach is to monitor the workload and adapt to these phase changes. This stress test [1] demonstrates shifting back and forth between LRU and …
-
comment
Comment #42911131
Yep, no bots. A real bug not only means that I wasted someone else’s time, but reporting is a gift for an improvement. If a misunderstanding then it’s motivation that my project is…
-
comment
Comment #42910926
Thanks Jonathan!
-
comment
Comment #42910876
I tried to reimplement Linux’s algorithm in [1], but I cannot be sure about correctness. They adjust the fixed sizes at construction based on device’s total memory, so it varies if…
-
comment
Comment #42910095
Doesn’t reddit use Cassandra, Solr, and Kafka which uses Caffeine?
-
comment
Comment #42580739
I've resorted to using Cmd-Shift-J (scrollback buffer) and grepping that, but its flaky about whether it will honor the command and emit a history file.
- story
-
comment
Comment #42102993
That’s in the works, where it adapts from 16mb to terabyte heaps. The current GCs have a max, with lazy allocation and ability to release back to the system periodically, but are n…
-
comment
Comment #41949379
It will likely become available for application developers to use. At work, we use it to assist warehouse checkins by allowing the guard to take photos of the truck, paperwork, sea…
-
comment
Comment #41841726
Endian indicates the byte order (MSB->LSB, LSB->MSB), but does not change the representation of a bit. The conditional logic says that an even result is 32 and an odd is 0 after a …
-
comment
Comment #41839263
I believe it is (!i & 32) because the bitwise version is an incorrect rewrite. [1] https://news.ycombinator.com/item?id=41830016
-
comment
Comment #41830016
I'm confused because isn't the bitwise version the inverted logic? If the LSB is 1 then it is an odd value, which should be zero, yet that is shifted to become 32. The original mod…
-
comment
Comment #41815360
Oh thank you, I’m glad it’s been helpful.
-
comment
Comment #41812036
One optimization for background refresh is coalescing the individual reloads into a batch operation based on a time/space window. Here is how we do it in the Java world. [1] [1] ht…
-
comment
Comment #41796146
In a typical LRU cache every read is a write in order to maintain access order. If this is a concurrent cache then those mutations would cause contention, as the skewed access dist…
-
comment
Comment #41620208
Nope, I used the default in your github repository (10_000_000). From a quick profile it looked like previous benchmark allocations where crossing into later runs, who were then pe…
-
comment
Comment #41619742
Adding Guava testlib's GcFinalization.awaitFullGc() before a benchmark run and -XX:+UseParallelGC, I saw the runtimes decrease by 30s in Bench_Fury_Ordinal and 20s in Bench_ObjectO…