HN user

zsmi

462 karma
Posts4
Comments197
View on HN

That why the solution is to only allow speculation when it's "ok". M1 is believed to have a number of Spectre-esq security mechanisms built into it to determine just that. For example: https://patents.google.com/patent/US20200192673A1

Also, In dougallj's code [1] the zero of registers should be superfluous so it is assumed the function below is needed to make the experiments run stably by claiming ownership of the registers as part of a general anti-speculation security mechanism.

static int add_prep(uint32_t *ibuf, int instr_type);

The M1 explainer [2] has lot of interesting ideas like this contained inside it.

[1] https://gist.github.com/dougallj/5bafb113492047c865c0c8cfbc9...

[2] https://news.ycombinator.com/item?id=28549954

Again, I'm not interested in an OS flamewar. That Apple's products are subpar is a fact at this point

That second sentence seems like it was specifically crafted to start a flame war to me. You don't even mention on what dimensions Apple products are subpar. All possible ones I presume?

Is the correct value for a Ponzi scheme really determined by the most recent dollar they took in?

I wouldn't say a Ponzi scheme should be valued by this dollar. It should be valued by the next dollar that someone is willing to put into it as the whole point of the Ponzi scheme is to gather the next dollar.

I think most stalls are actually shared so when your neighboring stall is occupied you'll get less power. Stations are more crowded these days so it's getting common. Anyway, it doesn't actually diminish your argument, especially as 16-pod+ supercharging stations exist.

https://en.wikipedia.org/wiki/Tesla_Supercharger "When both pairs of Tesla Supercharger station stalls (A and B) are occupied, they share the available power of up to 150 kW."

This is why it's fun to know the history of math.

The complex plane was introduced by Caper Wessel in a paper that was published in 1799 so it would've existed before vector notation.

My guess is by the time vectors got popular the complex notation, and theorems that people had proved which used complex notation, had already stuck. But I'm only a hack math historian so I can definitely be wrong here.

I think it's important to keep in mind that math and science, much like the code base that I am trying my hardest to avoid, is evolved.

I really enjoy looking into the history of mathematics and physics. I think it gives one a much better appreciation of why things are defined the way they are, and also the limitations of those definitions.

There is a really great book on the history of imaginary numbers. The history mostly focuses on how i was used to help solve algebra problems, so definitely one should be comfortable with high school algebra to get something from the text, but I don't think one needs much more math than that for the first half of the book. The second half gets more into how various use cases developed, in those chapters basic college level calculus would be a major plus. I read it more than 10 years ago though so no promises. :)

An Imaginary Tale: The Story of √-1 Paul J. Nahin

https://press.princeton.edu/books/paperback/9780691169248/an...

Another interpretation is:

On the first, you think you know what it does, but you're not sure. So maybe it gets looked up.

On the second, you know you don't know what it does. You so know to look it up.

Personally, I'll take the second. Assumptions during debugging are dangerous things.

> homework This is one issue that I'm passionate about. Research increasingly implies that homework is probably harmful in elementary; of dubious value in early middle school; and only valuable in high school and beyond.

Isn't the article about removing homework in high school?

Mr. Moreno, the Alhambra High School English teacher, specifically said he no longer gives homework. Doesn't this mean the research indicates he is removing something valuable?

It might all be semantics though.

I assume the "opportunities to improve essays and classwork" is done outside of normal class hours. Perhaps, the work is done at home. And that they addressed your point A by allowing students to resubmit work, and your point B by removing deadlines. I can definitely see how it could be an improvement.

I think it probably depends on what "produced" means here.

If it means designs inside an EDA environment, design get submitted and shows up realized, then that is possible now. And it's not all that expensive. eFabless chip ignite is quoting ~$10K for 100 QFNs in 130nm. That's getting into beater car territory. https://efabless.com/chipignite/2110C

If it means actually fabricate then I think there is no way because a DIY won't have the scale to compete on price and they won't be able to bring any custom processing step to justify being at boutique scale. Think about PCBs. We used to make them ourselves with chemical etch. Now I don't even use breadboards because a custom bare fab is $5 and the components cost more than that. I also get a much better electrical result, and it doesn't fall apart if I look at it funny.

The main problem with ASICs is the amount of skill/time that it takes to do it right. Floor planning, track planning, closing timing, etc. etc. on an ASIC is much harder than an FPGA. You don't even have to do half those things on an FPGA.

With an FPGA one can almost get compile and go if you're willing to be loose on area and performance. ASIC CAD tooling is no where near that at the moment. Closed or open source.

Also, putting the emphasis on the interviewer understanding the candidates code instead of the other way around is never going to be popular

It's also hard to scale it, make it objective, and keep the efficiency high (most developers prefer not spending their time on either side of the interview table)

There is another advantage to the "algos". If you can learn algorithms then perhaps you can learn other things as well.

Every new job I've had involved quite a lot of learning in a very short period of time.

Learning whatever language, and whatever standard library is almost always trivial. They're usually not all that different, well documented, some with textbooks even.

Learning to navigate and reason about the huge number of undocumented, often arbitrary, system architecture decisions, design decisions, code layout, etc. etc. that make up real code bases.

That's hard. Really hard.

Isn’t the time spent memorizing leetcode similar to the time spent building a side-project?

The nice thing about leetcode it is easy to bound the time to what you can handle. I do one puzzle a week and set a timer for 20 minutes. Then I get the answer and browse the forum. It's basically the equivalent of solving the Sunday crossword for me, and it keeps my algorithm skills sharp. Probably no worse than burning a lunch hour on HN.

There was a good paper on it in 2014. [1] They describe the RowHammer attack as: opening and closing (activation and precharge) a DRAM row (aggressor row) at a high enough rate (hammering) such that it can cause bit-flips in physically nearby rows (victim row).

Colloquially, it's basically a change in voltage in one place can indirectly cause a change in voltage in another place via capacitive coupling. Capacitance increases proportional to the inverse of the separating distance so only in recent years have things shrunk to the size that makes it an issue.

Since having less bits in DRAM is basically not an option most mitigation techniques that I know of remove the possibility of hammering: possibilities include the OS, memory system controller, or DRAM controller changes.

[1] https://users.ece.cmu.edu/~yoonguk/papers/kim-isca14.pdf

Rowhammer is a physical flaw in how memory cells in DRAM are laid out

It's not really a flaw, more like a consequence of how memory cells are laid out. I mean most people want lots of bits in their DRAM. Maximizing this parameter necessitates that some will be in close proximity.

If someone asked you the best way to become a good mechanical engineer, I bet you’d tell them to start building something.

Actually, I would ask them to be more specific.

And the more specific they can describe the goal the more likely they are to achieve it. The field of mechanical engineering is huge and this is the same for programming.

Is the op looking to make web pages, do FEM simulation (since they're an ME), embedded programming for robotics, etc. etc.

Each one of those is going to have a different path.

The top bin in the first link was labeled $187K and the bins are at least $13K wide so it's possible there might be a data point at $193K (probably a bit higher) which is not so far from $200K/yr as a new grad, according to the glassdoor dataset anyway.

Totally agree. I read the article as, when I am on my M1 I often experience memory pressure related issues. Not, because of my M1 I often experience memory pressure related issues.

It's very likely future software updates can help address these issues.

Honestly, the machines haven't had wide deployment in the field for all that long for Applications as huge as Photoshop. It takes time to discover, fix, and redeploy things like Photoshop. And it's not like Photoshop never leaked memory on an x86.

SoME1 results 5 years ago

But when I looked at the blog post date it was from 2012!!

Hopefully you wrote the Thank You anyway as they're probably still around.

P.S. Do you still have the link to the blog post?