Hi all,
I have a customer server with 32 cores, 128G ram i7960X. So nice box...
Why is it that "all" I am really doing at the moment is copying things to an external SSD disk USB3 connected and the machine "freezes"... Why is that?
clearly plenty of CPU RAM everything... I can see "blocking" to write data to the external disk - but there are 31 other cores and plenty of memory to make it "seem" as nothing is happening right now.
Do I need to 'tweak' something to no see GUI freezes... Waiting on characters to show - even remoted in with SSH experiences the same thing - so its not just X.
Thanks for any suggestions.
Jerry
On Mon, 5 Aug 2019 at 13:17, Jerry Geis jerry.geis@gmail.com wrote:
Hi all,
I have a customer server with 32 cores, 128G ram i7960X. So nice box...
Why is it that "all" I am really doing at the moment is copying things to an external SSD disk USB3 connected and the machine "freezes"... Why is that?
You may have a motherboard which is routing a lot through a single USB controller. When that happens your graphical workstation will slow down because your keyboard and mouse events and some other polling has to complete before it can do the next thing. THis has nothing to do with the amount of RAM or cores in the system.. the hardware itself has been designed to have a blocking unit on it as can be seen by the fact that network logins are also freezing.
clearly plenty of CPU RAM everything... I can see "blocking" to write data to the external disk - but there are 31 other cores and plenty of memory to make it "seem" as nothing is happening right now.
Those 31 cores are waiting for the hardware backbus to be opened up for writing. Until that happens they are just spinning. Some of this depends on how the motherboard is designed and some of this may be x86 architecture issues.
Do I need to 'tweak' something to no see GUI freezes... Waiting on characters to show - even remoted in with SSH experiences the same thing - so its not just X.
Thanks for any suggestions.
Jerry _______________________________________________ CentOS mailing list CentOS@centos.org https://lists.centos.org/mailman/listinfo/centos
On Aug 5, 2019, at 11:25 AM, Stephen John Smoogen smooge@gmail.com wrote:
On Mon, 5 Aug 2019 at 13:17, Jerry Geis jerry.geis@gmail.com wrote:
Why is it that "all" I am really doing at the moment is copying things to an external SSD disk USB3 connected and the machine "freezes"... Why is that?
You may have a motherboard which is routing a lot through a single USB controller. When that happens your graphical workstation will slow down because your keyboard and mouse events and some other polling has to complete before it can do the next thing.
Ridiculous if true. Modern OSes solved the blocking I/O problem decades ago.
Consider: you may have a gigabit Ethernet connection to the Internet, and it is probably throttled to a small fraction of that speed by your ISP, yet you can be pumping hundreds of giga*bytes* per second to your SSD while your browser is blocked waiting for the remote server to respond. Further, while one site is being slow to respond, another background Internet task can use the idled Internet connection.
This is a symptom of a real problem, and it may be well worth chasing it to the ground.
Jerry: Try another I/O channel for the same copy. For example, what happens if you rsync the same file set to a remote machine, with the USB SSD connected to *that* machine? Or, if you have a Thunderbolt or FireWire option, try that instead. It might even be worth dropping a PCIe card into the machine for an alternative I/O path just to help diagnose this. If nothing else, it might solve the problem.
USB is a terrible standard, emblematic of everything wrong with the PC world. We were sold USB-C as the grand unification of Thunderbolt and classic USB, but what we actually got are 6+ different and partially incompatible flavors of USB-C!
https://people.kernel.org/bleung/how-many-kinds-of-usb-c-to-usb-c-cables-are... https://news.ycombinator.com/item?id=20444326
On Mon, 5 Aug 2019 at 19:49, Warren Young warren@etr-usa.com wrote:
On Aug 5, 2019, at 11:25 AM, Stephen John Smoogen smooge@gmail.com wrote:
On Mon, 5 Aug 2019 at 13:17, Jerry Geis jerry.geis@gmail.com wrote:
Why is it that "all" I am really doing at the moment is copying things
to
an external SSD disk USB3 connected and the machine "freezes"... Why is that?
You may have a motherboard which is routing a lot through a single USB controller. When that happens your graphical workstation will slow down because your keyboard and mouse events and some other polling has to complete before it can do the next thing.
Ridiculous if true. Modern OSes solved the blocking I/O problem decades ago.
The OS can only do as much as the hardware allows. USB is usually given a higher connection on the hardware because people get grumpy about mouse jerkiness. Some motherboards will give you multiple USB controllers where you have one which is highest priority so keyboard/mouse doesn't stop and the other is on a lower priority bus for disk transfers. Other motherboards stick them all on the same controller and you end up with everything frozen while a large USB transfer occurs. It doesn't matter the OS you are running when this happens the problems are in the hardware IO controllers and usually can only be 'fixed' by firmware (if you are lucky). [Which is why you can have 2 people with the 'same' motherboard unable to replicate each others issues until you burn them all to the same firmware all through out (and hope the manufacturer didn't change the MB somewhere in the runs.).
My next suggestion was similar to what you have below. See if plugging in a different USB port mitigates the issue. If the mother board has a 2-3 vertical stacks, they sometimes have the furthest one from the keyboard on a different bus. Also see what the lsusb and lspci commands say.. they can sometimes point out a helpful hint.
Consider: you may have a gigabit Ethernet connection to the Internet, and it is probably throttled to a small fraction of that speed by your ISP, yet you can be pumping hundreds of giga*bytes* per second to your SSD while your browser is blocked waiting for the remote server to respond. Further, while one site is being slow to respond, another background Internet task can use the idled Internet connection.
This is a symptom of a real problem, and it may be well worth chasing it to the ground.
Jerry: Try another I/O channel for the same copy. For example, what happens if you rsync the same file set to a remote machine, with the USB SSD connected to *that* machine? Or, if you have a Thunderbolt or FireWire option, try that instead. It might even be worth dropping a PCIe card into the machine for an alternative I/O path just to help diagnose this. If nothing else, it might solve the problem.
USB is a terrible standard, emblematic of everything wrong with the PC world. We were sold USB-C as the grand unification of Thunderbolt and classic USB, but what we actually got are 6+ different and partially incompatible flavors of USB-C!
https://people.kernel.org/bleung/how-many-kinds-of-usb-c-to-usb-c-cables-are... https://news.ycombinator.com/item?id=20444326 _______________________________________________ CentOS mailing list CentOS@centos.org https://lists.centos.org/mailman/listinfo/centos
On Aug 6, 2019, at 7:04 AM, Stephen John Smoogen smooge@gmail.com wrote:
On Mon, 5 Aug 2019 at 19:49, Warren Young warren@etr-usa.com wrote:
On Aug 5, 2019, at 11:25 AM, Stephen John Smoogen smooge@gmail.com wrote:
On Mon, 5 Aug 2019 at 13:17, Jerry Geis jerry.geis@gmail.com wrote:
an external SSD disk USB3 connected and the machine "freezes"... Why is that?
You may have a motherboard which is routing a lot through a single USB controller.
Ridiculous if true. Modern OSes solved the blocking I/O problem decades ago.
The OS can only do as much as the hardware allows.
Back when we had serial mice, the most common data rate was 1200 bps. That’s 0.0012 Mbit/sec. If your 480 Mbit/sec USB-2 or 5/10/20 Mbit/sec USB-3 bus is so jammed up that it can’t trickle through that much data per second from the mouse while an SSD on the same bus is blocked on I/O, it’s dreck hardware.
Once upon a time, Warren Young warren@etr-usa.com said:
Back when we had serial mice, the most common data rate was 1200 bps. That’s 0.0012 Mbit/sec. If your 480 Mbit/sec USB-2 or 5/10/20 Mbit/sec USB-3 bus is so jammed up that it can’t trickle through that much data per second from the mouse while an SSD on the same bus is blocked on I/O, it’s dreck hardware.
Yes, you have described USB.
The newer storage-specific transfer modes for USB3 try to do better, but it's still a shared bus and requires lots of CPU "assistance" to do just about anything. And there are lots of systems that have some USB3 and some USB2 ports - accidentally plug your external SSD into a USB2 port and start copying lots of data, and the system can just about appear to be hung. Welcome to USB!
Jerry Geis wrote:
I have a customer server with 32 cores, 128G ram i7960X. So nice box...
Why is it that "all" I am really doing at the moment is copying things to an external SSD disk USB3 connected and the machine "freezes"... Why is that?
clearly plenty of CPU RAM everything... I can see "blocking" to write data to the external disk - but there are 31 other cores and plenty of memory to make it "seem" as nothing is happening right now.
Do I need to 'tweak' something to no see GUI freezes... Waiting on characters to show - even remoted in with SSH experiences the same thing - so its not just X.
Thanks for any suggestions.
What's top show? And maybe iostat?
mark
There are no errors in dmesg.
Top was showing 88% idle.
If something is blocking somewhere as Stephen suggested - that's a major bummer. The keyboard is USB attached and the external SSD disk is USB attached. The mother board is an X299 UD4 Pro Anyway to use "nice" command to help with responiveness? I was just using "rsync . /media/external" to do the copy.
Thanks,
Jerry
On Mon, Aug 5, 2019 at 2:01 PM Jerry Geis jerry.geis@gmail.com wrote:
Anyway to use "nice" command to help with responiveness? I was just using "rsync . /media/external" to do the copy.
You need to discover where it is blocking before deciding which solution will work. Something like iotop, atop, or other more wide system monitoring util will be more valuable than top/htop at this point since you seem to be sure that's it's not the processor usage that is the issue. nice will only work for scheduling processor use. There is the ionice command that can be used to set I/O priority. It really doesn't sound like you have a problem with process scheduling, so it's is probably more down the line of what you would want to try depending on what a system util tells you.
On 8/5/19 3:00 PM, Jerry Geis wrote:
The keyboard is USB attached and the external SSD disk is USB attached.
WHY? Why would you do that? What's the point of SSD if you reduce the speed to USB? Or just use an old mechanical drive instead. Any issue with that drive will show up as IO Wait - my presumption is that you expect to see that so you're not mentioning it but it's going to be extremely high.
Remember, USB does not behave like SATA. And you may also find that the "max speed" in the specification is far from what you get out of your hardware. Use eSATA if you need it externally - not USB(3 or otherwise).
On Aug 6, 2019, at 2:43 PM, Peter Larsen peter@peterlarsen.org wrote:
you may also find that the "max speed" in the specification is far from what you get out of your hardware.
“May?” :)
That’s about like saying Honda Civics can go 0-60 in 2.8 seconds…when dropped off a cliff nose down so you get the benefit of the car’s well-designed aerodynamics.
https://www.quora.com/How-fast-will-a-free-fall-take-me-from-0-60-mph
use eSATA if you need it externally
I’ve had a lot of problems with eSATA, mainly in the delicacy of the cabling and connectors. It’s almost as bad a standard as USB.
Proper Thunderbolt is far more robust and reliable, but you do pay for that.
…which is why USB sucks. We expect to pay $20 for an 8-port hub, then gripe when half the ports die when the cat walks by due to the static EM field it emits.
I once went looking for reliable $100 USB hubs, but I couldn’t find anything outside the industrial sphere. There’s the tragedy of USB: I can’t pay more to get better quality even if I wanted to, because the market punishes those that try. They’d get 1-star reviews on Amazon because they’re too expensive!