Changeset 50be8af5 for tests/concurrency/actors
- Timestamp:
- Sep 17, 2023, 11:19:08 AM (2 years ago)
- Branches:
- master
- Children:
- 7edf912
- Parents:
- 697c957
- Location:
- tests/concurrency/actors
- Files:
-
- 6 edited
Legend:
- Unmodified
- Added
- Removed
-
tests/concurrency/actors/dynamic.cfa
r697c957 r50be8af5 36 36 case 2: 37 37 if ( strcmp( argv[1], "d" ) != 0 ) { // default ? 38 Times = ato i( argv[1] );39 if ( Times < 1 ) goto Usage;38 Times = ato( argv[1] ); 39 if ( Times < 1 ) fallthru default; 40 40 } // if 41 41 case 1: // use defaults 42 42 break; 43 43 default: 44 Usage: 45 sout | "Usage: " | argv[0] | " [ times (> 0) ]"; 46 exit( EXIT_FAILURE ); 44 exit | "Usage: " | argv[0] | " [ times (> 0) ]"; 47 45 } // switch 48 46 49 printf("starting\n");47 sout | "starting"; 50 48 51 49 executor e{ 0, 1, 1, false }; 52 50 start_actor_system( e ); 53 51 54 printf("started\n");52 sout | "started"; 55 53 56 54 derived_msg * d_msg = alloc(); … … 60 58 *d_actor | *d_msg; 61 59 62 printf("stopping\n");60 sout | "stopping"; 63 61 64 62 stop_actor_system(); 65 63 66 printf("stopped\n");64 sout | "stopped"; 67 65 68 66 return 0; -
tests/concurrency/actors/executor.cfa
r697c957 r50be8af5 40 40 case 7: 41 41 if ( strcmp( argv[6], "d" ) != 0 ) { // default ? 42 BufSize = ato i( argv[6] );43 if ( BufSize < 0 ) goto Usage;42 BufSize = ato( argv[6] ); 43 if ( BufSize < 0 ) fallthru default; 44 44 } // if 45 45 case 6: 46 46 if ( strcmp( argv[5], "d" ) != 0 ) { // default ? 47 Batch = ato i( argv[5] );48 if ( Batch < 1 ) goto Usage;47 Batch = ato( argv[5] ); 48 if ( Batch < 1 ) fallthru default; 49 49 } // if 50 50 case 5: 51 51 if ( strcmp( argv[4], "d" ) != 0 ) { // default ? 52 Processors = ato i( argv[4] );53 if ( Processors < 1 ) goto Usage;52 Processors = ato( argv[4] ); 53 if ( Processors < 1 ) fallthru default; 54 54 } // if 55 55 case 4: 56 56 if ( strcmp( argv[3], "d" ) != 0 ) { // default ? 57 Rounds = ato i( argv[3] );58 if ( Rounds < 1 ) goto Usage;57 Rounds = ato( argv[3] ); 58 if ( Rounds < 1 ) fallthru default; 59 59 } // if 60 60 case 3: 61 61 if ( strcmp( argv[2], "d" ) != 0 ) { // default ? 62 Set = ato i( argv[2] );63 if ( Set < 1 ) goto Usage;62 Set = ato( argv[2] ); 63 if ( Set < 1 ) fallthru default; 64 64 } // if 65 65 case 2: 66 66 if ( strcmp( argv[1], "d" ) != 0 ) { // default ? 67 Actors = ato i( argv[1] );68 if ( Actors < 1 || Actors <= Set || Actors % Set != 0 ) goto Usage;67 Actors = ato( argv[1] ); 68 if ( Actors < 1 || Actors <= Set || Actors % Set != 0 ) fallthru default; 69 69 } // if 70 70 case 1: // use defaults 71 71 break; 72 72 default: 73 Usage: 74 sout | "Usage: " | argv[0] 73 exit | "Usage: " | argv[0] 75 74 | " [ actors (> 0 && > set && actors % set == 0 ) | 'd' (default " | Actors 76 75 | ") ] [ set (> 0) | 'd' (default " | Set … … 80 79 | ") ] [ buffer size (>= 0) | 'd' (default " | BufSize 81 80 | ") ]" ; 82 exit( EXIT_FAILURE );83 81 } // switch 84 82 85 83 executor e{ Processors, Processors, Processors == 1 ? 1 : Processors * 512, true }; 86 84 87 printf("starting\n");85 sout | "starting"; 88 86 89 87 start_actor_system( e ); 90 88 91 printf("started\n");89 sout | "started"; 92 90 93 91 d_actor actors[ Actors ]; … … 97 95 } // for 98 96 99 printf("stopping\n");97 sout | "stopping"; 100 98 101 99 stop_actor_system(); 102 100 103 printf("stopped\n");101 sout | "stopped"; 104 102 105 103 return 0; -
tests/concurrency/actors/matrix.cfa
r697c957 r50be8af5 5 5 #include <stdio.h> 6 6 7 unsigned int xr = 500, xc = 500, yc = 500, Processors = 1; // default values 7 int xr = 500, xc = 500, yc = 500, Processors = 1; // default values, must be signed 8 8 9 9 struct derived_actor { inline actor; }; … … 38 38 case 5: 39 39 if ( strcmp( argv[4], "d" ) != 0 ) { // default ? 40 Processors = ato i( argv[4] );41 if ( Processors < 1 ) goto Usage;40 Processors = ato( argv[4] ); 41 if ( Processors < 1 ) fallthru default; 42 42 } // if 43 43 case 4: 44 44 if ( strcmp( argv[3], "d" ) != 0 ) { // default ? 45 xr = ato i( argv[3] );46 if ( xr < 1 ) goto Usage;45 xr = ato( argv[3] ); 46 if ( xr < 1 ) fallthru default; 47 47 } // if 48 48 case 3: 49 49 if ( strcmp( argv[2], "d" ) != 0 ) { // default ? 50 xc = ato i( argv[2] );51 if ( xc < 1 ) goto Usage;50 xc = ato( argv[2] ); 51 if ( xc < 1 ) fallthru default; 52 52 } // if 53 53 case 2: 54 54 if ( strcmp( argv[1], "d" ) != 0 ) { // default ? 55 yc = ato i( argv[1] );56 if ( yc < 1 ) goto Usage;55 yc = ato( argv[1] ); 56 if ( yc < 1 ) fallthru default; 57 57 } // if 58 58 case 1: // use defaults 59 59 break; 60 60 default: 61 Usage: 62 sout | "Usage: " | argv[0] 61 exit | "Usage: " | argv[0] 63 62 | " [ yc (> 0) | 'd' (default " | yc 64 63 | ") ] [ xc (> 0) | 'd' (default " | xc … … 66 65 | ") ] [ processors (> 0) | 'd' (default " | Processors 67 66 | ") ]" ; 68 exit( EXIT_FAILURE );69 67 } // switch 70 68 … … 90 88 executor e{ Processors, Processors, Processors == 1 ? 1 : Processors * 16, true }; 91 89 92 printf("starting\n");90 sout | "starting"; 93 91 94 92 start_actor_system( e ); 95 93 96 printf("started\n");94 sout | "started"; 97 95 98 96 derived_msg messages[xr]; … … 108 106 } // for 109 107 110 printf("stopping\n");108 sout | "stopping"; 111 109 112 110 stop_actor_system(); 113 111 114 printf("stopped\n");112 sout | "stopped"; 115 113 116 114 for ( r = 0; r < xr; r += 1 ) { // deallocate X and Z matrices … … 121 119 free( Y[r] ); 122 120 } // for 123 124 return 0;125 121 } -
tests/concurrency/actors/pingpong.cfa
r697c957 r50be8af5 42 42 43 43 int main( int argc, char * argv[] ) { 44 printf("start\n");44 sout | "start"; 45 45 46 46 processor p[Processors - 1]; … … 56 56 stop_actor_system(); 57 57 58 printf("end\n"); 59 return 0; 58 sout | "end"; 60 59 } -
tests/concurrency/actors/static.cfa
r697c957 r50be8af5 33 33 case 2: 34 34 if ( strcmp( argv[1], "d" ) != 0 ) { // default ? 35 Times = ato i( argv[1] );36 if ( Times < 1 ) goto Usage;35 Times = ato( argv[1] ); 36 if ( Times < 1 ) fallthru default; 37 37 } // if 38 38 case 1: // use defaults 39 39 break; 40 40 default: 41 Usage: 42 sout | "Usage: " | argv[0] | " [ times (> 0) ]"; 43 exit( EXIT_FAILURE ); 41 exit | "Usage: " | argv[0] | " [ times (> 0) ]"; 44 42 } // switch 45 43 46 printf("starting\n");44 sout | "starting"; 47 45 48 46 executor e{ 0, 1, 1, false }; 49 47 start_actor_system( e ); 50 48 51 printf("started\n");49 sout | "started"; 52 50 53 51 derived_msg msg; … … 57 55 actor | msg; 58 56 59 printf("stopping\n");57 sout | "stopping"; 60 58 61 59 stop_actor_system(); 62 60 63 printf("stopped\n");61 sout | "stopped"; 64 62 65 63 return 0; -
tests/concurrency/actors/types.cfa
r697c957 r50be8af5 62 62 63 63 int main( int argc, char * argv[] ) { 64 printf("start\n");64 sout | "start"; 65 65 66 66 processor p[Processors - 1]; 67 67 68 printf("basic test\n");68 sout | "basic test"; 69 69 start_actor_system( Processors ); // test passing number of processors 70 70 derived_actor a; … … 75 75 stop_actor_system(); 76 76 77 printf("same message and different actors test\n");77 sout | "same message and different actors test"; 78 78 start_actor_system(); // let system detect # of processors 79 79 derived_actor2 d_ac2_0, d_ac2_1; … … 86 86 87 87 { 88 printf("same message and different actor types test\n");88 sout | "same message and different actor types test"; 89 89 executor e{ 0, Processors, Processors == 1 ? 1 : Processors * 4, false }; 90 90 start_actor_system( e ); // pass an explicit executor … … 99 99 100 100 { 101 printf("different message types, one actor test\n");101 sout | "different message types, one actor test"; 102 102 executor e{ 1, Processors, Processors == 1 ? 1 : Processors * 4, true }; 103 103 start_actor_system( Processors ); … … 112 112 113 113 { 114 printf("nested inheritance actor test\n");114 sout | "nested inheritance actor test"; 115 115 executor e{ 1, Processors, Processors == 1 ? 1 : Processors * 4, true }; 116 116 start_actor_system( Processors ); … … 124 124 } // RAII to clean up executor 125 125 126 printf("end\n"); 127 return 0; 126 sout | "end"; 128 127 }
Note:
See TracChangeset
for help on using the changeset viewer.