Ignore:
Timestamp:
Sep 17, 2023, 11:19:08 AM (2 years ago)
Author:
Peter A. Buhr <pabuhr@…>
Branches:
master
Children:
7edf912
Parents:
697c957
Message:

clean up command-line handling and I/O

Location:
tests/concurrency/actors
Files:
6 edited

Legend:

Unmodified
Added
Removed
  • tests/concurrency/actors/dynamic.cfa

    r697c957 r50be8af5  
    3636          case 2:
    3737                if ( strcmp( argv[1], "d" ) != 0 ) {                    // default ?
    38                         Times = atoi( argv[1] );
    39                         if ( Times < 1 ) goto Usage;
     38                        Times = ato( argv[1] );
     39                        if ( Times < 1 ) fallthru default;
    4040                } // if
    4141          case 1:                                                                                       // use defaults
    4242                break;
    4343          default:
    44           Usage:
    45                 sout | "Usage: " | argv[0] | " [ times (> 0) ]";
    46                 exit( EXIT_FAILURE );
     44                exit | "Usage: " | argv[0] | " [ times (> 0) ]";
    4745        } // switch
    4846
    49     printf("starting\n");
     47    sout | "starting";
    5048
    5149    executor e{ 0, 1, 1, false };
    5250    start_actor_system( e );
    5351
    54     printf("started\n");
     52    sout | "started";
    5553
    5654    derived_msg * d_msg = alloc();
     
    6058    *d_actor | *d_msg;
    6159
    62     printf("stopping\n");
     60    sout | "stopping";
    6361
    6462    stop_actor_system();
    6563
    66     printf("stopped\n");
     64    sout | "stopped";
    6765
    6866    return 0;
  • tests/concurrency/actors/executor.cfa

    r697c957 r50be8af5  
    4040          case 7:
    4141                if ( strcmp( argv[6], "d" ) != 0 ) {                    // default ?
    42                         BufSize = atoi( argv[6] );
    43                         if ( BufSize < 0 ) goto Usage;
     42                        BufSize = ato( argv[6] );
     43                        if ( BufSize < 0 ) fallthru default;
    4444                } // if
    4545          case 6:
    4646                if ( strcmp( argv[5], "d" ) != 0 ) {                    // default ?
    47                         Batch = atoi( argv[5] );
    48                         if ( Batch < 1 ) goto Usage;
     47                        Batch = ato( argv[5] );
     48                        if ( Batch < 1 ) fallthru default;
    4949                } // if
    5050          case 5:
    5151                if ( strcmp( argv[4], "d" ) != 0 ) {                    // default ?
    52                         Processors = atoi( argv[4] );
    53                         if ( Processors < 1 ) goto Usage;
     52                        Processors = ato( argv[4] );
     53                        if ( Processors < 1 ) fallthru default;
    5454                } // if
    5555          case 4:
    5656                if ( strcmp( argv[3], "d" ) != 0 ) {                    // default ?
    57                         Rounds = atoi( argv[3] );
    58                         if ( Rounds < 1 ) goto Usage;
     57                        Rounds = ato( argv[3] );
     58                        if ( Rounds < 1 ) fallthru default;
    5959                } // if
    6060          case 3:
    6161                if ( strcmp( argv[2], "d" ) != 0 ) {                    // default ?
    62                         Set = atoi( argv[2] );
    63                         if ( Set < 1 ) goto Usage;
     62                        Set = ato( argv[2] );
     63                        if ( Set < 1 ) fallthru default;
    6464                } // if
    6565          case 2:
    6666                if ( strcmp( argv[1], "d" ) != 0 ) {                    // default ?
    67                         Actors = atoi( 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;
    6969                } // if
    7070          case 1:                                                                                       // use defaults
    7171                break;
    7272          default:
    73           Usage:
    74                 sout | "Usage: " | argv[0]
     73                exit | "Usage: " | argv[0]
    7574             | " [ actors (> 0 && > set && actors % set == 0 ) | 'd' (default " | Actors
    7675                         | ") ] [ set (> 0) | 'd' (default " | Set
     
    8079                         | ") ] [ buffer size (>= 0) | 'd' (default " | BufSize
    8180                         | ") ]" ;
    82                 exit( EXIT_FAILURE );
    8381        } // switch
    8482
    8583    executor e{ Processors, Processors, Processors == 1 ? 1 : Processors * 512, true };
    8684
    87     printf("starting\n");
     85    sout | "starting";
    8886
    8987    start_actor_system( e );
    9088
    91     printf("started\n");
     89    sout | "started";
    9290
    9391    d_actor actors[ Actors ];
     
    9795        } // for
    9896
    99     printf("stopping\n");
     97    sout | "stopping";
    10098
    10199    stop_actor_system();
    102100
    103     printf("stopped\n");
     101    sout | "stopped";
    104102
    105103    return 0;
  • tests/concurrency/actors/matrix.cfa

    r697c957 r50be8af5  
    55#include <stdio.h>
    66
    7 unsigned int xr = 500, xc = 500, yc = 500, Processors = 1; // default values
     7int xr = 500, xc = 500, yc = 500, Processors = 1; // default values, must be signed
    88
    99struct derived_actor { inline actor; };
     
    3838          case 5:
    3939                if ( strcmp( argv[4], "d" ) != 0 ) {                    // default ?
    40                         Processors = atoi( argv[4] );
    41                         if ( Processors < 1 ) goto Usage;
     40                        Processors = ato( argv[4] );
     41                        if ( Processors < 1 ) fallthru default;
    4242                } // if
    4343          case 4:
    4444                if ( strcmp( argv[3], "d" ) != 0 ) {                    // default ?
    45                         xr = atoi( argv[3] );
    46                         if ( xr < 1 ) goto Usage;
     45                        xr = ato( argv[3] );
     46                        if ( xr < 1 ) fallthru default;
    4747                } // if
    4848          case 3:
    4949                if ( strcmp( argv[2], "d" ) != 0 ) {                    // default ?
    50                         xc = atoi( argv[2] );
    51                         if ( xc < 1 ) goto Usage;
     50                        xc = ato( argv[2] );
     51                        if ( xc < 1 ) fallthru default;
    5252                } // if
    5353          case 2:
    5454                if ( strcmp( argv[1], "d" ) != 0 ) {                    // default ?
    55                         yc = atoi( argv[1] );
    56                         if ( yc < 1 ) goto Usage;
     55                        yc = ato( argv[1] );
     56                        if ( yc < 1 ) fallthru default;
    5757                } // if
    5858          case 1:                                                                                       // use defaults
    5959                break;
    6060          default:
    61           Usage:
    62                 sout | "Usage: " | argv[0]
     61                exit | "Usage: " | argv[0]
    6362                         | " [ yc (> 0) | 'd' (default " | yc
    6463                         | ") ] [ xc (> 0) | 'd' (default " | xc
     
    6665                         | ") ] [ processors (> 0) | 'd' (default " | Processors
    6766                         | ") ]" ;
    68                 exit( EXIT_FAILURE );
    6967        } // switch
    7068
     
    9088    executor e{ Processors, Processors, Processors == 1 ? 1 : Processors * 16, true };
    9189
    92     printf("starting\n");
     90    sout | "starting";
    9391
    9492    start_actor_system( e );
    9593
    96     printf("started\n");
     94    sout | "started";
    9795
    9896    derived_msg messages[xr];
     
    108106        } // for
    109107
    110     printf("stopping\n");
     108    sout | "stopping";
    111109
    112110    stop_actor_system();
    113111
    114     printf("stopped\n");
     112    sout | "stopped";
    115113
    116114    for ( r = 0; r < xr; r += 1 ) {                                             // deallocate X and Z matrices
     
    121119        free( Y[r] );
    122120        } // for
    123 
    124     return 0;
    125121}
  • tests/concurrency/actors/pingpong.cfa

    r697c957 r50be8af5  
    4242
    4343int main( int argc, char * argv[] ) {
    44     printf("start\n");
     44    sout | "start";
    4545
    4646    processor p[Processors - 1];
     
    5656    stop_actor_system();
    5757
    58     printf("end\n");
    59     return 0;
     58    sout | "end";
    6059}
  • tests/concurrency/actors/static.cfa

    r697c957 r50be8af5  
    3333          case 2:
    3434                if ( strcmp( argv[1], "d" ) != 0 ) {                    // default ?
    35                         Times = atoi( argv[1] );
    36                         if ( Times < 1 ) goto Usage;
     35                        Times = ato( argv[1] );
     36                        if ( Times < 1 ) fallthru default;
    3737                } // if
    3838          case 1:                                                                                       // use defaults
    3939                break;
    4040          default:
    41           Usage:
    42                 sout | "Usage: " | argv[0] | " [ times (> 0) ]";
    43                 exit( EXIT_FAILURE );
     41                exit | "Usage: " | argv[0] | " [ times (> 0) ]";
    4442        } // switch
    4543
    46     printf("starting\n");
     44    sout | "starting";
    4745
    4846    executor e{ 0, 1, 1, false };
    4947    start_actor_system( e );
    5048
    51     printf("started\n");
     49    sout | "started";
    5250
    5351    derived_msg msg;
     
    5755    actor | msg;
    5856
    59     printf("stopping\n");
     57    sout | "stopping";
    6058
    6159    stop_actor_system();
    6260
    63     printf("stopped\n");
     61    sout | "stopped";
    6462
    6563    return 0;
  • tests/concurrency/actors/types.cfa

    r697c957 r50be8af5  
    6262
    6363int main( int argc, char * argv[] ) {
    64     printf("start\n");
     64    sout | "start";
    6565
    6666    processor p[Processors - 1];
    6767
    68     printf("basic test\n");
     68    sout | "basic test";
    6969    start_actor_system( Processors ); // test passing number of processors
    7070    derived_actor a;
     
    7575    stop_actor_system();
    7676
    77     printf("same message and different actors test\n");
     77    sout | "same message and different actors test";
    7878    start_actor_system(); // let system detect # of processors
    7979    derived_actor2 d_ac2_0, d_ac2_1;
     
    8686   
    8787    {
    88         printf("same message and different actor types test\n");
     88        sout | "same message and different actor types test";
    8989        executor e{ 0, Processors, Processors == 1 ? 1 : Processors * 4, false };
    9090        start_actor_system( e ); // pass an explicit executor
     
    9999
    100100    {
    101         printf("different message types, one actor test\n");
     101        sout | "different message types, one actor test";
    102102        executor e{ 1, Processors, Processors == 1 ? 1 : Processors * 4, true };
    103103        start_actor_system( Processors );
     
    112112
    113113    {
    114         printf("nested inheritance actor test\n");
     114        sout | "nested inheritance actor test";
    115115        executor e{ 1, Processors, Processors == 1 ? 1 : Processors * 4, true };
    116116        start_actor_system( Processors );
     
    124124    } // RAII to clean up executor
    125125
    126     printf("end\n");
    127     return 0;
     126    sout | "end";
    128127}
Note: See TracChangeset for help on using the changeset viewer.