HNHacker News
TopNewBestAskShowJobs

bestboy

45 karma · joined December 7, 2017

submissionscomments
bestboy··on Industrial ammonia emits more CO2 than other chemical-making reactions (2019)
Soylent Green (https://www.imdb.com/title/tt0070723/)

"In 2022, Earth is overpopulated and totally polluted; the natural resources have been exhausted and the nourishment of the population is provided by Soylent Industries, a company that makes a food [...]"

bestboy··on Opting Your Website Out of Google's FLoC Network
Is it really necessary to add this header to each and every response?! I feel like it might be sufficent to add this header just to documents like *.html.
bestboy··on Internet Archive Infrastructure
True, but I do not consider nearline archiving to be a workload that requires lots of IOPS.
bestboy··on Internet Archive Infrastructure
If I understood it correctly, then they are using simple physical disk mirrors for redundancy. To me that seems like a huge waste of disk space. Parity based redundancy schemes like RAID-Z3 are way more space efficient. I do understand that parity based schemes need more time to heal/rebuild on drive replacements, but that does not seem to outweigh the huge amount of wasted disk space IMHO.
bestboy··on OpenBoard – FOSS Keyboard for Android which respects your privacy
In case one is using LineageOS, what keyboard is used then? Is it the vanilla AOSP keyboard? How does the LineageOS keyboard compare to privacy conscious keyboards like this one or the AnysoftKeyboard?
bestboy··on Ryzen 5800X vs. M1: Programming benchmarks
I'm sorry, if I wasn't making this clear enough. I'm not proposing to remove DIMMs. I'm merely suggesting to run the Java VM with the same amount of memory/heap for all the platforms. That is purely a software setting. The command-line switch to configure the heap size of a JVM is -Xmx

The reason why I'm suggesting to have the same heap size for the benchmarks is that the maximum heap size is the single most important (tuning) setting for the JVM. Based on this setting the VM sizes its internal data structures and adepts its behavior.

Also, garbage collection times are typically* dependent on the size of the heap. With most* garbage collectors collecting a 32gb heap takes longer than collecting a 8gb heap. If the workload of the benchmark allows for the heap to be used entirely, then garbage collection overhead is directly related to the heap size.

* unless a "big heap" garbage collector like ZGC or Shenandoah is used

bestboy··on Ryzen 5800X vs. M1: Programming benchmarks
I have a little doubt about the results of the Java benchmarks.

I think the JVM tests should have been executed with the same amount of heap allocated for each platform in order to get the internal dynamics/heuristics of the JVM to be comparable. IMHO all JVM tests should have been executed with -Xmx 7G (8 Gigs maximum as per the M1 MacBook Air minus a little something for the OS and the system buffers)

Still, I'm impressed with the Apple silicone.

bestboy··on Bubblesort, rocksort, and cocktail-shaker sort
just want to quickly share an IMHO interesting sorting algorithm visualization video: https://youtu.be/kPRA0W1kECg

"Visualization and "audibilization" of 15 Sorting Algorithms in 6 Minutes. Sorts random shuffles of integers, with both speed and the number of items adapted to each algorithm's complexity. The algorithms are: selection sort, insertion sort, quick sort, merge sort, heap sort, radix sort (LSD), radix sort (MSD), std::sort (intro sort), std::stable_sort (adaptive merge sort), shell sort, bubble sort, cocktail shaker sort, gnome sort, bitonic sort and bogo sort (30 seconds of it)."

bestboy··on Undeleting a file overwritten with mv
Great article!

I acknowledge that this is an honest mistake that might happen to me anytime.

I guess human error is the likeliest cause of data loss nowadays... :(

Anyways for my ext4 ubuntu desktop I immediately made some changes in response to this post:

* installed ext4magic and extundelete so I don't have to do it after the accident, potentiality overwriting the deleted file

* changed my 'll' alias to 'ls -lisah' to include the inode. I guess it's very likely that one does a file listing before moving files around and this can be a live saver.

bestboy··on Undeleting a file overwritten with mv
Using ZFS is no replacement for backups.

Still, this would have been a non-issue on a ZFS system:

  /var/recordings $ ll .zfs/snapshot/
  total 72
  drwxr-x---+ 7 root  root  7 Apr  9  2019 0003/
  drwxr-x---+ 7 root  root  7 Apr  9  2019 auto-2020-11-26_00-00/
  drwxr-x---+ 7 root  root  7 Apr  9  2019 auto-2020-11-27_00-00/
  drwxr-x---+ 7 root  root  7 Apr  9  2019 auto-2020-11-28_00-00/
  drwxr-x---+ 7 root  root  7 Apr  9  2019 auto-2020-11-29_00-00/
  drwxr-x---+ 7 root  root  7 Apr  9  2019 manual-2020-10-05/

  /var/recordings $ cp .zfs/snapshot/auto-2020-11-28_00-00/recording-16679.flv recording-16679.flv

(every directory/dataset contains an invisible .zfs directory "mounting" the snapshots of the dataset)
bestboy··on NAT Slipstreaming
I do not play 3D games in the browser. If that is a usecase, then webGL has to be enabled of curse.

If browser games were a usecase of mine, then I'd keep my safe "daily driver" Firefox for surfing the WWW with the mentioned restrictions in place. I'd use a separate Chrome browser as a "game client".

bestboy··on NAT Slipstreaming
I'd suggest to disable webRTC and webGL (unrelated to this particular issue but still) in the browser for fingerprinting reasons alone.

e.g. firefox > about:config:

* media.peerconnection.enabled false

* webgl.disabled true

bestboy··on Examining ARM vs. x86 Memory Models with Rust
Seems plausible to me. I guess it would be pretty hard to maintain a TPD of about 200W for 80 3GHz ARM cores [1]. The bus traffic to synchronize 80 CPU caches can probably be significant.

[1] https://www.anandtech.com/show/15871/amperes-product-list-80...

bestboy··on HSBC moves from 65 relational databases into one global MongoDB database
TBH I think so, too. I guess this is just a glorified global network drive to put all the different, country-specific documents like Excel sheets, Word docs, PDFs and some such.

https://youtu.be/GI5kwSap9Ug?t=63

bestboy··on Performance of modern Java on data-heavy workloads
Yep, workload matters. Generational garbage collectors are fundamentally at odds with caching/pooling of objects. They are based on the assumption that objects die young. Typically that is not the case for internal caches, though. Caches usually consist of long-living/tenured objects.
bestboy··on Nvidia calling gaming PC owners to put their systems to work fighting Covid-19
Explanation by the director of F@H on twitter: https://twitter.com/drGregBowman/status/1238930030585143297
bestboy··on Nvidia calling gaming PC owners to put their systems to work fighting Covid-19
docker images: https://hub.docker.com/search?q=foldingathome&type=image

kubernetes: https://github.com/richstokes/k8s-fah

bestboy··on Nvidia calling gaming PC owners to put their systems to work fighting Covid-19
Many crypto miners are indeed doing F@H at the moment. Either via curecoin[1] or by lending/joining their rigs to one of the teams[2].

[1] https://curecoin.net

[2] https://folding.extremeoverclocking.com/team_list.php

bestboy··on Nvidia calling gaming PC owners to put their systems to work fighting Covid-19
They have an announcement on their web site[1] and on twitter[2].

Also the web client shows information about the executing tasks (e.g. [3][4]). The COVID19 tasks are prioritized and will be executed when you keep the target settings of the client at default ("Any").

[1] https://foldingathome.org/2020/03/10/covid19-update

[2] https://twitter.com/foldingathome/status/1238568504200253442

[3] https://apps.foldingathome.org/project?p=11749

[4] https://apps.foldingathome.org/project?p=14329

bestboy··on Nvidia calling gaming PC owners to put their systems to work fighting Covid-19
Reddit's r/COVID19[1] has gathered big teams for Folding@Home and Rosetta@Home to crowd-source computing power against COVID19.

The F@H team COVID19@REDDIT[2] has ID 236269, if you are interested to join.

[1] https://www.reddit.com/r/COVID19

[2] https://folding.extremeoverclocking.com/team_summary.php?s=&...

bestboy··on Recursive fibonacci benchmark using top languages on GitHub
One can improve the JAVA result by allowing the JIT compiler to inline the recursive calls.

   -XX:MaxRecursiveInlineLevel=1 (default): 6.667 s
   -XX:MaxRecursiveInlineLevel=2:           6.141 s
   -XX:MaxRecursiveInlineLevel=3:           5.768 s
   -XX:MaxRecursiveInlineLevel=4:           5.400 s
   -XX:MaxRecursiveInlineLevel=5:           5.361 s
   -XX:MaxRecursiveInlineLevel=6:           5.072 s
For comparison

   fib.c with -O3: 3.764 s
edit: formatting and adding more data points
bestboy··on ‘You can't use Brotli for dynamic content’ and other misconceptions
The fact that there is no native JAVA encoder for Brotli is an obstacle for the adoption in the enterprise segment.