Forum Replies Created
I’m convinced that the problem has to be in the network driver on the laptop.
As I’ve observed before, rebooting the laptop generally improves or eliminates the problem for some period of time. Once the laptop has been running for a while (sometimes more than a week), the sluggishness begins to appear and gets progressively worse over time. Once the problem gets bad enough that the connection to the server becomes practically unusable, if I ping from the laptop (via WiFi router and then by hardwired ethernet through a gigabit switch) to the server, I periodically see a lot of very long ping times, sometimes a second or more.
I’m assuming that the problem is in the connection between the laptop and the WiFi router (i.e., the new laptop’s network driver), since the connection between the router and the server machine would be the same for both laptops, and the old laptop works fine. So I think my next step is to try to determine if there is a known issue with this driver and if there is some remedy available, such as a driver update or maybe some adjustable parameters to tweak.
I think it’s safe to say that while the problem isn’t solved, at least it is no longer within the scope of this forum.
Thanks for your help, @Britgirl.
Maybe I’ve been chasing the wrong tail. Given that I only see this problem on the new laptop, maybe there’s a network driver issue here.
Thanks, @Britgirl. I’ll spend some time investigating this.
My best guess is that this is an issue in the AMD graphics driver that is obscure enough that it is not likely to be resolved, as I feared when I first posted. I go back and forth between my old Intel-based laptop and my AMD-based one. The Intel one has no problems. The AMD one seems to start out ok after a reboot and gets progressively worse the longer it is running, to the point that after a few days to a week or so it is very noticeable.
I guess I’ll live with it until I can afford to replace this laptop with another Intel-based one. 🙁
I declared victory too soon.
This morning I am back to the sluggish screen updates.
I guess the good thing is that now I have been able to collect logs that may be more helpful:
1. I set the server log level to 7
2. I disabled UDP in the player connection
3. I disabled client-side hw decoding
4. I enabled server logs
5. I viewed video data for a few minutes in a browser window. The video was jerky.
6. I collected then disabled the server logs.
7. I collected the player logs and statistics
I’ll attach the result here and email them.
I believe I have stumbled on to the underlying cause of this issue.
I decided to look closer at the graphics driver. First, in the Device Manager listing for Display Adapters, I found the driver and went to the Properties->Driver->Update Driver tab. Then, “Browse my computer for drivers” and “Let me pick from a list of available drivers on my computer”. This led to the original driver that came with the computer, the one that I had downloaded from AMD and a third option, “Microsoft Basic Display Adapter”. I switched to the Basic Display adapter and noticed the same sluggish behavior.
I then opened a tab in the Properties box called “Events”. I noticed a number of instances of a description “Device not started (amdwddmg)”. The description of the error was just “had a problem starting”. I noticed this starting at the time I bought the new computer. I also saw the same event when I switched to the Basic Display driver.
I then searched the Internet for issues that people were having with the AMD Radeon driver (amdwddmg), finding that there were a number of issues reported of this event code, mostly with people gaming. One suggestion was to uninstall the device and reinstall it, then reboot.
After doing this, I went back to the Properties->Events tab and noticed that the last instance of the error message was from my previous update of the driver, not the re-installation.
I next connected to the server, and from what I can tell so far, all is well. Since this problem has taken a while to show up before, I’ll give it some time before declaring victory, but so far it looks good.
(I found the references to collecting logs and created them, then browsed through the results, but they didn’t really mean much to me. I was actually looking for another issue I had noticed that you had discussed in another thread on this forum relating to the server not using hardware encoding since the transition from version 7 to version 8. I had noticed this, too. I wasn’t able to confirm that the server was using hardware encoding, even after supposedly enabling it in the server status application. I don’t know whether this is something that requires hardware that I don’t have on the server machine, so I didn’t pursue it any further.)
Follow up and correction to my previous post:
I decided to confirm my impression that my old laptop (Intel CPU/Graphics) was behaving in the same way as the new one (AMD/Radeon graphics). I was surprised to find that the old computer works fine, while the new one is problematic.
I no longer have any doubt that there is some interaction between either the AMD processor or the graphics chip/driver that is causing this issue.
While I searched the Forums for NX issues between Windows 10 and Debian, I have not yet attempted to see if there is any mention specifically relating to AMD/Radeon. I’ll pursue this angle next.
I’ve spent the last week trying lots of things in an attempt to find something to provide a clue, but nothing I’ve tried has resulted in a consistently responsive connection. Here are the things I’ve tried:
1. I updated the NoMachine software on both client and server to 8.2.3.
2. I updated the graphics driver on the client to the latest AMD version dated 10/2022. I eventually had to roll back to the earlier driver, because it sometimes failed to produce any image in browser windows.
3. I tried both enabling and disabling hardware decoding on the client.
4. I set the server up to dual boot both Xubuntu 22.04 and Debian 11. Similar behavior on both.
5. I tried both wire (gigabit) and WiFi connections between the client and the server.
6. I have the client set up within sight of the server’s display. Any action (keyboard, mouse, scroll) on the client machine show up immediately on the server display, but takes a variable amount of time to respond on the client display. Sometimes its virtually instantaneous, other times there is a delay.
7. I tried to determine if the NoMachine process on the client machine was using excessive CPU, but this is not really possible using the Task Manager -> Display tab as suggested earlier, because the results are updated about once per second, and I don’t think there is a way to take a screenshot of the Task Manager display while connected to the server. As an alternative, I check the Task Manager -> Performance -> CPU tab, because it provides an indication over time. Even when displaying video on the server, the graph never goes above 20% utilization.
8. I resurrected my old laptop (with an Intel processor), updated to the same software versions as the new one (with an AMD) processor. Recall that my original fear was that the difference was in the processor/graphics department. The old laptop is now displaying similar behavior to the new one – sluggishness.
9. I tried rolling both client and server software back to version 7.10.1. I believe I have copies of version 6.9.2, but I haven’t tried those yet.
One more detail that I don’t think has been considered before: I’m running X11, not Wayland.
This is very frustrating. There are times when everything briefly is working well, often shortly after client and/or server machines are rebooted or when I disconnect/reconnect to the server. Then I start seeing typing, scrolling, moving from window to window or desktop to desktop on the server take a variable amount of time, sometimes up to several seconds.
Is there any other type of debugging/logging/testing I can try?
“Enable hardware accelerated decoding” is disabled on the Linux machine, but that is the server. The player (client) is running on Windows. I did find a setting in the advanced display settings to “Disable client side hardware decoding”, and I selected that. The Connection information on the client side reports that Encoding and Decoding are both set to SW.
Now we wait and see if the symptoms return.
Sorry for taking so long to update, but my last test didn’t fix the problem. Meanwhile, I’ve been trying a lot of things.
First, I found that disabling hardware encoding on both the client and server machines didn’t change anything. Then, I realized that the setting for hardware encoding is in the Server settings, so I wouldn’t have expected changing the client machine to have any effect. If there is a separate setting for client-side hardware encoding, I didn’t find it. This made me wonder if I wasn’t correctly addressing @britgirl’s request that I disable hardware decoding.
Next, I switched the server machine from Debian 11 to xubuntu 22.04 (LTS). Still not much difference.
Finally, I installed all the latest Microsoft updates on the Windows 10 client and updated the client and server NX software to version 8.1.2.
It’s only been less than an hour since I installed the NX update, but so far, the responsiveness is still good, but since it has typically taken a couple days of use and connect/disconnect to see the sluggishness return, I’m not going to declare victory yet.
Another test I’m running is to go back to my previous laptop (where I wasn’t having this issue), bring it up to date with the same Windows 10 and NX versions as I’m running on the new laptop. I haven’t had much time to play with this configuration, but my first attempt to use it resulted in the connection being dropped after about 3 seconds every time I connected. This seems a bit concerning, but it’s not as critical right now as getting everything running right on my new laptop.
(To refresh a key point here: The old laptop has an Intel processor and dual Intel/NVIDIA GeForce video (not sure which is being used), the new one has an AMD processor and Radeon graphics. I was concerned that the difference in processor/graphics may have been the cause of my problem.)
After disabling hardware encoding on the Windows client, the sluggishness came back after a week or so.
I have now (a few days ago) disabled it on the Linux server. So far, everything seems to be running fine with no sluggishness. I’ll update when I think I’m satisfied the change has resolved the issue.
I’ve disabled hardware encoding on the Windows (client).
When I disabled it before, I only did it on the Windows machine. Should I have also disabled it on the LInux (server) machine? Maybe that will be the next step if the sluggishness comes back. In either case, I’m not going to be too quick to assume that this fixes the problem. I’ll run it this way for a couple weeks.
It’s been a couple weeks since I’ve re-enabled hardware decoding, and I’ve now been seeing the sluggish behavior gradually increasing. I’ll upload a couple of screen shots of the Task Manager Details tab as requested. I certainly don’t see any sign of the CPU being monopolized by any process. However, since the Details tab provides a real-time display of CPU utilization, I don’t know how meaningful this information will be, because I can’t observe the sluggish behavior and trigger the screen shot at the same time.
I’m thinking the next step will be to go back to disable the hardware decoding. Perhaps the issue was actually there, but I just didn’t wait long enough for it to show up. I won’t do that yet, though, in case there is some other test you want me to try first. On the other hand, if the permanent work-around ends up being to run with hardware decoding turned off, I could live with that.
I’ve had hardware decoding re-enabled for more than a week now and the sluggishness has not yet returned, at least not noticeably so. I’m still monitoring for it daily, but I haven’t been working very actively since then.
If it comes back, I’ll send another screenshot of the Details tab.
I emailed the file as requested. As I mentioned in the email, I don’t know for sure if this is what you’re looking for. It’s a screen shot of the CPU utilization during a time that the nomachine connection was active. If you were looking for individual processes that were running at that time, I’ll have to send something else.
Here is the information of the client graphics driver:
Driver Provider: Advanced Micro Devices, Inc.
Driver Date: 12/29/2021
Driver Version: 30.0.13040.5001
Driver Signer: Microsoft Windows Hardware Compatability Publisher