At the AMD Tech Day I had the opportunity to get some hands-on time with AMD Ryzen and a few different systems. Thanks to a wonderful Linux-Bench version on a USB 3.0 stick, I was able to get numbers to publish. It was a painful process and required several reboots until I got it all working. After hammering the four test configurations we have, I came to the conclusion that the actual issue was not a pre-retail chip. Instead, it is just running AMD Ryzen using the current version of Ubuntu. We had issues with Ubuntu 14.04.5 LTS (the current latest) that is the STH standard. We also had issues with Ubuntu 16.04.2 LTS. These were present in both Desktop and Server versions of Ubuntu. That is enough different configurations where we are now satisfied that it is not a fluke, but instead an issue with AMD Ryzen and older kernels.
Update: We published Stop constant CentOS 7.3 crashes with AMD Ryzen using Kernel 4.10 as a piece for those looking to fix issues on CentOS 7.
As you can see, we even built two test platforms with different CPUs just to ensure it was not a CPU model-specific issue we were seeing. One had the Ryzen 7 1700 and the other had a Ryzen 7 1700X, both of which are headed to our DemoEval lab. We are using the ASUS Prime B350-Plus motherboard in the twin systems as it was different than the X370 boards we used previously.
AMD Ryzen with Ubuntu – Why your system is crashing
There have been numerous reports of SMT issues and it is a known fix that got rolled out in the Linux 4.10 and 4.11 kernels as we mentioned in our release piece. We have four systems up already with different CPUs and motherboards that are exhibiting this problem. We have tried simultaneous wall clock timers to see when the systems fail but it does not seem to be a specific time trigger. Here is an example of what you will see at some point running AMD Ryzen with Ubuntu 14.04.5 AMD64 Server:
At this point using reboot methods such as ctrl + alt + del will likely not work and will require a hard reboot.
How to fix AMD Ryzen with Ubuntu
Since as of release day (2 March 2017) the latest stable kernel posted on kernel.org is 4.10.1, which was released on 26 February 2017, we can use that to upgrade our Ubuntu installations and get a working, stable, system. Here is what you can do:
In that paste the following text:
echo Everything is downloaded. Time to install.
sudo dpkg -i linux-headers-4.10*.deb linux-image-4.10*.deb
echo Type sudo reboot to restart your system with the new kernel.
Now hit control x to exit and then y to save changes.
Let that download. It will ask you for sudo credentials. After it is complete, do
sudo reboot as the screen will say to reboot the system and use your new Linux 4.10.1 kernel. You can verify using
One plus side to this is that the newer kernel version also is giving us significantly more performance. Our advice, use whatever Linux flavor you want, but upgrade it to the latest stable kernel immediately if you want to use AMD Ryzen. Since we will undoubtedly get the question, this does not mean that the chips are not x86 and AMD64 compatible. It is simply an example of where development has been focused on how Intel does things. With AMD’s implementation, we simply need to apply an existing update.