HN user

xtacy

5,369 karma
Posts341
Comments518
View on HN
travisdowns.github.io 11mo ago

Performance Speed Limits (2019)

xtacy
18pts1
www.muppetlabs.com 1y ago

A whirlwind tutorial on creating teensy ELF executables for Linux (1999)

xtacy
59pts17
www.wheresyoured.at 1y ago

Burst Damage

xtacy
2pts0
shortcat.app 1y ago

ShortCat: Manipulate macOS masterfully, minus the mouse

xtacy
2pts0
cafbit.com 5y ago

Understanding Rust's asynchronous I/O framework from the bottom up (2017)

xtacy
1pts0
jeffreykegler.github.io 5y ago

Kurt Gödel: A Contradiction in the U.S. Constitution?

xtacy
2pts0
coronaviruswatch.ircai.org 6y ago

Visualizing growth rate of Covid-19

xtacy
3pts0
people.idsia.ch 6y ago

The 2010s: Our Decade of Deep Learning / Outlook on the 2020s

xtacy
1pts0
www.reforge.com 6y ago

Good Experiment, Bad Experiment

xtacy
25pts4
research.securitum.com 6y ago

Exploiting prototype pollution

xtacy
53pts13
richardbrath.wordpress.com 7y ago

Album de Statistique Graphique

xtacy
77pts1
en.wikipedia.org 7y ago

Grelling-Nelson Paradox

xtacy
2pts0
rationalwiki.org 7y ago

VHEM: Voluntary Human Extinction Movement

xtacy
1pts0
www.sans.org 7y ago

Congressional Report on Equifax Hack

xtacy
2pts0
richardbrath.wordpress.com 7y ago

Album de Statistique Graphique

xtacy
4pts0
www.math.tamu.edu 7y ago

Mathematics in the 20th Century (2002) [pdf]

xtacy
58pts8
scpd.stanford.edu 7y ago

Dancing Links – Don Knuth's Christmas Lecture (Livestream at 6:30PM PT)

xtacy
2pts0
www.lesswrong.com 7y ago

Schelling Fences on Slippery Slopes

xtacy
1pts0
blog.wolfram.com 7y ago

30th Anniversary of Mathematica

xtacy
27pts0
www.lihaoyi.com 8y ago

How to drive change as a software engineer

xtacy
1pts0
www.lehigh.edu 8y ago

Where Am I? Daniel C. Dennett [pdf]

xtacy
2pts0
yudkowsky.net 8y ago

Twelve Virtues of Rationality

xtacy
3pts0
squid314.livejournal.com 8y ago

Epistemic Learned Helplessness

xtacy
7pts1
www.fastcodesign.com 8y ago

Accountability summarised in a 19th century organisational chart

xtacy
1pts0
www.ribbonfarm.com 8y ago

Alice and Bob discover capitalism

xtacy
2pts0
slatestarcodex.com 8y ago

Understanding Friston's Free Energy Principle

xtacy
1pts0
www.p-value.info 8y ago

What's the significance of 0.05 significance? (2013)

xtacy
68pts32
www.astronomy.com 8y ago

Amateur astronomer gets 1-in-10M shot of supernova’s first light

xtacy
33pts2
www.kpfahistory.info 8y ago

Bertrand Russell: What desires are politically important?

xtacy
1pts0
slatestarcodex.com 8y ago

Beware the man of one study

xtacy
1pts0

Is it GBps (gigabytes per second) or Gbps (giga bits per second)? I see mixed usage in this comment thread so I’m left wondering what it actually is.

The article is consistent and uses Gigabytes.

Yep, such ideas have been around. But congestion is a fundamental problem. Admission control is the only way to ensure there is no congestion collapse.

The technical issue is that you would need global arbitration to ensure that the _goodput_ (useful bytes delivered) is optimal. With training across 32k GPUs and more these days, global arbitration to ensure the correct packets are prioritised is going to be very difficult. If you are sending more traffic than the receiver's link capacity, packets _will_ get dropped, and it's suboptimal to transmit those dropped packets into the network as they waste link capacity elsewhere (upstream) within the network.

In principle, with perfect knowledge of flows at any given instant, you can assign credits/rate-of-transmission for each flow to prevent congestion. But, in practice this is somewhat nuanced to build, and there are various tradeoffs to consider: what happens if the flows are so short that coordinating with a centralised scheduler incurs a latency overhead that is comparable to the flow duration? There's been research to demonstrate that one can strike a sweet spot, but I don't think it's practical nor has it been really deployed in the wild. And of course, this scheduler has to be made reliable as it's a single point of failure.

Such ideas are, however, worth revisiting when the workload is unique enough (in this case, it is), and the performance gains are so big enough...

OP is referring to "Credit based flow control", which is a way to ensure a sender does not overwhelm a receiver with more data than it can handle.

Usually, this is line-rate, but if the other side is slow for whatever reason (say the consumer is not draining data), you wouldn't want the sender to continue sending data.

If you also have N hosts sending data to 1 host, you would need some way of distributing the bandwidth among the N hosts. That's another scenario where the credit system comes. Think of it as an admission control for packets so as to guarantee that no packets are lost. Congestion control is a looser form of admission control that tolerates lossy networks, by retransmitting packets should they be lost.

It's also a bit odd that they do not implement congestion control. Congestion control is fundamental unless you only have point-to-point data transfers, which is rarely the case. All-reduce operation during training requires N to 1 data transfer. In these scenarios the sender needs to control its data transfer rates so as to not overwhelm not just the receiver, but also the network... if this is not done, it will cause congestion collapse (https://en.wikipedia.org/wiki/Network_congestion#:~:text=ser...).

to have a tool that is external to the VM (runs on the hypervisor host) that essentially has "read only" access to the kernel running on the VM to provide visibility into what's running on the machine without an agent running within the VM itself

Not quite what you are after, but comes close ... you could run gdb on the kernel in this fashion and inspect, pause, step through kernel code: https://stackoverflow.com/questions/11408041/how-to-debug-th....

I suspect that the web server's CPU usage will be pretty high (almost 100%), so C-state tuning may not matter as much?

EDIT: also, RSS happens on the NIC. RFS happens in the kernel, so it might not be as effective. For a uniform request workload like the one in the article, statically binding flows to a NIC queue should be sufficient. :)

They key takeaway really is that for high performance, the way you think about memory layout, data structures, memory management, etc. all start to really matter. It is possible to write programs with memory pools to reuse data structures as much as possible without having to defer the work to the GC, which can then introduce performance spikes.

That said, C# and JVM are both mature and have decades of GC improvements, which could explain why golang is falling behind. Time will tell.

The core problem seems to be:

   For instance, overwriting content on a page of the document is not allowed and thus leads to invalid signature verification. Nevertheless, some changes are considered harmless by the PDF applications and do not throw any warnings
I am trying to understand if there is any design consideration behind not signing the entire PDF, but only some sections?
Abstract Wikipedia 6 years ago

Interesting link, thanks for sharing. I wonder what this means precisely:

  If you take out one of the characters or story elements of a conspiracy theory, the connections between the other elements of the story fall apart.
I guess I have to read the paper, but what are these "connections" and what does "fall apart" actually mean?

EDIT: I just skimmed the paper https://journals.plos.org/plosone/article?id=10.1371/journal...

The connections capture context-specific relationships, such as co-occurrences. The "fall apart" part comes from the fact that conspiracy theories rely on hidden, unsubstantiated, subjective interpretations of intent or actions whose validity can be questioned. If they are key pillars of the narrative, then their falsity can negate the truth of the narrative.

This reminds me of a philosophical discussion around what "truth" means. Coherent theory of truth: truth is defined as a property that's coherent among a set of beliefs. It can also be used as an epistemic justification -- that is, any set of internally consistent beliefs can be taken as true. Of course, in practice, certain truth statements have to correspond to reality, which is where the correspondence theory of truth comes in.

Try the paper towel trick: wrap the seeds in a moist paper towel (not too wet, or it will encourage fungus growth). Then, keep them inside a ziplock bag in a warm place for a couple of days, checking on them every day. I keep them on top of the refridgerator where it's nice and warm.

Beans sprout super fast! For very dry seeds (lentils, beans, peas, edamamme) you could soak them in water overnight and just use the seeds that settle down after they've absorbed some moisture.