smpcapture01 explanation and expected output.
Gedare Bloom
gedare at rtems.org
Tue Nov 4 16:20:41 UTC 2014
Thanks, I was going to ask for more explanation on that patch itself.
This documentation should accompany the test-case.
-Gedare
On Tue, Nov 4, 2014 at 9:22 AM, Jennifer Averett
<Jennifer.Averett at oarcorp.com> wrote:
> I was asked to post an explanation of the a test I just submitted for review
> (smpcapture01). It is a new SMP test added that does a worst case migration
> of 4 tasks on a 4 core system tracking and displaying the user extension
> records. This task is rather complex to describe but using the notation
> TaskName:Priority:{cpu,cpu} where the third portion indicates the CPUs the
> task has affinity for. The test starts with the initialization task
> (UT1:7:{2,3}) starting execution on CPU 3. This results in the following
> tasks assigned across the CPUs:
>
> · CPUs 0-2: Idle threads
>
> · CPU 3: UT1
>
> The UT1 task creates four more tasks as follows:
>
> · TA1:8:{2,3}
>
> · TA2:5:{0,1}
>
> · TA3:6:{0,3}
>
> · TA3:9:{1}
>
> This should result in the tasks being assigned to CPUs as follows:
>
> · CPU 0: TA3
>
> · CPU 1: TA2
>
> · CPU 2: TA1
>
> · CPU 3: UT1
>
> TA4 should be ready to execute but waiting on a CPU it has affinity for to
> become available.
>
> The test then raises the priority of TA4 to 4, resulting in the tasks being
> assigned to CPUs as follows:
>
> · CPU 0: TA2
>
> · CPU 1: TA4
>
> · CPU 2: UT1
>
> · CPU 3: TA3
>
> At this point TA1 should still be ready to execute but is waiting on a CPU
> it has affinity for to become available.
>
> The tasks are then terminated. Additionally, the capture engine output
> shows that the migration that can occur during task termination adheres to
> the affinity settings.
>
> The capture engine output of this test is as follows:
>
> *** BEGIN OF TEST SMPCAPTURE 1 ***
>
> 1 0:00:00.008653000 0a010003 TA02 5 5 5 4096
> TASK_RECORD
>
> 0 0:00:00.008659000 0a010004 TA03 6 6 6 4096
> TASK_RECORD
>
> 2 0:00:00.008663000 0a010002 TA01 8 8 8 4096
> TASK_RECORD
>
> 1 0:00:00.008681000 0 0a010003 5 5
> SWITCHED_IN
>
> 0 0:00:00.008686000 0 0a010004 6 6
> SWITCHED_IN
>
> 2 0:00:00.008691000 0 0a010002 8 8
> SWITCHED_IN
>
> 1 0:00:00.008734000 53000 0a010003 5 5 BEGIN
>
> 0 0:00:00.008738000 52000 0a010004 6 6 BEGIN
>
> 2 0:00:00.008743000 52000 0a010002 8 8 BEGIN
>
> 3 0:00:00.008914000 0a010001 UI1 7 7 7 4096
> TASK_RECORD
>
> 3 0:00:00.008943000 0 0a010001 7 7
> CREATED_BY
>
> 3 0:00:00.009015000 0a010005 TA04 9 9 9 4096
> TASK_RECORD
>
> 3 0:00:00.009041000 98000 0a010005 9 9 CREATED
>
> 3 0:00:00.009298000 257000 0a010001 7 7
> STARTED_BY
>
> 3 0:00:00.009326000 28000 0a010005 9 9 STARTED
>
> 3 0:00:01.000432000 991106000 0a010001 7 7
> SWITCHED_OUT
>
> 1 0:00:01.000452000 991718000 0a010003 5 5
> SWITCHED_OUT
>
> 3 0:00:01.000456000 24000 0a010004 6 6
> SWITCHED_IN
>
> 0 0:00:01.000473000 991735000 0a010004 6 6
> SWITCHED_OUT
>
> 1 0:00:01.000476000 24000 0a010005 4 4
> SWITCHED_IN
>
> 2 0:00:01.000491000 991748000 0a010002 8 8
> SWITCHED_OUT
>
> 0 0:00:01.000496000 23000 0a010003 5 5
> SWITCHED_IN
>
> 2 0:00:01.000514000 0 0a010001 7 7
> SWITCHED_IN
>
> 1 0:00:01.000527000 0 0a010005 4 4 BEGIN
>
> 2 0:00:01.500426000 499912000 0a010001 7 7
> SWITCHED_OUT
>
> 2 0:00:01.500450000 24000 0a010002 7 7
> SWITCHED_IN
>
> 2 0:00:01.500579000 129000 0a010002 7 7
> TERMINATED
>
> 2 0:00:01.500731000 152000 0a010002 7 7
> SWITCHED_OUT
>
> 2 0:00:01.500755000 24000 0a010001 7 7
> SWITCHED_IN
>
> 2 0:00:01.500966000 211000 0a010001 7 7
> SWITCHED_OUT
>
> 0 0:00:01.501049000 0 0a010003 7 5
> TERMINATED
>
> 2 0:00:01.501186000 220000 0a010001 7 7
> SWITCHED_IN
>
> 0 0:00:01.501200000 151000 0a010003 7 5
> SWITCHED_OUT
>
> 2 0:00:01.501391000 205000 0a010001 7 7
> SWITCHED_OUT
>
> 3 0:00:01.501476000 0 0a010004 7 6
> TERMINATED
>
> 3 0:00:01.501623000 147000 0a010004 7 6
> SWITCHED_OUT
>
> 3 0:00:01.501649000 26000 0a010001 7 7
> SWITCHED_IN
>
> 3 0:00:01.501867000 218000 0a010001 7 7
> SWITCHED_OUT
>
> 1 0:00:01.501945000 501418000 0a010005 7 4
> TERMINATED
>
> 3 0:00:01.502083000 216000 0a010001 7 7
> SWITCHED_IN
>
> 1 0:00:01.502136000 191000 0a010005 7 4
> SWITCHED_OUT
>
> *** END OF TEST SMPCAPTURE 1 ***
>
>
>
>
>
>
>
>
> _______________________________________________
> devel mailing list
> devel at rtems.org
> http://lists.rtems.org/mailman/listinfo/devel
More information about the devel
mailing list