Re: Intel's Skylake Prime Number Bug.

Jan 11, 2016 16 Replies

On Mon, 11 Jan 2016 10:22:55 -0800, John Larkin Gave us:


I wonder how the BIOS can fix an FPU error. Trap exceptions? Change
>some firmware?

Didn't you read the article? They killed one bug by completely disabling the causal feature.. Perhaps they merely disable the api element that causes this and re-routes any calls to those/that api term.


Just like I disabled all the retard's cross posting stupidity.

Probably tweaks the microcode as the system boots to fix the problem.

Regards, Martin Brown

Or trap the failing instruction and emulate it.

Can anybody translate that?

John Larkin Highland Technology, Inc lunatic fringe electronics

On Mon, 11 Jan 2016 20:35:55 -0800, John Larkin Gave us:

CPU level instructions are at the API level. The question is can YOU translate it.

hahaha, that was fun. :)

joe

It is just the usual random word salad you expect from that poster.

A few more details on how to reproduce the problem which seems to be related to a very highly optimised handcoded assembler FFT core of length 768 at the heart of the Mersenne prime project is online here.

formatting link

Quoting from that page:

]Steps to freeze your Skylake system: ] ]- Download and install Prime95 for Windows on a Skylake system from the website at

formatting link
] ] (If you want to familiarize yourself with the software use the readme, a background in math will be helpful, but is not needed.) ] ]- In the menu go to 'Advanced | Test' and fill in the number 14942209 in the box labeled 'Exponent to test' ] ]- Let the program run for some time and at some point, minutes or hours, the system will freeze.

Or a for second take on the same issue:

formatting link

This one might also be relevant as the Skylake i7 6700 seems to have an unexpected performance signature when compared to a Haswell i7 4790:

formatting link

Intel don't say how they propose to fix it in detail but it appears to be related to AVX & hyperthreading of very compact bandwidth hungry hand crafted assembler code so it could be anything from a speculative execution bug to noise or a memory timing glitch under extreme loading.

What is certain is that a particular number input to Prime95 kills that CPU after a random time which seems to depend on wind direction...

In ordinary computational software it probably doesn't matter but anyone using AVX and hyperthreading in heavy scientific computations on Skylake would be well advised to recompute and check some of their work in single threaded mode and/or without using AVX parallelism.

Regards, Martin Brown

Your mother must have fed you s*it salad all of your life.

On Tue, 12 Jan 2016 09:11:54 +0000, Martin Brown Gave us:

Oh, you mean assembler... that 'stuff' that uses the CPU's API, just like I mentioned.

You and John should run out together and have a s*it salad lunch.

Need more translation.

John Larkin Highland Technology, Inc lunatic fringe electronics

The old Pentium FPP bug would lock up the CPU if you just divided the wrong pair of floats.

John Larkin Highland Technology, Inc lunatic fringe electronics

Microcode patches are often done in RAM. BIOS loads the patches every reset.

No it didn't.

Intel Pentium FDIV bug in 1994 produced values that were typically wrong by a few tens of ppm for about 1 in 10^10 of all possible inputs. I actually had one of the failing CPUs on the bench to test.

The F00F bug 1997 was a bit more dangerous but even that wasn't a show stopper. It was the closest they ever came to an HCF instruction. (Halt and Catch Fire) Intel took a lot of flak for how it handled both.

I still have a key fob made out of a defective previous generation Intel chip given to me in Japan - it has lasted very well.

Cyrix were not immune either they had an HCF bug of their own in 1997 involving a hidden bus locking instruction pattern that halted execution by locking out all interrupts until the system was rebooted.

formatting link

It was found in the early days of pipelines and branch prediction.

Regards, Martin Brown

I wrote a little test app in turbo pascal to show the failure..

I don't remember the math but there was a ???/256 in volved that caused the error.

Jamie

James has pointed out that the old purple ceramic 486 chips make excellent x-acto knife sharpeners.

John Larkin Highland Technology, Inc picosecond timing precision measurement jlarkin att highlandtechnology dott com http://www.highlandtechnology.com

OK, that one just made math errors. Intel is making progress!

John Larkin Highland Technology, Inc lunatic fringe electronics

I had one of those, and had a program in Turbo Pascal 3 I think that clearly illustrated the problem. The computer maker (Gateway) stonewalled me until Intel agreed to take the hit for all the customers. Never bought anything else from Gateway.

--sp

Best regards, Spehro Pefhany Amazon link for AoE 3rd Edition: http://tinyurl.com/ntrpwu8 Microchip link for 2015 Masters in Phoenix: http://tinyurl.com/l7g2k48

Join the Discussion

Have something to add? Share your thoughts — no account required.

Didn't find your answer?

Ask the community — no account required