Hi.

I am looking for some advice. I model custom HW with 100+ CPUs.
The CPUs are working on different parts of one big workload and sometimes have 
common SW synchronizations points,
however, in between those synch points vCPUs seem to run with very different 
pace depending on how underlying OS
schedules the threads (which presents some problems for the analysis).

Thus, my questions:

1. Is there a straightforward way to obtain vCPU "active" time? That is a time 
when vCPU thread was scheduled by underlying OS to run,
when it was executing instructions or waiting for something.
In other words, something that would reflect vCPU "time" better than number of 
executed instructions.

2. Bonus. Assuming I know vCPU "active" time, are there any ways to control 
pace of vCPUs to at least some extent?
I do not need it to be precise, I just want to avoid situations when one vCPU 
ran near zero time, and another vCPU already executed millions of instructions.

Thank you in advance.
-Igor

Reply via email to