XCOM for Windows Production Server.
Using Windows Resource Monitor it was observed that Server CPU utilisation is going high to 100% at multiple server instances.
From Resource Monitor there are multiple xcomtcp.exe running and getting terminated and consuming high CPU.
XCOM™ Data Transport® for Windows
XCOM Engineering worked with end user and reviewed the Task Manager (Details tab) on a server in reversed name order.
It showed between 0 to approximately 12 xcomtcp processes with the PIDs always changing in very quick succession. There was never a status of Terminated.
The end user then showed the equivalent processes in the Resource Monitor which showed a status of Terminated.
Engineering investigated further the difference between Task Manager and Resource Monitor. This article explains best what those two utilities show and why the information is different: How does Resource Monitor get information for processes that already terminated?
*****
How does the Resource Monitor program get information for processes that have already terminated?
Try it: Run Task Manager, then go to the Performance tab. From there, click Open Resource Monitor. Now run another program, say, Notepad. Let Notepad run for a while, and then close it. Observe that there is still an entry for notepad.exe in Resource Monitor, labeled Terminated.
What is the function to call to get performance statistics on a program that has terminated?
There is no function to get performance statistics for a program that has terminated. What you’re seeing is an optical illusion: Resource Monitor continues to show statistics for processes that have terminated, so that you can see the final results before they go away.
Here’s proof that it’s an illusion: After exiting Notepad and putting it into the grayed-out Terminated state in Resource Monitor, go back to Task Manager and click Open Resource Monitor again. This will open another instance of Resource Monitor, and in that new instance, you’ll see no trace of the terminated Notepad process.
Now you see it. Now you don’t.
*****
Engineering ran transfers from the AS/400 to Windows at a regular cadence (simulating user's scenario). The Task Manager showed one or two xcomtcp processes and up to about 5 xcommail processes. In the Resource manager they see up to around 40 xcomtcp processes and up to around 30 xcommail processes. Like the article says, the Resource Manager shows the results of the processes running for some time. In Engineering's case, if they click on a xcomtcp running process, it will very quickly turn Terminated with around 0.1% CPU and it stays there Terminated for about 1 minute.
So in summary there appears to be no issue with any unexpected behaviour by the xcomtcp.exe processes.
The user had an internal team discussion around this issue and the CPU utilisation looks normal for the past few days. Also previously Windows was not activated on the server and is now activated. The user's Windows team suggested to raise an issue with Microsoft if the CPU spikes again and request an immediate response.