Changes in / [e93cbfa:eacf82c]


Ignore:
Files:
6 edited

Legend:

Unmodified
Added
Removed
  • benchmark/io/http/filecache.cfa

    re93cbfa reacf82c  
    5656}
    5757
    58 static inline [unsigned size, char unit] human_size( size_t size ) {
    59         int idx = 0;
    60         static char units [] = { ' ', 'K', 'M', 'G', 'T' };
    61         while( size >= 1024 ) {
    62                 idx++;
    63                 size /= 1024;
    64                 if(idx >= 5) {
    65                         abort("File too large to print\n");
    66                 }
    67         }
    68 
    69         return [size, units[idx]];
    70 }
    7158
    7259struct {
     
    114101void fill_cache( const char * path ) {
    115102        int ret;
    116         ret = chdir(path);
    117         if(ret < 0) {
    118                 abort( "chdir error: (%d) %s\n", (int)errno, strerror(errno) );
    119         }
    120 
    121103        size_t fcount = 0;
    122104        size_t fsize = 16;
     
    136118                raw[idx].file = strdup(fpath+2);
    137119                raw[idx].size = sb->st_size;
    138                 if( !options.file_cache_list ) {
    139                         raw[idx].fd = open( fpath, options.open_flags );
    140                         if(raw[idx].fd < 0) {
    141                                 abort( "open file error: (%d) %s\n", (int)errno, strerror(errno) );
    142                         }
     120                raw[idx].fd = open( fpath, options.open_flags );
     121                if(raw[idx].fd < 0) {
     122                        abort( "open file error: (%d) %s\n", (int)errno, strerror(errno) );
    143123                }
    144124                return 0;
    145125        }
    146126
    147         ret = ftw(".", walk, 10);
     127        ret = ftw(path, walk, 10);
    148128        if(ret < 0) {
    149129                abort( "ftw error: (%d) %s\n", (int)errno, strerror(errno) );
     
    152132        if(fcount == 0) {
    153133                abort("No file found in path %s\n", path);
    154         }
    155 
    156         if(options.file_cache_list) {
    157                 printf("Listing files and exiting\n");
    158                 for(i; fcount) {
    159                         int s; char u;
    160                         [s, u] = human_size(raw[i].size);
    161                         printf("%4d%c - %s\n", s, u, raw[i].file);
    162                         free(raw[i].file);
    163                 }
    164                 free(raw);
    165                 exit(0);
    166134        }
    167135
  • benchmark/io/http/main.cfa

    re93cbfa reacf82c  
    2424//=============================================================================================
    2525Options options @= {
    26         0,     //   open_flags;
    27         42u,   //       hash_seed;
    28         0,     //   file_cache_size;
    29         false, //       file_cache_list;
    30         false, //       procstats;
    31         false, //       viewhalts;
    32         0      //       the_cluster;
     26        0,
     27        42u,
     28        0,
     29        false,
     30        false,
     31        0
    3332};
    3433
     
    7170                {'t', "threads", "Number of worker threads to use", nworkers},
    7271                {'b', "accept-backlog", "Maximum number of pending accepts", backlog},
    73                 {'B', "channel-size", "Maximum number of accepted connection pending", chan_size},
    74                 {'S', "seed", "seed to use for hashing", options.hash_seed },
    75                 {'C', "cache-size", "Size of the cache to use, if set to small, will uses closes power of 2", options.file_cache_size },
    76                 {'l', "list-files", "List the files in the specified path and exit", options.file_cache_list, parse_settrue }
    77 
     72                {'B', "channel-size", "Maximum number of accepted connection pending", chan_size}
    7873        };
    7974        int opt_cnt = sizeof(opt) / sizeof(cfa_option);
    8075
    8176        char **left;
    82       parse_args( argc, argv, opt, opt_cnt, "[OPTIONS]... [PATH]\ncforall http server", left );
    83         if( left[0] != 0p ) {
    84                 path = left[0];
    85                 left++;
    86         }
    87         if( left[0] != 0p ) {
    88                 abort("Too many trailing arguments!\n");
    89         }
     77      parse_args( argc, argv, opt, opt_cnt, "[OPTIONS] [PATH]  -- cforall http server", left );
    9078
    9179
  • benchmark/io/http/options.hfa

    re93cbfa reacf82c  
    88        int open_flags;
    99        uint32_t hash_seed;
    10         size_t file_cache_size;
    11         bool file_cache_list;
     10      size_t file_cache_size;
    1211        bool procstats;
    1312        bool viewhalts;
  • benchmark/io/http/parseargs.cfa

    re93cbfa reacf82c  
    1212
    1313        extern int fprintf ( FILE * stream, const char * format, ... );
    14 
    15         extern          long long int strtoll (const char* str, char** endptr, int base);
    16         extern unsigned long long int strtoull(const char* str, char** endptr, int base);
     14        extern long long int strtoll (const char* str, char** endptr, int base);
    1715}
    1816
     
    9694
    9795        USAGE:
    98         fprintf(out, "Usage:\n  %s %s\n", argv[0], usage);
     96        fprintf(out, "%s\n", usage);
    9997
    10098        for(i; opt_count) {
     
    134132}
    135133
    136 bool parse(const char * arg, unsigned & value) {
    137         char * end;
    138         unsigned long long int r = strtoull(arg, &end, 10);
    139         if(*end != '\0') return false;
    140 #warning not checking max
    141 
    142         value = r;
    143         return true;
    144 }
    145 
    146 bool parse(const char * arg, size_t & value) {
    147         char * end;
    148         unsigned long long int r = strtoull(arg, &end, 10);
    149         if(*end != '\0') return false;
    150 #warning not checking max
    151 
    152         value = r;
    153         return true;
    154 }
    155 
    156134bool parse(const char * arg, int & value) {
    157135        char * end;
  • benchmark/io/http/parseargs.hfa

    re93cbfa reacf82c  
    3838
    3939bool parse(const char *, const char * & );
    40 bool parse(const char *, unsigned & );
    41 bool parse(const char *, size_t & );
    4240bool parse(const char *, int & );
  • src/Common/PassVisitor.proto.h

    re93cbfa reacf82c  
    3838        };
    3939
    40         std::stack< cleanup_t, std::vector< cleanup_t > > cleanups;
     40        std::stack< cleanup_t > cleanups;
    4141};
    4242
Note: See TracChangeset for help on using the changeset viewer.