Skip to main content
17-Peridot
June 23, 2021
Solved

WVS CAD Worker Optimization and Memory Management

  • June 23, 2021
  • 2 replies
  • 3354 views

Hi, has anyone out there come up with a good scheme for managing memory in the WVS CAD Worker machines?

I run 5 virtual CAD workers on a single VM, which spawns 5 Creo sessions for converting CAD models to Creo View format. Everything is great when it starts, but over time (about a week), each session of Creo will grab up all memory it can until the machine has little to no memory left.

We have implemented a new monitoring system here and I get reports about my CAD workers being critically low on available RAM and virtual memory all the time. I'd like to find a way to make them run more efficiently.

Considering a weekly restart of the GS Worker Daemon service over the weekend to see if that will help, but I don't think once/week will be enough. Also concerned about stopping and starting the service on the CAD Worker w/o first shutting down the CAD worker from the Worker Admin UI in Windchill.

Best answer by Ajit_Kulkarni

In the proe2pv.rcp (recipe editor) , set value 10 (appropriate value) for "Exit Adapter after # Conversions"

2 replies

16-Pearl
June 23, 2021

Hello ,

 

There are many possible answer here. One suggestion is to restart creo after n number of publishing. e.g. 10. 

One more suggestion is to have a script which will stop worker , clears the cache and start worker again. you can schedule this in OS scheduler.

 

Regards

Ajit

17-Peridot
June 23, 2021

Yes, I already have a script to clear the cache which runs once/month. It will be easy enough to add service stop;wait;service start line to it. I am a little concerned about stopping and starting the service w/o shutting down the workers in Windchill.

I like the idea of restarting Creo after 10 publish jobs, but not sure how to make that happen. Do you have some suggestions?

16-Pearl
June 23, 2021

In the proe2pv.rcp (recipe editor) , set value 10 (appropriate value) for "Exit Adapter after # Conversions"

16-Pearl
June 23, 2021

Add a taskkill command at the start of the .bat file so every publish job starts with a clean session

17-Peridot
June 24, 2021

This is not so easy since you need to know which task you need to kill! If he is running 5 xtop.exe process, he needs to remember it so he can kill the task. Otherwise he will kill a false one.

23-Emerald IV
June 24, 2021

Actually, it's not hard at all.  Just run each worker under it's own separate service account.  This is covered in CS162756.

 

TomU_0-1624542396293.png