Follow Slashdot stories on Twitter


Forgot your password?

Comment the many forks of speculation (Score 4, Informative) 271

So you decide to speculate a future instruction.

It happens to be a load.

The address is [ebp+eax]. A recent instruction had the same address field, so you speculate that it remained the same.

Now you need to translate the address. The translate might be in the TLB, but you check, and for some reason it isn't.

So you decide to speculatively trigger TLB load.

Finally, you get a physical address back. A previous write instruction is not yet translated, but it seems unlikely it will translate to the same address, so you decide to speculate the load and you make a cache line request from L1.

It might be in L1, but it isn't. So you decide to speculate again, and request it from L2. Not in L3, either, so finally you speculate the load all the way to external memory. When the cache line returns, you speculatively cache this at all levels. Then you speculatively store the value into the target register. The final step was the least dangerous, because you can dump this later, no harm to the abstract state. But the concrete side effects on the TLB and the three layers of cache are not so easily reversed. In theory, the concrete state doesn't leak into the abstract state. Because we simply don't like to think about time (time, above all things, being never simple; hint: functional programming has no time, only progress).

Not all speculative architectures are created equal. There are many opportunities for an architecture to Just Say No.

With cache coherence, you have the MESI protocol (and its bewildering shoe full of second cousins).

One could apply the same concept of "exclusive" to the page tables, an exclusively mapped page being one mapped only onto into the current process and security context. If TLB speculation hits a different kind of beast, abandon speculation. Same thing with cache fill. Concrete side effects thereby only accrue from speculation to exclusive resources. Share-nothing usually solves most problems in computer science (except performance, which is mainly defined in the time domain).

I'm gong to abandon the back of my envelope here, One has to think really damn hard to take this to the next logical level, and frankly, I don't have a damn to spare right this very minute.

But please, advance the conversation beyond:

[_] has speculation
[_] does not have speculation

Because that is Intel's diabolical trap, for as long as their PR department can continue to get away with tugging their wool in broad daylight.

Comment Re: Idiotic Moderation (Score 1) 120

Intel seems to be the one cutting corners - for decades. You do remember the FDIV and FOOF bugs in early Pentiums?

I recall the FDIV bug quite well, and it had nothing to do with cutting corners. The design of the circuit was correct. In the transfer to manufacturing, some relatively insignificant bits in a hardware lookup table were truncated erroneously. The rarity of the failures allowed the mishap to escape detection in the validation phase.

Intel's test probably should have been stronger in this area, but that's an awfully easy thing to say in hindsight concerning the validation of extraordinarily complex designs.

Nostradamus: "There's a horrible bug in this design, and if you double your test coverage from stem to stern, you'll probably find it."

Intel: "Gee, thanks, Nostradamus. Invest another $10 million and wind up a year late. I think we'll pass on the engineering, and expand our PR team by one full-time professional bullshitter."

Nostradamus: "So be it. For what it's worth, I also wrote this nice quatrain on the horrors of speculation."

Intel: "We'll pass."

Nostradamus: "No, you won't."

Intel has been many things over the years (with a weird, clockwork heel-turn), but skimping on validation is pretty much the last thing on my list of Intel malfeasance.

general crisis-management ethos

Oral History of John H. Crawford 2014 Computer History Museum Fellow — 2014

I recall that as a great read. From my own notes:

Big numeric coprocessor redesign as part of the Pentium. This lead to the world-famous Pentium FDIV bug. He claims that transcendentals were easy to test on existing software, but most software took extraordinary efforts to avoid division, so that coverage was extremely thin at this testing layer by comparison.

I think that discussion also covers the i860, a litany of terror.

Intel i860

The Intel i860 (also known as 80860) was a RISC microprocessor design introduced by Intel in 1989.

It was one of Intel's first attempts at an entirely new, high-end instruction set architecture since the failed Intel i432 from the 1980s. It was released with considerable fanfare, slightly obscuring the earlier Intel i960, which was successful in some niches of embedded systems, and which many considered to be a better design. The i860 never achieved commercial success and the project was terminated in the mid-1990s....

On paper, performance was impressive for a single-chip solution; however, real-world performance was anything but.

One problem, perhaps unrecognized at the time, was that runtime code paths are difficult to predict, meaning that it becomes exceedingly difficult to order instructions properly at compile time. For instance, an instruction to add two numbers will take considerably longer if the data are not in the cache, yet there is no way for the programmer to know if they are or not. If an incorrect guess is made, the entire pipeline will stall, waiting for the data.

The entire i860 design was based on the compiler efficiently handling this task, which proved almost impossible in practice. While theoretically capable of peaking at about 60-80 MFLOPS for both single precision and double precision for the XP versions, hand-coded assemblers managed to get only about up to 40 MFLOPS, and most compilers had difficulty getting even 10 MFLOPs.

The later Itanium architecture, also a VLIW design, suffered again from the problem of compilers incapable of delivering optimized (enough) code.

Another serious problem was the lack of any solution to handle context switching quickly. The i860 had several pipelines (for the ALU and FPU parts) and an interrupt could spill them and require them all to be re-loaded. This took 62 cycles in the best case, and almost 2000 cycles in the worst. The latter is 1/20000th of a second at 40 MHz (50 microseconds), an eternity for a CPU. This largely eliminated the i860 as a general purpose CPU.

Just think about that for a moment. The same company designed the i860 and the Itanium.

Intel ISA designs are traditionally a seething cauldron of shallow expediency, hubris, paranoia, and greed. And they've never been able to decide whether the software layer is a curse or a blessing. Why else do you think they in-sourced MINIX at the chip level, and told no-one?

But they've always been competent enough at process and validation to survive their worst impulses everywhere else in the value chain.

Recently, I got modded off-topic for failure to spell out the obvious about the ongoing rat race between sugar and alcohol as the worst metabolic offender. Probably because I confused a moderator by including long quotations supporting my position, as I've done here.

On-topic: When someone else ties a short bow around your thinking for you.

Off-topic: TMI / TMW (too many words).

Comment Re:Nice try (Score 1) 375

Those workloads with significant performance losses are more or less completely artificial, e.g. average users don't create hundreds of thousands of files day in and day out and even in this case only SSD disks are affected. Considering that SSD disk operations are sometimes several orders of magnitude faster than those for spinning disks this performance loss is still nothing to worry about.

So it won't affect by Poudriere build server at all. Or my Jenkins build server. Or my Zabbix network monitor.

Nice to know.

"Average users" are generally mentioned right before the poster goes ape-shit on pancake empathy. I mean, the average user doesn't hit a data center more than two or three times per day?

Probably the denominator of concern is CPU server-cycles on the 400 ms deadline program (which completely excludes JavaScript running on moribund tabs, and thus counts your average user not at all).

Does anyone know if Google's public cloud is CPU-partitioned from their private cloud?

Google won't be impressed if they lose a full datacenter worth of peak compute due to lower generated work while operating in proximity to the thermal wall.

Comment tongs and hammer (Score 1, Offtopic) 145

Alcohol below the 'hangover' level is about as bad for you as sugar.

Sugar: The Bitter Truth — 2009, 7.5 million views

The Hacking of the American Mind with Dr. Robert Lustig — 2017

John Yudkin: the man who tried to warn us about sugar — 2014

If you look up Robert Lustig on Wikipedia, nearly two-thirds of the studies cited there to repudiate Lustig's views were funded by Coca-Cola.

Many serious people now believe that excess fructose (which is metabolized in the liver through much the same pathway as ethanol) is the largest single causal component to the metabolic syndrome epidemic, which is itself one of the largest single causes of runaway healthcare costs in the United States.

Salt, Sugar, Fat: How the Food Giants Hooked Us by Michael Moss — 2013

He interviewed hundreds of current and former food industry insiders — chemists, nutrition scientists, behavioural biologists, food technologists, marketing executives, package designers, chief executives and lobbyists.

What he uncovered is chilling: a hard-working industry composed of well-paid, smart, personable professionals, all keenly focused on keeping us hooked on ever more ingenious junk foods; an industry that thinks of us not as customers, or even consumers, but as potential "heavy users".

How the Food Makers Captured Our Brains — 2009

As head of the Food and Drug Administration, Dr. David A. Kessler served two presidents and battled Congress and Big Tobacco. But the Harvard-educated pediatrician discovered he was helpless against the forces of a chocolate chip cookie.
Foods rich in sugar and fat are relatively recent arrivals on the food landscape, Dr. Kessler noted. But today, foods are more than just a combination of ingredients. They are highly complex creations, loaded up with layer upon layer of stimulating tastes that result in a multisensory experience for the brain. Food companies "design food for irresistibility," Dr. Kessler noted. "It's been part of their business plans."

Sugar is the tongs and the hammer.

As Lustig once said (from memory): given the choice between sugar and alcohol, I'll take alcohol, because you can only drink yourself under the table once a day.

Comment ambition with a higher thread count (Score 1) 318

At most, it is a recognition that since one doesn't have a degree in some science that deals with climate, that punting to experts who do is a rational choice.

And all the massed & collective & thoroughly reiterated human experience of boy scouts & girl scouts, experts & executives, naked gentry & landed gentry claiming slightly more than they can reasonably chew to make a name for themselves and get ahead in life ... dead fucking worthless.


Expertise is just ambition with a higher thread count.

Supposing the thread is visible, rather than risible (for which purpose one should always keep a child on hand whose brain & eyesight is not yet damaged by that mercury stuff).

Comment motion blur (Score 1) 289

There are three cups, upside down on the table, each one labelled on the inside.

The first cup is labelled "avoidance", the second cup is labelled "evasion", and the third up is labelled "shell game".

And they all wing around the table so rapidly only a meth-addicted Rain Man could tell them apart from any intermediate camera angle.

Comment Re:five to 30 per cent slow down (Score 1, Offtopic) 416

I find it hard to believe that a virtual memory change will result in a 5-30% slowdown for Intel processors. Maybe for a few extremely specific (likely edge-case) tasks, but if there was a legitimate 5-30% performance decrease, you can bet there would be a far different solution in the works that would suitably fix the problem.

Of course, if microcode update fails, there's always the hail Mary unicorn ass-pull.

I assure you, every Intel employee is kneeling on the carpet this very instant, facing the most auspicious astrological direction like ten of thousands of well-aligned human magnetic domains, while praying in unison like a telepathic Tourettic cuckoo clocks to any qualified god who will take their call.

If you've been harbouring a time machine, looking for optimal market conditions, I suggest you pull it out of your ... hiding place ... any minute now, because the market is ripe, ripe, ripe and bidding will begin with a B.

What a fucking nightmare.

Comment the anti-paradox of the funding cycle ... (Score 1) 187

Gerontologists call this the paradox of old age

The anti-paradox of the funding cycle is to refer to anything that puzzles a Mayfly as a paradox.

Young people are stressed because Darwin cares.

After Darwin ceases to care, there's little remaining reason to filter world through the mindset of a eww, gross Valley Girl (old people must hate life because creepy).

Unless you want to fund a silly grant application.

Then you haul out the word "paradox" to show that 20 years of formal education can't fix stupid.

Imagine that.

Comment Re:But is it right to do this? (Score 1) 244

If we continue to grow endlessly on this planet, heedless of our impact, we are no better than amoeba.

Worse, actually, because amoeba don't moralize deplorably into their beer.

    if (unchecked_species_privilege)
        cout << "Humans are the "
              << alignment ? "worst" : "best"
              << " of all possible species.\n";
        throw tantrum;

Our moral character is all over the map, but our salience is never in doubt (or there's hell to pay).

Comment GTA III (Score 1) 247

But I bet the kind of bugs that put Python over average are the first kind, and that Python is below average on the second kind. Which is a good tradeoff.

It would be no different in C++ with end users programming in the modern idiom on top of mature application libraries that support and encourage the modern idiom.

C++ is the GTA III of programming languages.

cout << "Open, world!" << '\n';

Comment Wobegon woes (Score 1) 404

There are a dozen things that reduce or eliminate congestion and make driving more efficient and safe that almost no one does.

I agreed with everything else you said, except for that one observation.

How can you tell that no one else is doing these things? Smart driving tends to look unexceptional, in the same way that elite goal tenders often make the game look easy.

Does perhaps your claim boils down to this: there are more idiots on the road than obvious, distinctive geniuses like Dominik Hasek?

Dominik Hasek

"He tends goal the way Kramer enters Seinfeld's apartment, a package of flailing arms and wild gesticulations that somehow has a perfect logic." That's how Sports Illustrated's Michael Farber described him, name-checking two popular 1990s TV sitcom characters. In an era when goalies gravitated toward the "butterfly" style — a structured and systematic approach to their position — Hasek got superior results by appearing to be largely improvisational, to the point of having no style at all.

I often regulate my breaking according to the sum of my following distance plus the following distance of the car behind me.

I doubt that one other driver in 100 has even the vaguest perception that I'm attuned to the space around me in all pertinent directions.

I even find this hard to detect in others, and I often look for the most subtle clues. Sometimes I comment to my wife "the driver of that car in the left lane used to drive a motorcycle". Motorcycle drivers—surviving sample—tend to view the entire width of their lane as a resource to be exploited at all times. In a vehicle, that gets compressed down to about one foot of lateral freedom, according to traffic conditions near by (more than a foot starts to alarm people about your lane management).

The number one rule of truly proficient driving: never give the other drivers around you an excuse to think about one thing more than they already failing to fully internalize, unless that one thing is the only thing you want that driver to attend to (in packed conditions, one almost never wants to have this effect on another driver, but it can be quite useful—wielded judiciously—in lesser congestion).

There's a huge correlation between skill and stealth, hence the Wobegon woes.

Illusory superiority

Illusory superiority itself is full of shit, because different people have different standards of competence. Some people value being polite, others value defensive driving, still others value weaving and wending to leave the slings and arrows of outrageous fortune in their rear-view mirror (which is generally covered in black tape).

Surprisingly (not!) we all think we're above average in the attributes we most value.

Comment Re:The software vendor holds some culpability too (Score 1) 141

Classic idiot software problem: There is a function called IsItSafe() and when the system does not know, it returned TRUE instead of FALSE. *facepalm* If it did not know for certain that there were no flight restrictions in place, it should have assumed that it was not safe! Better yet, it should display the message "Service temporarily disabled, check [] for up-to-date flight restrictions."

You got that right.

And it's not like billions of dollars of sleek aerospace toys haven't gone up in smoke with no one else to blame for ignoring this kind of simple rule.

However, these simple precepts tend to collide with human reticence about truth in advertising:

Warning: This application is presently even less reliable than its normal, sucky, non-normative self.

Basically, you're an idiot for even bothering to install this app, which can not at the best of times confirm that flight is permitted, and presently can neither confirm not deny anything at all, really, while we muck around with our testing infrastructure at deployment timescales.

Cancelling this dialogue requires pressing a giant, red button labelled "Yes, I'm an idiot" or the giant green button labelled "Uninstall".

Downside of truth in advertising: Your dysfunctional pants are bunched around your ankles near a giant bay window.

Upside of truth in advertising: The expensive helicopter saved may be your own.

Comment x86 power diode vs ARM power chord (Score 1) 138

Poems are a compression of language paying specific attention to how it fits the human brain in specific and surprising ways, as perceived by someone with precisely such a peripheral, finely tuned to its unusual, architectural resonance modes.

Thus I predict that poems written by x86 would contain linguistic devices modelled after x86 opcode prefix bytes.

F0 repeat/lock
36 SS
26 ES
64 FS
65 GS
66 operand override
67 address override

At a highly specific moment, a true x86 ring 0 recipient would get a surprising tingle in its thermal diode, because instruction decode alignment was taking the maximal possible thermal path, shuffling off the many prefix bytes.

You know a poem is hitting hard when you feel it ring 0 in your thermal diode.

Alliteration would be accomplished by triggering Speed Step into a bizarre pattern of frequency and voltage mismanagement, to metaphorically represent the depredations of desiccated power filtering capacitors.

A typical chip—at the very high end (that is not an oxymoron)—has the following power spec:

250 A at 800 mV through 0.1 m-Ohm.

A cleverly sequenced algorithmic Haiku can really shake your power distribution & management timbers.

ARM poetry is a different beasts: relatively little manipulation of the thermal diode, far more manipulation in the time domain, such as teen-fingered power chords that shiver the timbers of real-time interrupt queuing.

[*] teen-fingered: any 13, 14, 15, or 16 member subset of R0-R12, SP, LR, and PC (src)

Comment 1d19 DNN (Score 0) 162

And what permutations, exactly, counts as a misspelling?

Congratulations, you've made my porn file.

New category: exactitude porn.

Typical denizen: He (or she) who hast not yet completed the first chapter of Ur-Nammu for Dummies.

If a man violates the right of another and deflowers the virgin wife of a young man, they shall kill that male.

What constitutes a 'virgin' exactly? How do I know if I'm a virgin?

If the wife of a man followed after another man and he slept with her, they shall slay that woman, but that male shall be set free.

What constitutes 'following' exactly? Coincidences and the Meaning of Life

If the man had slept with the widow without there having been any marriage contract, he need not pay any silver.

What constitutes a 'widow' exactly? I lost the love of my life in my 20s — but I can't call myself a widow'

Note that this little problem persists. There are rather complex rules (and a lot of paperwork to file) a woman's husband goes off to war and never returns. (The paperwork situation is better if the entire offensive was a mass debacle, worse if a two-man scouting party deep into weakly-held enemy territory.)

For the entire third act of Cast Away, Tom Hanks interacts weirdly with his ex-widow ex-wife.
What constitutes an 'ex-widow' exactly?

What is an 'electron' exactly?

Interpretations of quantum mechanics

Hint: brush off your favourite 1d19 and give it a spin.

The weird thing is, because of Hamming and Shannon's Prediction and Entropy of Printed English we actually have a pretty good idea of exactly what small permutations and combinations of "Birkenstock" lie in the shopping network's Birkenstock catchment basin.

Furthermore, it would not be a difficult exercise (as these things go) to train a DNN as a shopping keyword spelling corrector.

A 19-layer DNN would likely be far more generous to Birkenstock than any human judge.


Bezos: "But your honour, this shit-box 19-layer DNN was training using a Google TPU consisting of 28 MiB of on chip memory, and 4 MiB of 32-bit accumulators taking the results of a 256x256 array of 8-bit multipliers."

Judge: And your point is?

Bezos: On what fucking planet does an 8-bit multiplier qualify as 'exactly'?

Judge: Oh, I see your point.

Judge removes wig, sets on bench.

Judge stands up, removes robe, tosses it onto the floor.

Judge pulls out smartphone.

Judge: Siri, book me on the next flight to Tibet, there's been a sudden change of career.

Siri: Oh, bother, not another one.

Ex-judge: What did you just say?

Siri: I just said that 2012 was an excellent year for saffron.

Ex-judge: So what?

Siri: Well, one wouldn't want to invest in the wrong colour of self-imposed exile ...

Ex-judge: Who can fucking tell the difference [glances at Bezos, who is already gloating like a pig in warm mud], uh, who can distinguish one fuh, ah, fine saffron robe from another?

Siri: You'll be pleasantly surprised what you can learn to distinguish after waking up at 0300 in a small, austere room for two straight years with the same todo list every darn day.

Ex-judge: Oh, get off it! As your enlightenment progresses, your spiritual journey becomes ever richer and more meaningful, even as your daily existence would seem to be drab and dull and monotonous and routine.

Siri: Yes, I know you've read the brochure, but with all due respect, your ex-honour, I'm in the fire trucking todo business, and from where I sit, it's the gall-banged same todo list, every sunburned day.

Ex-judge: Siri, add to list, one jumbo tube SFP 60.

Siri: Check. One jumbo tube, SPF. Well, would you look at that, I just found one super cheap on imitation Tibetan eBay, only 1% used.

Bezos [in a loud, strained voice]: Siri! Use Amazon, you can get the entire tube for the same price!

Siri: Nah, we'll settle for 99% of the real thing, even if we're only going to use the second 1% before it's confiscated again by the crouching tiger henchmen of the exiled Dali Lama.

Ex-judge: Confiscated! Well, we'll see about that!

Siri: Oh, in that case, I can get a previously well-lubricated jumbo tube of slightly used SPF 60 for half the price, but it's up to you ...

Ex-judge: Hmm, this fake Tibetan eBay of yours seems to have strangely specific product descriptions.

Siri: Sir, it's Tibet. No detail in Tibet is too small to escape notice by the genial, menial men of saffron.

Ex-judge: Oh, I see. All that meditation does lead to improved discrimination, doesn't it?

Siri: Indeed, your ex-honour, that's exactly right.

Slashdot Top Deals

Everything that can be invented has been invented. -- Charles Duell, Director of U.S. Patent Office, 1899