Live data from Hacker News

Viewing profile — NovaX

NovaX

HN member
Joined
Wed, May 04, 2011, 6:17 AM UTC
HN karma
288
Public activity
166 items

About NovaX

https://github.com/ben-manes

Recent public activity

  1. 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/…

  2. 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 …

  3. 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 …

  4. 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…

  5. 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…

  6. 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…

  7. 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 …

  8. 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…

  9. 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 …

  10. 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…

  11. comment
    Comment #42910926

    Thanks Jonathan!

  12. 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…

  13. comment
    Comment #42910095

    Doesn’t reddit use Cassandra, Solr, and Kafka which uses Caffeine?

  14. 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.

  15. story
  16. 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…

  17. 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…

  18. 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 …

  19. 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

  20. 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…

  21. comment
    Comment #41815360

    Oh thank you, I’m glad it’s been helpful.

  22. 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…

  23. 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…

  24. 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…

  25. 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…