- Hardware & Machines
- Computers and Hardware
- Interesting/Useful Ryzen CPU Latency Results on Non-Hyperthreaded Cpus
Interesting/Useful Ryzen CPU Latency Results on Non-Hyperthreaded Cpus
15 Sep 2024 19:22 #310217
by AJV
This is my first post on here so if this is posted in the wrong place please let me know.
While doing research into machines with good latency numbers for use in parallel port-based step generation I keep seeing discussions about using older enterprise hardware to get good latency numbers. After seeing that most of these systems are from a decade ago I wanted to conduct some experiments to try and find a combination of new components that are able to create a system with low latency for use with parallel ports.
I have a large collection of DDR3 and DDR4 era machines to work with so I thought that it couldn't be that hard to find a modern solution for the latency problem. I had seen on this form in a few places where AMD Ryzen CPUs were not able to create latency numbers low enough to be useful but I had not seen anyone explore using the few non-hyperthreaded Ryzen CPUs.
After a few months of trying different configurations, a pattern started to emerge with the non-hyperthreaded Ryzen CPUs. When they are run in Core Leveling Mode set to 2 Cores per Processor their latency numbers are greatly reduced. This effect can be compounded by isolating CPU cores 0,1,2 in the 4-core Ryzen CPUs. The results from doing this decrease the latency so much that I thought it would be worth posting here for those trying to build a new system for Linuxcnc.
If this effect applies to all non-hyperthreaded Ryzen CPUs then there are significantly more possible combinations that need to be tested. I only was able to test what I had on hand which was the Ryzen 3 1200 and 2300x, but both machines showed this trend to some extent. If there is someone else who can verify that this is not some one-off instance of this effect let me know.
The pictures below are from this machine:
CPU: AMD Ryzen 3 1200 w/ Stock Cooler
GPU: AMD Radeon R5 430 2GB GDDR5
MotherBoard: ASUS Prime B450M-A II
Storage: 970 EVO 250GB - NVMe PCIe M.2
Ram: G.SKILL Ripjaws V Series 1x16gb in DIMM slot 2
Power Supply: Thermaltake Smart 500W 80+
PCIe Parallel Port Cards: StarTech.com 1-Port Parallel PCIe Card PEX1P2
OS: LinuxCNC 2.9.3 Debian 12 Bookworm PREEMPT-RT ISO
Kernal: 6.1.0-23-rt-amd64
All Gixgears instances were run in full screen for the full duration of the histogram.
The Latency Test shows the results after running the Geekbench 6 stress test.
If there are any questions about this setup or configuration I'll be here to answer them.
While doing research into machines with good latency numbers for use in parallel port-based step generation I keep seeing discussions about using older enterprise hardware to get good latency numbers. After seeing that most of these systems are from a decade ago I wanted to conduct some experiments to try and find a combination of new components that are able to create a system with low latency for use with parallel ports.
I have a large collection of DDR3 and DDR4 era machines to work with so I thought that it couldn't be that hard to find a modern solution for the latency problem. I had seen on this form in a few places where AMD Ryzen CPUs were not able to create latency numbers low enough to be useful but I had not seen anyone explore using the few non-hyperthreaded Ryzen CPUs.
After a few months of trying different configurations, a pattern started to emerge with the non-hyperthreaded Ryzen CPUs. When they are run in Core Leveling Mode set to 2 Cores per Processor their latency numbers are greatly reduced. This effect can be compounded by isolating CPU cores 0,1,2 in the 4-core Ryzen CPUs. The results from doing this decrease the latency so much that I thought it would be worth posting here for those trying to build a new system for Linuxcnc.
If this effect applies to all non-hyperthreaded Ryzen CPUs then there are significantly more possible combinations that need to be tested. I only was able to test what I had on hand which was the Ryzen 3 1200 and 2300x, but both machines showed this trend to some extent. If there is someone else who can verify that this is not some one-off instance of this effect let me know.
The pictures below are from this machine:
CPU: AMD Ryzen 3 1200 w/ Stock Cooler
GPU: AMD Radeon R5 430 2GB GDDR5
MotherBoard: ASUS Prime B450M-A II
Storage: 970 EVO 250GB - NVMe PCIe M.2
Ram: G.SKILL Ripjaws V Series 1x16gb in DIMM slot 2
Power Supply: Thermaltake Smart 500W 80+
PCIe Parallel Port Cards: StarTech.com 1-Port Parallel PCIe Card PEX1P2
OS: LinuxCNC 2.9.3 Debian 12 Bookworm PREEMPT-RT ISO
Kernal: 6.1.0-23-rt-amd64
All Gixgears instances were run in full screen for the full duration of the histogram.
The Latency Test shows the results after running the Geekbench 6 stress test.
If there are any questions about this setup or configuration I'll be here to answer them.
The following user(s) said Thank You: tommylight
Please Log in or Create an account to join the conversation.
- tommylight
- Away
- Moderator
Less
More
- Posts: 19188
- Thank you received: 6432
23 Sep 2024 11:50 #310639
by tommylight
Replied by tommylight on topic Interesting/Useful Ryzen CPU Latency Results on Non-Hyperthreaded Cpus
I had a non hyperthreaded Ryzen 5 3500, it was terrible out of the box in latency on a B550 board, it was quite ok on a B450 board.
Had plenty of 3600, 3700x and 3900x and 5600X and 5600G and all are very good out of the box on both types of boards.
Mind you, i never tested with parallel port, only Mesa Ethernet and PCI and PCI-E.
I did have an MSI ATX B450 board that had a parallel port header, expensive gaming one that i got refurbisht for half the price with 3 month warranty, it had very good latency with a 5600G, but again, i did not test much with parallel port except that it worked and switched pins.
Notice i never use isolcpu, just disable stuff in BIOS.
Had plenty of 3600, 3700x and 3900x and 5600X and 5600G and all are very good out of the box on both types of boards.
Mind you, i never tested with parallel port, only Mesa Ethernet and PCI and PCI-E.
I did have an MSI ATX B450 board that had a parallel port header, expensive gaming one that i got refurbisht for half the price with 3 month warranty, it had very good latency with a 5600G, but again, i did not test much with parallel port except that it worked and switched pins.
Notice i never use isolcpu, just disable stuff in BIOS.
Please Log in or Create an account to join the conversation.
28 Sep 2024 04:58 #310944
by AJV
Replied by AJV on topic Interesting/Useful Ryzen CPU Latency Results on Non-Hyperthreaded Cpus
It's good to hear that you were able to get some good numbers out of the larger Ryzen CPUs. How did you disable the hyperthreading on your Ryzen 5 3500? I always assumed it was built into the architecture on a physical level in a way where it could not be disabled.
I have tried running the above-listed parameters on the 5500 and 5900x but wasn't able to extract the performance numbers of the non-hyperthreaded ryzens. I should probably get my hands on a G series Ryzen to see how much the latency is impacted by the onboard graphics processing at some point.
I have tried running the above-listed parameters on the 5500 and 5900x but wasn't able to extract the performance numbers of the non-hyperthreaded ryzens. I should probably get my hands on a G series Ryzen to see how much the latency is impacted by the onboard graphics processing at some point.
Please Log in or Create an account to join the conversation.
- tommylight
- Away
- Moderator
Less
More
- Posts: 19188
- Thank you received: 6432
28 Sep 2024 10:09 #310960
by tommylight
Replied by tommylight on topic Interesting/Useful Ryzen CPU Latency Results on Non-Hyperthreaded Cpus
Ryzen 5 3500 is 6 core 6 thread CPU, so it has no hyperthreading.
Also had a Lenovo ThinkBook 14 (i think) with Ryzen 5 5500U that was perfectly OK for use with Mesa boards, tested on a machine for several days.
Now i only have a 3600 non X on a B550i board, not tested yet, but the same board with 3700X was perfectly OK.
Use bigger coolers, although series 3 and 5 do not heat much, the temperature does fluctuate at the higher end when RT is in use, so might cause throttling and subsequently latency spikes.
And if there is no need for base period, there also no need for very low latency.
Also had a Lenovo ThinkBook 14 (i think) with Ryzen 5 5500U that was perfectly OK for use with Mesa boards, tested on a machine for several days.
Now i only have a 3600 non X on a B550i board, not tested yet, but the same board with 3700X was perfectly OK.
Use bigger coolers, although series 3 and 5 do not heat much, the temperature does fluctuate at the higher end when RT is in use, so might cause throttling and subsequently latency spikes.
And if there is no need for base period, there also no need for very low latency.
The following user(s) said Thank You: AJV
Please Log in or Create an account to join the conversation.
29 Sep 2024 13:22 #311026
by jimmyrig
Replied by jimmyrig on topic Interesting/Useful Ryzen CPU Latency Results on Non-Hyperthreaded Cpus
I have a ryzen 5 1600 on a b350 (or 450 can't remember) and a ryzen 2600 on an a320 (or whatever the cheapest board was at the time)
Both show numbers around what you are seeing and work great!
Both show numbers around what you are seeing and work great!
The following user(s) said Thank You: tommylight
Please Log in or Create an account to join the conversation.
29 Sep 2024 17:13 #311034
by AJV
Replied by AJV on topic Interesting/Useful Ryzen CPU Latency Results on Non-Hyperthreaded Cpus
That's amazing!
It is nice to know that a more modern step-generation option exists that doesn't need Mesa boards. Eventually, the supply of the decade-old business-class machines would have run out so it's a much-needed find to keep homemade CNC machines affordable.
It looks like now you can piece together a decent machine with 2nd hand and new parts for less than $300
Example for those wondering:
Mobo: PRIME A320M-F ASUS - $60 eBay
Cpu: AMD Ryzen 3 1200 - $32 eBay
Gpu: R5 430 2GB GDDR5 - $14 eBay
Ram: Samsung DDR4-2133p 8GB - $17 Amazon
Psu: Thermaltake Smart 500W 80+ - $40 Amazon
SSD: Patriot P300 M.2 PCIe Gen 3 x4 256GB - $22 Amazon
Case: Matx case - $35 Amazon
StarTech.com 1-Port Parallel PCIe Card PEX1P2 - $32 Amazon
Total: $252 including sales tax (For IL that is)
You can definitely find some of these parts cheaper but I think the prices above are pretty average.
It is nice to know that a more modern step-generation option exists that doesn't need Mesa boards. Eventually, the supply of the decade-old business-class machines would have run out so it's a much-needed find to keep homemade CNC machines affordable.
It looks like now you can piece together a decent machine with 2nd hand and new parts for less than $300
Example for those wondering:
Mobo: PRIME A320M-F ASUS - $60 eBay
Cpu: AMD Ryzen 3 1200 - $32 eBay
Gpu: R5 430 2GB GDDR5 - $14 eBay
Ram: Samsung DDR4-2133p 8GB - $17 Amazon
Psu: Thermaltake Smart 500W 80+ - $40 Amazon
SSD: Patriot P300 M.2 PCIe Gen 3 x4 256GB - $22 Amazon
Case: Matx case - $35 Amazon
StarTech.com 1-Port Parallel PCIe Card PEX1P2 - $32 Amazon
Total: $252 including sales tax (For IL that is)
You can definitely find some of these parts cheaper but I think the prices above are pretty average.
The following user(s) said Thank You: tommylight
Please Log in or Create an account to join the conversation.
- tommylight
- Away
- Moderator
Less
More
- Posts: 19188
- Thank you received: 6432
29 Sep 2024 20:55 #311043
by tommylight
Replied by tommylight on topic Interesting/Useful Ryzen CPU Latency Results on Non-Hyperthreaded Cpus
Or get a used Dell or HP Z210 with parallel ports or headers, usually from 30 to 100$, built like tanks and never fail. Well they do, but very, very rarely.
The following user(s) said Thank You: AJV
Please Log in or Create an account to join the conversation.
- Hardware & Machines
- Computers and Hardware
- Interesting/Useful Ryzen CPU Latency Results on Non-Hyperthreaded Cpus
Time to create page: 0.072 seconds