Changeset 27783f6 in rtems
- Timestamp:
- 07/10/14 12:27:42 (9 years ago)
- Branches:
- 4.11, 5, master
- Children:
- f0c8501
- Parents:
- 333f942
- git-author:
- Sebastian Huber <sebastian.huber@…> (07/10/14 12:27:42)
- git-committer:
- Sebastian Huber <sebastian.huber@…> (07/10/14 13:29:57)
- Files:
-
- 8 edited
Legend:
- Unmodified
- Added
- Removed
-
cpukit/score/include/rtems/score/schedulerprioritysmpimpl.h
r333f942 r27783f6 149 149 } 150 150 151 static inline Thread_Control *_Scheduler_priority_SMP_Get_idle_thread(152 Scheduler_Context *context153 )154 {155 return _Scheduler_SMP_Get_idle_thread(156 context,157 _Scheduler_priority_SMP_Extract_from_ready158 );159 }160 161 static void _Scheduler_priority_SMP_Release_idle_thread(162 Scheduler_Context *context,163 Thread_Control *idle164 )165 {166 _Scheduler_SMP_Release_idle_thread(167 context,168 idle,169 _Scheduler_priority_SMP_Insert_ready_fifo170 );171 }172 173 151 static inline void _Scheduler_priority_SMP_Do_update( 174 152 Scheduler_Context *context, -
cpukit/score/include/rtems/score/schedulersmp.h
r333f942 r27783f6 55 55 /** 56 56 * @brief Chain of the available idle threads. 57 * 58 * Idle threads are used for the scheduler helping protocol. It is crucial 59 * that the idle threads preserve their relative order. This is the case for 60 * this priority based scheduler. 57 61 */ 58 62 Chain_Control Idle_threads; -
cpukit/score/include/rtems/score/schedulersmpimpl.h
r333f942 r27783f6 426 426 427 427 static inline Thread_Control *_Scheduler_SMP_Get_idle_thread( 428 Scheduler_Context *context, 429 Scheduler_SMP_Extract extract_from_ready 428 Scheduler_Context *context 430 429 ) 431 430 { … … 433 432 Thread_Control *idle = (Thread_Control *) 434 433 _Chain_Get_first_unprotected( &self->Idle_threads ); 435 Scheduler_Node *own_node = _Scheduler_Thread_get_own_node( idle );436 437 ( *extract_from_ready )( &self->Base, own_node );438 434 439 435 _Assert( &idle->Object.Node != _Chain_Tail( &self->Idle_threads ) ); … … 443 439 444 440 static inline void _Scheduler_SMP_Release_idle_thread( 445 Scheduler_Context *context, 446 Thread_Control *idle, 447 Scheduler_SMP_Insert insert_ready 441 Scheduler_Context *context, 442 Thread_Control *idle 448 443 ) 449 444 { 450 445 Scheduler_SMP_Context *self = _Scheduler_SMP_Get_self( context ); 451 Scheduler_Node *own_node = _Scheduler_Thread_get_own_node( idle );452 446 453 447 _Chain_Prepend_unprotected( &self->Idle_threads, &idle->Object.Node ); 454 ( *insert_ready )( context, own_node );455 448 } 456 449 … … 537 530 Scheduler_SMP_Insert insert_scheduled, 538 531 Scheduler_SMP_Move move_from_scheduled_to_ready, 539 Scheduler_SMP_Allocate_processor allocate_processor, 540 Scheduler_Release_idle_thread release_idle_thread 532 Scheduler_SMP_Allocate_processor allocate_processor 541 533 ) 542 534 { … … 571 563 context, 572 564 lowest_scheduled, 573 release_idle_thread565 _Scheduler_SMP_Release_idle_thread 574 566 ); 575 567 if ( idle == NULL ) { … … 604 596 * @param[in] allocate_processor Function to allocate a processor to a node 605 597 * based on the rules of the scheduler. 606 * @param[in] release_idle_thread Function to release an idle thread.607 598 */ 608 599 static inline Thread_Control *_Scheduler_SMP_Enqueue_ordered( … … 615 606 Scheduler_SMP_Move move_from_scheduled_to_ready, 616 607 Scheduler_SMP_Get_lowest_scheduled get_lowest_scheduled, 617 Scheduler_SMP_Allocate_processor allocate_processor, 618 Scheduler_Release_idle_thread release_idle_thread 608 Scheduler_SMP_Allocate_processor allocate_processor 619 609 ) 620 610 { … … 629 619 insert_scheduled, 630 620 move_from_scheduled_to_ready, 631 allocate_processor, 632 release_idle_thread 621 allocate_processor 633 622 ); 634 623 } else { … … 657 646 * @param[in] allocate_processor Function to allocate a processor to a node 658 647 * based on the rules of the scheduler. 659 * @param[in] get_idle_thread Function to get an idle thread.660 * @param[in] release_idle_thread Function to release an idle thread.661 648 */ 662 649 static inline Thread_Control *_Scheduler_SMP_Enqueue_scheduled_ordered( … … 669 656 Scheduler_SMP_Insert insert_scheduled, 670 657 Scheduler_SMP_Move move_from_ready_to_scheduled, 671 Scheduler_SMP_Allocate_processor allocate_processor, 672 Scheduler_Get_idle_thread get_idle_thread, 673 Scheduler_Release_idle_thread release_idle_thread 658 Scheduler_SMP_Allocate_processor allocate_processor 674 659 ) 675 660 { … … 693 678 context, 694 679 highest_ready, 695 get_idle_thread680 _Scheduler_SMP_Get_idle_thread 696 681 ) 697 682 ) { … … 718 703 context, 719 704 node, 720 release_idle_thread705 _Scheduler_SMP_Release_idle_thread 721 706 ); 722 707 if ( idle == NULL ) { … … 753 738 Scheduler_SMP_Get_highest_ready get_highest_ready, 754 739 Scheduler_SMP_Move move_from_ready_to_scheduled, 755 Scheduler_SMP_Allocate_processor allocate_processor, 756 Scheduler_Get_idle_thread get_idle_thread 740 Scheduler_SMP_Allocate_processor allocate_processor 757 741 ) 758 742 { … … 764 748 context, 765 749 highest_ready, 766 get_idle_thread750 _Scheduler_SMP_Get_idle_thread 767 751 ) 768 752 ) { … … 798 782 * @param[in] move_from_ready_to_scheduled Function to move a node from the set 799 783 * of ready nodes to the set of scheduled nodes. 800 * @param[in] get_idle_thread Function to get an idle thread.801 784 */ 802 785 static inline void _Scheduler_SMP_Block( … … 806 789 Scheduler_SMP_Get_highest_ready get_highest_ready, 807 790 Scheduler_SMP_Move move_from_ready_to_scheduled, 808 Scheduler_SMP_Allocate_processor allocate_processor, 809 Scheduler_Get_idle_thread get_idle_thread 791 Scheduler_SMP_Allocate_processor allocate_processor 810 792 ) 811 793 { … … 816 798 &node->Base, 817 799 is_scheduled, 818 get_idle_thread800 _Scheduler_SMP_Get_idle_thread 819 801 ); 820 802 … … 831 813 get_highest_ready, 832 814 move_from_ready_to_scheduled, 833 allocate_processor, 834 get_idle_thread 815 allocate_processor 835 816 ); 836 817 } else { … … 843 824 Scheduler_Context *context, 844 825 Thread_Control *thread, 845 Scheduler_SMP_Enqueue enqueue_fifo, 846 Scheduler_Release_idle_thread release_idle_thread 826 Scheduler_SMP_Enqueue enqueue_fifo 847 827 ) 848 828 { … … 854 834 &node->Base, 855 835 is_scheduled, 856 release_idle_thread836 _Scheduler_SMP_Release_idle_thread 857 837 ); 858 838 Thread_Control *needs_help; … … 918 898 Thread_Control *offers_help, 919 899 Thread_Control *needs_help, 920 Scheduler_SMP_Enqueue enqueue_fifo, 921 Scheduler_Release_idle_thread release_idle_thread 900 Scheduler_SMP_Enqueue enqueue_fifo 922 901 ) 923 902 { … … 941 920 needs_help, 942 921 previous_accepts_help, 943 release_idle_thread922 _Scheduler_SMP_Release_idle_thread 944 923 ); 945 924 break; -
cpukit/score/src/schedulerpriorityaffinitysmp.c
r333f942 r27783f6 232 232 _Scheduler_priority_affinity_SMP_Get_highest_ready, 233 233 _Scheduler_priority_SMP_Move_from_ready_to_scheduled, 234 _Scheduler_SMP_Allocate_processor_exact, 235 _Scheduler_priority_SMP_Get_idle_thread 234 _Scheduler_SMP_Allocate_processor_exact 236 235 ); 237 236 … … 315 314 _Scheduler_priority_SMP_Move_from_scheduled_to_ready, 316 315 _Scheduler_priority_affinity_SMP_Get_lowest_scheduled, 317 _Scheduler_SMP_Allocate_processor_exact, 318 _Scheduler_priority_SMP_Release_idle_thread 316 _Scheduler_SMP_Allocate_processor_exact 319 317 ); 320 318 } … … 400 398 context, 401 399 thread, 402 _Scheduler_priority_affinity_SMP_Enqueue_fifo, 403 _Scheduler_priority_SMP_Release_idle_thread 400 _Scheduler_priority_affinity_SMP_Enqueue_fifo 404 401 ); 405 402 … … 434 431 _Scheduler_priority_SMP_Move_from_scheduled_to_ready, 435 432 _Scheduler_priority_affinity_SMP_Get_lowest_scheduled, 436 _Scheduler_SMP_Allocate_processor_exact, 437 _Scheduler_priority_SMP_Release_idle_thread 433 _Scheduler_SMP_Allocate_processor_exact 438 434 ); 439 435 } … … 483 479 insert_scheduled, 484 480 _Scheduler_priority_SMP_Move_from_ready_to_scheduled, 485 _Scheduler_SMP_Allocate_processor_exact, 486 _Scheduler_priority_SMP_Get_idle_thread, 487 _Scheduler_priority_SMP_Release_idle_thread 481 _Scheduler_SMP_Allocate_processor_exact 488 482 ); 489 483 } … … 573 567 offers_help, 574 568 needs_help, 575 _Scheduler_priority_affinity_SMP_Enqueue_fifo, 576 _Scheduler_priority_SMP_Release_idle_thread 569 _Scheduler_priority_affinity_SMP_Enqueue_fifo 577 570 ); 578 571 -
cpukit/score/src/schedulerprioritysmp.c
r333f942 r27783f6 94 94 _Scheduler_priority_SMP_Get_highest_ready, 95 95 _Scheduler_priority_SMP_Move_from_ready_to_scheduled, 96 _Scheduler_SMP_Allocate_processor_lazy, 97 _Scheduler_priority_SMP_Get_idle_thread 96 _Scheduler_SMP_Allocate_processor_lazy 98 97 ); 99 98 } … … 117 116 _Scheduler_priority_SMP_Move_from_scheduled_to_ready, 118 117 _Scheduler_SMP_Get_lowest_scheduled, 119 _Scheduler_SMP_Allocate_processor_lazy, 120 _Scheduler_priority_SMP_Release_idle_thread 118 _Scheduler_SMP_Allocate_processor_lazy 121 119 ); 122 120 } … … 171 169 insert_scheduled, 172 170 _Scheduler_priority_SMP_Move_from_ready_to_scheduled, 173 _Scheduler_SMP_Allocate_processor_lazy, 174 _Scheduler_priority_SMP_Get_idle_thread, 175 _Scheduler_priority_SMP_Release_idle_thread 171 _Scheduler_SMP_Allocate_processor_lazy 176 172 ); 177 173 } … … 215 211 context, 216 212 thread, 217 _Scheduler_priority_SMP_Enqueue_fifo, 218 _Scheduler_priority_SMP_Release_idle_thread 213 _Scheduler_priority_SMP_Enqueue_fifo 219 214 ); 220 215 } … … 255 250 offers_help, 256 251 needs_help, 257 _Scheduler_priority_SMP_Enqueue_fifo, 258 _Scheduler_priority_SMP_Release_idle_thread 252 _Scheduler_priority_SMP_Enqueue_fifo 259 253 ); 260 254 } -
cpukit/score/src/schedulersimplesmp.c
r333f942 r27783f6 166 166 } 167 167 168 static Thread_Control *_Scheduler_simple_SMP_Get_idle_thread(169 Scheduler_Context *context170 )171 {172 return _Scheduler_SMP_Get_idle_thread(173 context,174 _Scheduler_simple_SMP_Extract_from_ready175 );176 }177 178 static void _Scheduler_simple_SMP_Release_idle_thread(179 Scheduler_Context *context,180 Thread_Control *idle181 )182 {183 _Scheduler_SMP_Release_idle_thread(184 context,185 idle,186 _Scheduler_simple_SMP_Insert_ready_fifo187 );188 }189 190 168 void _Scheduler_simple_SMP_Block( 191 169 const Scheduler_Control *scheduler, … … 201 179 _Scheduler_simple_SMP_Get_highest_ready, 202 180 _Scheduler_simple_SMP_Move_from_ready_to_scheduled, 203 _Scheduler_SMP_Allocate_processor_lazy, 204 _Scheduler_simple_SMP_Get_idle_thread 181 _Scheduler_SMP_Allocate_processor_lazy 205 182 ); 206 183 } … … 224 201 _Scheduler_simple_SMP_Move_from_scheduled_to_ready, 225 202 _Scheduler_SMP_Get_lowest_scheduled, 226 _Scheduler_SMP_Allocate_processor_lazy, 227 _Scheduler_simple_SMP_Release_idle_thread 203 _Scheduler_SMP_Allocate_processor_lazy 228 204 ); 229 205 } … … 278 254 insert_scheduled, 279 255 _Scheduler_simple_SMP_Move_from_ready_to_scheduled, 280 _Scheduler_SMP_Allocate_processor_lazy, 281 _Scheduler_simple_SMP_Get_idle_thread, 282 _Scheduler_simple_SMP_Release_idle_thread 256 _Scheduler_SMP_Allocate_processor_lazy 283 257 ); 284 258 } … … 322 296 context, 323 297 thread, 324 _Scheduler_simple_SMP_Enqueue_fifo, 325 _Scheduler_simple_SMP_Release_idle_thread 298 _Scheduler_simple_SMP_Enqueue_fifo 326 299 ); 327 300 } … … 362 335 offers_help, 363 336 needs_help, 364 _Scheduler_simple_SMP_Enqueue_fifo, 365 _Scheduler_simple_SMP_Release_idle_thread 337 _Scheduler_simple_SMP_Enqueue_fifo 366 338 ); 367 339 } -
testsuites/smptests/smpmrsp01/init.c
r333f942 r27783f6 901 901 rtems_test_assert(rtems_get_current_processor() == 1); 902 902 903 /* 904 * With this operation the scheduler instance 0 has now only the main and the 905 * idle threads in the ready set. 906 */ 907 sc = rtems_task_suspend(run_task_id); 908 rtems_test_assert(sc == RTEMS_SUCCESSFUL); 909 910 rtems_test_assert(rtems_get_current_processor() == 1); 911 912 change_prio(RTEMS_SELF, 1); 913 change_prio(RTEMS_SELF, 3); 914 903 915 sc = rtems_semaphore_release(ctx->mrsp_ids[0]); 904 916 rtems_test_assert(sc == RTEMS_SUCCESSFUL); 917 918 rtems_test_assert(rtems_get_current_processor() == 0); 905 919 906 920 assert_prio(RTEMS_SELF, 3); -
testsuites/smptests/smpmrsp01/smpmrsp01.scn
r333f942 r27783f6 22 22 [1] MAIN -> HELP (prio 2, node HELP) 23 23 [1] HELP -> MAIN (prio 2, node HELP) 24 [0] IDLE -> MAIN (prio 3, node MAIN) 24 25 [1] MAIN -> HELP (prio 2, node HELP) 25 [0] IDLE -> MAIN (prio 3, node MAIN)26 26 test MrsP obtain and release 27 27 test MrsP load 28 28 worker[0] 29 sleep = 1630 timeout = 34 2031 obtain[0] = 250332 obtain[1] = 167133 obtain[2] = 444634 obtain[3] = 285035 obtain[4] = 500336 obtain[5] = 379337 obtain[6] = 557538 obtain[7] = 446839 obtain[8] = 532640 obtain[9] = 464541 obtain[10] = 456542 obtain[11] = 508243 obtain[12] = 405044 obtain[13] = 520345 obtain[14] = 294546 obtain[15] = 570447 obtain[16] = 165248 obtain[17] = 587049 obtain[18] = 147250 obtain[19] = 493351 obtain[20] = 113652 obtain[21] = 346353 obtain[22] = 125754 obtain[23] = 323055 obtain[24] = 82356 obtain[25] = 286057 obtain[26] = 73658 obtain[27] = 127059 obtain[28] = 43860 obtain[29] = 127361 obtain[30] = 37862 obtain[31] = 42263 cpu[0] = 11642864 cpu[1] = 1613365 cpu[2] = 3298266 cpu[3] = 3255729 sleep = 53 30 timeout = 3445 31 obtain[0] = 7240 32 obtain[1] = 5484 33 obtain[2] = 12983 34 obtain[3] = 9453 35 obtain[4] = 16142 36 obtain[5] = 12509 37 obtain[6] = 16471 38 obtain[7] = 14380 39 obtain[8] = 16566 40 obtain[9] = 16192 41 obtain[10] = 14868 42 obtain[11] = 18208 43 obtain[12] = 12505 44 obtain[13] = 19995 45 obtain[14] = 11155 46 obtain[15] = 20684 47 obtain[16] = 7288 48 obtain[17] = 22252 49 obtain[18] = 6476 50 obtain[19] = 18299 51 obtain[20] = 5711 52 obtain[21] = 17063 53 obtain[22] = 4791 54 obtain[23] = 14655 55 obtain[24] = 3452 56 obtain[25] = 10565 57 obtain[26] = 2912 58 obtain[27] = 8142 59 obtain[28] = 2090 60 obtain[29] = 5086 61 obtain[30] = 1145 62 obtain[31] = 1946 63 cpu[0] = 378475 64 cpu[1] = 64814 65 cpu[2] = 132133 66 cpu[3] = 138047 67 67 worker[1] 68 68 sleep = 1 69 timeout = 470 obtain[0] = 271 obtain[1] = 072 obtain[2] = 373 obtain[3] = 874 obtain[4] = 1075 obtain[5] = 076 obtain[6] = 777 obtain[7] = 078 obtain[8] = 079 obtain[9] = 080 obtain[10] = 1181 obtain[11] = 082 obtain[12] = 2683 obtain[13] = 1484 obtain[14] = 585 obtain[15] = 086 obtain[16] = 087 obtain[17] = 1888 obtain[18] = 1 289 obtain[19] = 090 obtain[20] = 091 obtain[21] = 092 obtain[22] = 069 timeout = 6 70 obtain[0] = 19 71 obtain[1] = 8 72 obtain[2] = 15 73 obtain[3] = 24 74 obtain[4] = 20 75 obtain[5] = 19 76 obtain[6] = 14 77 obtain[7] = 40 78 obtain[8] = 45 79 obtain[9] = 20 80 obtain[10] = 0 81 obtain[11] = 48 82 obtain[12] = 13 83 obtain[13] = 57 84 obtain[14] = 30 85 obtain[15] = 48 86 obtain[16] = 36 87 obtain[17] = 36 88 obtain[18] = 19 89 obtain[19] = 20 90 obtain[20] = 42 91 obtain[21] = 44 92 obtain[22] = 23 93 93 obtain[23] = 0 94 94 obtain[24] = 0 95 obtain[25] = 095 obtain[25] = 26 96 96 obtain[26] = 0 97 97 obtain[27] = 0 … … 100 100 obtain[30] = 0 101 101 obtain[31] = 0 102 cpu[0] = 140103 cpu[1] = 24104 cpu[2] = 3 3105 cpu[3] = 36102 cpu[0] = 650 103 cpu[1] = 92 104 cpu[2] = 379 105 cpu[3] = 212 106 106 worker[2] 107 sleep = 14108 timeout = 3 513109 obtain[0] = 2474110 obtain[1] = 1793111 obtain[2] = 4551112 obtain[3] = 2833113 obtain[4] = 5293114 obtain[5] = 3681115 obtain[6] = 5309116 obtain[7] = 4565117 obtain[8] = 5270118 obtain[9] = 4610119 obtain[10] = 4817120 obtain[11] = 4760121 obtain[12] = 3858122 obtain[13] = 5919123 obtain[14] = 3172124 obtain[15] = 5286125 obtain[16] = 1968126 obtain[17] = 5800127 obtain[18] = 1768128 obtain[19] = 4629129 obtain[20] = 1446130 obtain[21] = 4109131 obtain[22] = 1046132 obtain[23] = 3119133 obtain[24] = 1012134 obtain[25] = 2338135 obtain[26] = 790136 obtain[27] = 1628137 obtain[28] = 432138 obtain[29] = 1281139 obtain[30] = 270140 obtain[31] = 418141 cpu[0] = 15589142 cpu[1] = 121473143 cpu[2] = 31797144 cpu[3] = 31645107 sleep = 51 108 timeout = 3731 109 obtain[0] = 7182 110 obtain[1] = 5663 111 obtain[2] = 12945 112 obtain[3] = 9229 113 obtain[4] = 15592 114 obtain[5] = 12125 115 obtain[6] = 16767 116 obtain[7] = 14480 117 obtain[8] = 16620 118 obtain[9] = 16098 119 obtain[10] = 16409 120 obtain[11] = 18109 121 obtain[12] = 12995 122 obtain[13] = 19452 123 obtain[14] = 10719 124 obtain[15] = 20024 125 obtain[16] = 7769 126 obtain[17] = 21913 127 obtain[18] = 6636 128 obtain[19] = 18524 129 obtain[20] = 5952 130 obtain[21] = 16411 131 obtain[22] = 5228 132 obtain[23] = 14456 133 obtain[24] = 4292 134 obtain[25] = 11143 135 obtain[26] = 3019 136 obtain[27] = 8023 137 obtain[28] = 2006 138 obtain[29] = 4664 139 obtain[30] = 1109 140 obtain[31] = 1976 141 cpu[0] = 65356 142 cpu[1] = 381723 143 cpu[2] = 133444 144 cpu[3] = 134588 145 145 worker[3] 146 146 sleep = 1 147 timeout = 3148 obtain[0] = 4149 obtain[1] = 0150 obtain[2] = 9151 obtain[3] = 0152 obtain[4] = 5153 obtain[5] = 0154 obtain[6] = 0155 obtain[7] = 8156 obtain[8] = 0157 obtain[9] = 10158 obtain[10] = 0159 obtain[11] = 0160 obtain[12] = 0147 timeout = 11 148 obtain[0] = 11 149 obtain[1] = 6 150 obtain[2] = 33 151 obtain[3] = 20 152 obtain[4] = 10 153 obtain[5] = 10 154 obtain[6] = 28 155 obtain[7] = 18 156 obtain[8] = 27 157 obtain[9] = 40 158 obtain[10] = 33 159 obtain[11] = 36 160 obtain[12] = 26 161 161 obtain[13] = 0 162 obtain[14] = 0162 obtain[14] = 15 163 163 obtain[15] = 16 164 164 obtain[16] = 0 165 165 obtain[17] = 18 166 166 obtain[18] = 0 167 obtain[19] = 0167 obtain[19] = 42 168 168 obtain[20] = 0 169 obtain[21] = 1169 obtain[21] = 88 170 170 obtain[22] = 0 171 171 obtain[23] = 24 … … 173 173 obtain[25] = 0 174 174 obtain[26] = 0 175 obtain[27] = 0 175 obtain[27] = 28 176 obtain[28] = 0 177 obtain[29] = 0 178 obtain[30] = 31 179 obtain[31] = 0 180 cpu[0] = 136 181 cpu[1] = 573 182 cpu[2] = 291 183 cpu[3] = 121 184 worker[4] 185 sleep = 47 186 timeout = 3278 187 obtain[0] = 7397 188 obtain[1] = 5723 189 obtain[2] = 13399 190 obtain[3] = 9018 191 obtain[4] = 16575 192 obtain[5] = 12731 193 obtain[6] = 16571 194 obtain[7] = 14376 195 obtain[8] = 16786 196 obtain[9] = 17022 197 obtain[10] = 15889 198 obtain[11] = 19338 199 obtain[12] = 13240 200 obtain[13] = 19055 201 obtain[14] = 11533 202 obtain[15] = 22667 203 obtain[16] = 7521 204 obtain[17] = 21826 205 obtain[18] = 6320 206 obtain[19] = 18522 207 obtain[20] = 6874 208 obtain[21] = 16498 209 obtain[22] = 4983 210 obtain[23] = 14210 211 obtain[24] = 4019 212 obtain[25] = 11510 213 obtain[26] = 3425 214 obtain[27] = 8809 215 obtain[28] = 2002 216 obtain[29] = 5197 217 obtain[30] = 996 218 obtain[31] = 2276 219 cpu[0] = 20729 220 cpu[1] = 19760 221 cpu[2] = 343613 222 cpu[3] = 348561 223 worker[5] 224 sleep = 61 225 timeout = 3183 226 obtain[0] = 7291 227 obtain[1] = 5782 228 obtain[2] = 13633 229 obtain[3] = 9864 230 obtain[4] = 16465 231 obtain[5] = 12581 232 obtain[6] = 17135 233 obtain[7] = 14616 234 obtain[8] = 16524 235 obtain[9] = 16472 236 obtain[10] = 15194 237 obtain[11] = 18038 238 obtain[12] = 13801 239 obtain[13] = 19959 240 obtain[14] = 11693 241 obtain[15] = 20770 242 obtain[16] = 7328 243 obtain[17] = 23222 244 obtain[18] = 7186 245 obtain[19] = 19739 246 obtain[20] = 6584 247 obtain[21] = 17450 248 obtain[22] = 5241 249 obtain[23] = 14808 250 obtain[24] = 4287 251 obtain[25] = 11387 252 obtain[26] = 3367 253 obtain[27] = 8149 254 obtain[28] = 1887 255 obtain[29] = 4969 256 obtain[30] = 1123 257 obtain[31] = 1695 258 cpu[0] = 19504 259 cpu[1] = 20069 260 cpu[2] = 346015 261 cpu[3] = 350953 262 worker[6] 263 sleep = 1 264 timeout = 15 265 obtain[0] = 26 266 obtain[1] = 22 267 obtain[2] = 45 268 obtain[3] = 32 269 obtain[4] = 45 270 obtain[5] = 76 271 obtain[6] = 49 272 obtain[7] = 64 273 obtain[8] = 99 274 obtain[9] = 70 275 obtain[10] = 55 276 obtain[11] = 48 277 obtain[12] = 39 278 obtain[13] = 28 279 obtain[14] = 60 280 obtain[15] = 48 281 obtain[16] = 17 282 obtain[17] = 74 283 obtain[18] = 38 284 obtain[19] = 60 285 obtain[20] = 63 286 obtain[21] = 66 287 obtain[22] = 23 288 obtain[23] = 48 289 obtain[24] = 0 290 obtain[25] = 78 291 obtain[26] = 0 292 obtain[27] = 43 176 293 obtain[28] = 0 177 294 obtain[29] = 0 178 295 obtain[30] = 0 179 obtain[31] = 0 180 cpu[0] = 22 181 cpu[1] = 123 182 cpu[2] = 7 183 cpu[3] = 39 184 worker[4] 185 sleep = 19 186 timeout = 3025 187 obtain[0] = 2574 188 obtain[1] = 1845 189 obtain[2] = 4423 190 obtain[3] = 2985 191 obtain[4] = 5086 192 obtain[5] = 3679 193 obtain[6] = 5286 194 obtain[7] = 4447 195 obtain[8] = 5885 196 obtain[9] = 4771 197 obtain[10] = 4857 198 obtain[11] = 5467 199 obtain[12] = 4554 200 obtain[13] = 5210 201 obtain[14] = 3547 202 obtain[15] = 6169 203 obtain[16] = 2337 204 obtain[17] = 6109 205 obtain[18] = 1797 206 obtain[19] = 5136 207 obtain[20] = 1646 208 obtain[21] = 4251 209 obtain[22] = 1041 210 obtain[23] = 3235 211 obtain[24] = 975 212 obtain[25] = 2961 213 obtain[26] = 739 214 obtain[27] = 1704 215 obtain[28] = 554 216 obtain[29] = 1344 217 obtain[30] = 182 218 obtain[31] = 559 219 cpu[0] = 5617 220 cpu[1] = 5834 221 cpu[2] = 100129 222 cpu[3] = 99149 223 worker[5] 224 sleep = 18 225 timeout = 3123 226 obtain[0] = 2439 227 obtain[1] = 1878 228 obtain[2] = 4576 229 obtain[3] = 2938 230 obtain[4] = 5088 231 obtain[5] = 3723 232 obtain[6] = 5611 233 obtain[7] = 4411 234 obtain[8] = 5522 235 obtain[9] = 4893 236 obtain[10] = 4877 237 obtain[11] = 4932 238 obtain[12] = 4263 239 obtain[13] = 5608 240 obtain[14] = 2791 241 obtain[15] = 5905 242 obtain[16] = 1739 243 obtain[17] = 5322 244 obtain[18] = 1892 245 obtain[19] = 5118 246 obtain[20] = 1360 247 obtain[21] = 4764 248 obtain[22] = 1099 249 obtain[23] = 3180 250 obtain[24] = 913 251 obtain[25] = 2612 252 obtain[26] = 807 253 obtain[27] = 1588 254 obtain[28] = 493 255 obtain[29] = 1348 256 obtain[30] = 389 257 obtain[31] = 471 258 cpu[0] = 5554 259 cpu[1] = 6139 260 cpu[2] = 97852 261 cpu[3] = 95573 262 worker[6] 263 sleep = 1 264 timeout = 11 265 obtain[0] = 2 266 obtain[1] = 2 267 obtain[2] = 9 268 obtain[3] = 4 269 obtain[4] = 15 270 obtain[5] = 12 271 obtain[6] = 7 272 obtain[7] = 16 273 obtain[8] = 10 274 obtain[9] = 20 275 obtain[10] = 11 276 obtain[11] = 5 277 obtain[12] = 0 278 obtain[13] = 0 279 obtain[14] = 0 280 obtain[15] = 16 281 obtain[16] = 0 282 obtain[17] = 0 283 obtain[18] = 0 284 obtain[19] = 20 285 obtain[20] = 0 286 obtain[21] = 44 287 obtain[22] = 0 288 obtain[23] = 0 289 obtain[24] = 0 290 obtain[25] = 7 291 obtain[26] = 0 292 obtain[27] = 0 293 obtain[28] = 0 294 obtain[29] = 0 295 obtain[30] = 0 296 obtain[31] = 0 297 cpu[0] = 10 298 cpu[1] = 6 299 cpu[2] = 168 300 cpu[3] = 217 296 obtain[31] = 32 297 cpu[0] = 71 298 cpu[1] = 39 299 cpu[2] = 1333 300 cpu[3] = 1254 301 301 worker[7] 302 302 sleep = 1 … … 338 338 cpu[2] = 1 339 339 cpu[3] = 0 340 migrations[0] = 110919341 migrations[1] = 110920342 migrations[2] = 109762343 migrations[3] = 112076340 migrations[0] = 437361 341 migrations[1] = 437363 342 migrations[2] = 441234 343 migrations[3] = 433487 344 344 *** END OF TEST SMPMRSP 1 ***
Note: See TracChangeset
for help on using the changeset viewer.