VME Broken on AMD Ryzen

Emulation of old PCs, PC hardware, or PC peripherals.

VME Broken on AMD Ryzen

Postby awgamer » 2017-5-14 @ 23:45

awgamer
Member
 
Posts: 390
Joined: 2014-7-26 @ 07:42

Re: VME Broken on AMD Ryzen

Postby kode54 » 2017-5-15 @ 01:22

TL;DR: 32 bit operating systems are mostly broken on Ryzen, whether bare metal or run under virtualization on a 64 bit host operating system. It is not known whether a mere microcode update could fix this, as the behavior of the broken instructions may well be at least partially ingrained on the hardware itself.

E: This has no effect on most/all? emulators, as they do not usually make use of virtualization extensions to execute legacy code directly, but instead employ recompilation or interpreter routines to adapt the legacy code to the host operating system.
User avatar
kode54
Member
 
Posts: 199
Joined: 2003-6-15 @ 05:32

Re: VME Broken on AMD Ryzen

Postby Azarien » 2017-5-16 @ 11:50

Is 32-bit Windows 10 affected too?
Azarien
Member
 
Posts: 361
Joined: 2015-5-14 @ 07:14

Re: VME Broken on AMD Ryzen

Postby kode54 » 2017-5-17 @ 00:50

It is very likely that all 32 bit versions of Windows are affected, but I don't think anyone has reported this configuration specifically, yet.
User avatar
kode54
Member
 
Posts: 199
Joined: 2003-6-15 @ 05:32

Re: VME Broken on AMD Ryzen

Postby cyclone3d » 2017-5-17 @ 03:45

Why would you even be running a 32-bit OS on RYZEN in the first place?

For my main system, I have not run 32-bit since Windows XP x64 came out.

Yeah, you can see it if you run a VM, but you can also disable it so it works.

Also, the current Intel CPUs apparently don't work properly with x87 code.

Pretty much every CPU is going to have some errata. The things are just so amazingly complex anymore that it is almost impossible to test every possible scenario.
User avatar
cyclone3d
Oldbie
 
Posts: 684
Joined: 2015-4-08 @ 06:06
Location: Huntsville, AL USA

Re: VME Broken on AMD Ryzen

Postby Jo22 » 2017-5-17 @ 06:35

A lot of of people asked "why". Well, I can think of several scenarios.

1) XP. I'm using it very often in a VM. Be it for games or to run my older compilers without compatibility issues,
Delphi 1-7, VB6 and VB.Net 2005.

2) DOS. I like to have a DOS VM around for testing purposes. Emulators are good,
but sometimes it is preferable to have a true DOS VM (where you can't install a real EMS board and QEMM uses VME).
Be it for development (serial, parallel pass-trough to control industrial stuff or ham radios)
or for having all VMs connected in the same virtual network.

3) NVTDM. A few years a go, I've seen active DOS sessions on Windows-PCs in computer shops.
I assume they were still running ancient productivity software written in Clipper or dBase.
(Why not ? Every software is outdated somewhen. DOS is at least simple and well documented..)

Anyway, I'm not blaming AMD for anything. To err is human, and mistakes happen.
But let's face it - we are living in the virtual age now (cloud storage, etc.).
Everything is going to be virtualized and VMs are very important.

In the next decades, current computers are gone. Emulation and virtualization do remain important
to run old software, to preserve our past. Without archived software, we may loose the ability to read old obscure formats.
So yes, XP is one important piece of history. It had the same influence to pop culture like Win95.
So hopefully AMD fixes the issue or disables VME by default. If not, someone else will. Maybe VBox will offer a workaround.
Jo22
Oldbie
 
Posts: 1748
Joined: 2009-12-13 @ 07:06

Re: VME Broken on AMD Ryzen

Postby Scali » 2017-5-17 @ 09:25

Not good for AMD's track record. This is the third time in a row that they release a new CPU architecture that has fundamental flaws (as in, not just a bunch of errata in a datasheet, with perhaps one in a million chance that you'd ever be affected by them in practice. But actual hard crashes in everyday use, easily reproducible):
Barcelona: TLB bug
Bulldozer: BSODs because of issues in power saving management
Ryzen: See above
Scali
l33t
 
Posts: 2830
Joined: 2014-12-13 @ 14:24

Re: VME Broken on AMD Ryzen

Postby Carlos S. M. » 2017-5-17 @ 10:04

For some people, this is gonna be a dealbreaker, especially with VMs and other stuff.
Carlos S. M.
Oldbie
 
Posts: 644
Joined: 2016-5-25 @ 17:01
Location: Canary Islands, Spain

Re: VME Broken on AMD Ryzen

Postby awgamer » 2017-5-17 @ 20:22

Supposedly this can be worked around, obviously not optimal. The deal breaker for me is the for all cases all the time crippled memory controller; limited to two of the four memory slots at slow speed screams AMD rushed out a gimped engineering sample for launch. I'm keen to see what gets fixed with ryzen 2.0, preferably memory and vm + appreciable catch up with IPC to close that 30+% deficiency. Oh yeah, and increase the bandwidth link between cores since people are measuring a big enough performance drop there. Oh yeah 2, fix their half speed AVX implementation as well.
awgamer
Member
 
Posts: 390
Joined: 2014-7-26 @ 07:42

Re: VME Broken on AMD Ryzen

Postby eton975 » 2017-5-19 @ 03:41

Scali wrote:Not good for AMD's track record. This is the third time in a row that they release a new CPU architecture that has fundamental flaws (as in, not just a bunch of errata in a datasheet, with perhaps one in a million chance that you'd ever be affected by them in practice. But actual hard crashes in everyday use, easily reproducible):
Barcelona: TLB bug
Bulldozer: BSODs because of issues in power saving management
Ryzen: See above

Amen to that.

I hear people saying that this'll never affect anyone in the real world and I just scratch my head. 32-bit Windows is still being installed and run on modern PCs and this is a huge deal because the software will just crash due to the improperly implemented INT instruction.

I hear people saying this isn't a big deal and in my mind: aren't these processors supposed to be x86-compatible and fully capable of running even the darndest old DOS software, correctly? If not, then just maybe perhaps AMD shouldn't be releasing engineering samples as commercial product and should remove the advertised support for VM86 mode from the CPUID?

I can boot into 32-bit Win7 and run 16-bit software (still round!) on any Pentium III or higher, why can't a 2017 Ryzen do the same?
eton975
Newbie
 
Posts: 4
Joined: 2017-5-19 @ 03:32

Re: VME Broken on AMD Ryzen

Postby swaaye » 2017-5-19 @ 19:00

One has to wonder how AMD would miss this during the usual rigorous validation a CPU receives. They probably just launched the CPU aware of the issue.
swaaye
Moderator
 
Posts: 6894
Joined: 2002-7-22 @ 21:24
Location: WI, USA

Re: VME Broken on AMD Ryzen

Postby Azarien » 2017-5-21 @ 10:23

Maybe they discovered it late and desperately wanted to avoid a delay.
Azarien
Member
 
Posts: 361
Joined: 2015-5-14 @ 07:14

Re: VME Broken on AMD Ryzen

Postby eton975 » 2017-6-05 @ 03:55

Looks like AGESA 1.0.0.6 fixes the issue, so mobo manufacturers should be shipping new BIOS updates with this patch:

Source
eton975
Newbie
 
Posts: 4
Joined: 2017-5-19 @ 03:32

Re: VME Broken on AMD Ryzen

Postby kode54 » 2017-6-05 @ 04:05

Does that update or a previous update already fix this? Another errata, fixable with a microcode update.
User avatar
kode54
Member
 
Posts: 199
Joined: 2003-6-15 @ 05:32

Re: VME Broken on AMD Ryzen

Postby eton975 » 2017-6-05 @ 04:33

kode54 wrote:Does that update or a previous update already fix this? Another errata, fixable with a microcode update.

I believe AGESA 1.0.0.4 is supposed to fix that.
eton975
Newbie
 
Posts: 4
Joined: 2017-5-19 @ 03:32

Re: VME Broken on AMD Ryzen

Postby Joey_sw » 2017-6-05 @ 09:28

eton975 wrote:Looks like AGESA 1.0.0.6 fixes the issue, so mobo manufacturers should be shipping new BIOS updates with this patch:

Source

Somehow i got this 'feel' that the patch would simply told VME aren't available instead of actually fixing its erronous implementation.

And there video record that VME also affecting Windows 10 PXE boot chainloader.
https://youtu.be/9e78Ui_Acf4
-fffuuu
User avatar
Joey_sw
Oldbie
 
Posts: 529
Joined: 2011-8-17 @ 12:03

Re: VME Broken on AMD Ryzen

Postby Azarien » 2017-6-05 @ 11:50

Joey_sw wrote:Somehow i got this 'feel' that the patch would simply told VME aren't available instead of actually fixing its erronous implementation.

But would that really matter? As I understand this, VME is just an optional extension to vm86 that allows better performance.
I think Ryzen even without VME is more than fast enough for any 16-bit application.

And there video record that VME also affecting Windows 10 PXE boot chainloader.

Or it's yet another bug... anyways, this VME issue should be fixed one way or another, no matter how many people say "who wants to run 32-bit systems on Ryzen".

I'm planning to buy a new machine and I think it'll be Ryzen, but I won't buy it unless I know this issue is fixed.
Azarien
Member
 
Posts: 361
Joined: 2015-5-14 @ 07:14

Re: VME Broken on AMD Ryzen

Postby Jo22 » 2017-6-05 @ 15:23

Azarien wrote:
Joey_sw wrote:Somehow i got this 'feel' that the patch would simply told VME aren't available instead of actually fixing its erronous implementation.

But would that really matter? As I understand this, VME is just an optional extension to vm86 that allows better performance.
I think Ryzen even without VME is more than fast enough for any 16-bit application..

You're right, that's how it is supposed to be. But in pratice.. Who knows?
Maybe there is some piece of software out there which doesn't properly work with its built-in alternate code path.
Remember, VME was a part of the original i586. It's unlikely that the alternate code was thoroughly tested,
because only the oddball CPUs had no VME (NexGen, maybe ?).
Jo22
Oldbie
 
Posts: 1748
Joined: 2009-12-13 @ 07:06

Re: VME Broken on AMD Ryzen

Postby yuhong » 2017-6-06 @ 07:33

Jo22 wrote:
Azarien wrote:
Joey_sw wrote:Somehow i got this 'feel' that the patch would simply told VME aren't available instead of actually fixing its erronous implementation.

But would that really matter? As I understand this, VME is just an optional extension to vm86 that allows better performance.
I think Ryzen even without VME is more than fast enough for any 16-bit application..

You're right, that's how it is supposed to be. But in pratice.. Who knows?
Maybe there is some piece of software out there which doesn't properly work with its built-in alternate code path.
Remember, VME was a part of the original i586. It's unlikely that the alternate code was thoroughly tested,
because only the oddball CPUs had no VME (NexGen, maybe ?).

Win2000 had such a bug.
yuhong
Newbie
 
Posts: 46
Joined: 2010-7-27 @ 07:23

Re: VME Broken on AMD Ryzen

Postby Azarien » 2017-6-06 @ 09:00

Jo22 wrote:Maybe there is some piece of software out there which doesn't properly work with its built-in alternate code path.


If there is an alternate code path at all.. they could have thought: so our system requires Pentium "or higher", and we use VME because it's cool, and we don't even check cpuid for it, but that's okay, it's not that it is ever going away...
Azarien
Member
 
Posts: 361
Joined: 2015-5-14 @ 07:14

Next

Return to PC Emulation

Who is online

Users browsing this forum: superfury and 2 guests