40 lines
1.1 KiB
Plaintext
40 lines
1.1 KiB
Plaintext
Testcase 03
|
|
-----------
|
|
|
|
This test verifies that when you online a new CPU, that the scheduler
|
|
takes advantage of it by shifting some of its workloads onto it. We do
|
|
this by offlining a CPU, creating a bunch of processor intensive
|
|
processes, and then onlining the CPU, and checking to make sure at least
|
|
one of the processes moved to that CPU.
|
|
|
|
|
|
Algorithm
|
|
=========
|
|
Given a CPU to test that exists
|
|
|
|
Take a snapshot of what CPUs are on and off initially
|
|
|
|
Loop until done:
|
|
Online all of the CPUs and note their state
|
|
|
|
Offline the specified CPU
|
|
|
|
Start up a number of processes equal to twice the number of CPUs we
|
|
have, so we can be pretty sure that we've got enough processes that at
|
|
least one will migrate to the new CPU.
|
|
|
|
Now online the specified CPU
|
|
|
|
Wait a few seconds, to allow the process scheduler to move processes
|
|
around a bit.
|
|
|
|
Verify that at least one process has migrated to the new CPU by
|
|
looking at the output from 'ps -o psr -o com' and searching for our
|
|
CPU running the process.
|
|
|
|
|
|
When exiting:
|
|
Kill all of the load processes
|
|
|
|
Restore all CPUs to their initial state
|