Hacker Newsnew | past | comments | ask | show | jobs | submit | jbapple's commentslogin

The benefits are visible if you search for the word "TSX". It says:

"Replacing the insert and update functions of our specialized growing hash table with Intel TSX variants increases the throughput of our hash table by up to 7%"


Has there ever been an Intel CPU with working TSX that didn't get disabled by a microcode update?


Afaik Skylake/Kabylake.


It looks to me like Intel recommends disabling TSX on all SKUs due to Zombieload V2.


Well, yeah, TSX appears to be a side channel attack exploitable by a malicious hyperthread. But that's not particularly close to TSX itself being buggy on Haswell.

If you only run trusted code, Zombieload V2 seems irrelevant (on first glance. I didn't look deeper to see if there are ways to exploit it from a bytecode interpreter or such.)


... but if you just ctrl-F for TSX, you probably won't find it, because of this unique web viewer.


Maybe it depends on what activities the ICC engages in within the US. Le Monde doesn’t have “jurisdiction” in the US (or anywhere) to arrest anyone, but they still do investigations, which are presumably still legal for foreign journalists in the US.


When I benchmarked that a few years ago, I found the overhead of a syscall made mmap much slower (assuming the C or C++ memory allocator had already received some memory from the OS it could dole out).


My point is that nobody cares about the time to zero out small blocks of memory, but when allocating large blocks you'll typically have to request the memory anyway...in which case don't re-zero it.


Does this apply to integer keys in the computational models that can do operations other than simple comparisons? In the transdichotomous model, I thought the best known sorting algorithms were O(n lg lg n) worst case, while the best known inversion counting models were Ω(n √ lg n), following “Counting Inversions, Offline Orthogonal Range Counting, and Related Problems”.


Thanks. I didn't think about it. I was only thinking of the general case of sorting.

Integer sorting seems like a case where there's meaningful metadata (maximum integer) and the algorithm is written only for that case (and assumes suitable hardware). These aren't radical assumptions and the optimization may have a lot of practical applications. But once I get to specify the inputs, then O(1) sorting is trivial. Specify the input as sorted lists. To me, it only seems a matter of degree. But admittedly, what can be represented as an integer is a much more reasonable degree of specification.



> why would I care about people coming from other countries? I mean, what do I get in return?

This is a pretty stunning question.

Most people care about people other than ourselves. Most people sometimes do things to benefit others, even if they don't "get in return", as you put it, and they expect others to behave similarly. For example:

1. A billion people base their religious beliefs on venerating the self-sacrifice of God dying and/or giving-His-only-begotten-son to help others.

2. Most people believe that people other than themselves can have subjective experiences of joy and pain. Most people would take a little time out of their day, for instance, to help an abandoned, injured infant, even if they would never "get anything in return" for their selfless act; even though the infant can't promise them anything in return or prove that they are suffering, people see a suffering child and feel a sort of basic level of empathy.

3. Almost everyone who has political opinions is arguing not primarily about themselves, but about people more vulnerable than them who are being hurt by existing policy or will be helped by new policy - usually large classes of people that the arguer will never meet.

4. The idea that other people matter is so incredibly common, we diagnose people who cannot experience it with a medical condition sometimes informally called "sociopathy"

So I'm going to assume you know that most people expect you to care about people other than yourself, and I'm going to assume that you actually do care about people other than yourself.

Now try to imagine what it would be like to extend that empathy to foreigners.

That's it. That's the whole trick.

Good luck!


Can you explain more?


People with no money can't get credit cards. People with and without credit cards (usually) pay the same price for any given item, and since credit card rewards are payed for by merchant fees, that means that every time someone buys something with cash a percentage of their money is being skimmed off the top to subsidize those who buy the same items using credit cards.


Got it; thanks for explaining.

I suppose in a microecon 101 model, there’s some elasticity that causes the cost of the fees to be borne partially by the merchants?


> Has anyone explored regexp minimization?

There has been significant work on https://en.wikipedia.org/wiki/DFA_minimization


It's a deterministic attack vector, so significant offline computation prep work is not unusual.

https://en.wikipedia.org/wiki/Algorithmic_complexity_attack

https://www.freecodecamp.org/news/hash-table-attack-8e4371fc...


A DAV and a SOV huh? Can you share a practical implication?


Assuming you ignore the constant. And if you're willing to ignore the constant, you can get O(c) access, O(N^(1/c)) insert and delete at arbitrary indices, and O(c) insert at head and tail, for any constant c. The trick is to make the array into a B-tree of width N^(1/c) and depth c. Note that the insert/delete time is amortized: the worst-case time is O(cN^(1/c)).


Yea someone else also mentioned that generalization (called a tiered vector) in that thread: https://news.ycombinator.com/item?id=20873110


Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: