Back to home page

LXR

 
 

    


Warning, /testsuites/smptests/smpcapture01/smpcapture01.doc is written in an unsupported language. File is not indexed.

0001 This file describes the directives and concepts tested by this test set.
0002 
0003 test set name: smpcapture01
0004 
0005 directives:
0006   rtems_capture_open
0007   rtems_capture_watch_ceiling
0008   rtems_capture_watch_floor
0009   rtems_capture_watch_global
0010   rtems_capture_set_trigger
0011   rtems_capture_control
0012   rtems_capture_print_trace_records
0013 
0014 
0015 concepts:
0016 
0017 This test does a worst case migration of 4 tasks on a 4 core system tracking
0018 and displaying the user extension records. This task is rather complex to
0019 describe but using the notation TaskName:Priority:{cpu,cpu} where the third
0020 portion indicates the CPUs the task has affinity for. The test starts with
0021 the initialization task (UT1:7:{2,3}) starting execution on CPU 3. This
0022 results in the following tasks assigned across the CPUs:
0023 
0024      CPUs 0-2: Idle threads
0025      CPU 3: UT1
0026 
0027 The UT1 task creates four more tasks as follows:
0028      TA1:8:{2,3}
0029      TA2:5:{0,1}
0030      TA3:6:{0,3}
0031      TA4:9:{1}
0032 
0033 This should result in the tasks being assigned to CPUs as follows:
0034      CPU 0: TA3
0035      CPU 1: TA2
0036      CPU 2: TA1
0037      CPU 3: UT1
0038 
0039 TA4 should be ready to execute but waiting on a CPU it has affinity for
0040 to become available.  The test then raises the priority of TA4 to 4,
0041 resulting in the tasks being assigned to CPUs as follows:
0042      CPU 0: TA2
0043      CPU 1: TA4
0044      CPU 2: UT1
0045      CPU 3: TA3
0046 
0047 At this point TA1 should still be ready to execute but is waiting on a CPU
0048 it has affinity for to become available.  The tasks are then terminated.
0049 Additionally, the capture engine output shows that the migration that can
0050 occur during task termination adheres to the affinity settings.