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.