Changeset 566fde0
- Timestamp:
- Jun 25, 2020, 2:31:49 PM (5 years ago)
- Branches:
- ADT, arm-eh, ast-experimental, enum, forall-pointer-decay, jacob/cs343-translation, master, new-ast, new-ast-unique-expr, pthread-emulation, qualifiedEnum
- Children:
- cb85603
- Parents:
- 69fbc61
- Location:
- benchmark
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
TabularUnified benchmark/io/readv.cfa ¶
r69fbc61 r566fde0 16 16 #include <thread.hfa> 17 17 #include <time.hfa> 18 #include <stats.hfa> 18 19 19 20 #include "../benchcltr.hfa" … … 52 53 unsigned long int nthreads = 2; 53 54 unsigned long int nprocs = 1; 55 bool silent = false; 56 bool procstats = false; 54 57 unsigned flags = 0; 55 58 unsigned sublen = 16; … … 61 64 {"nthreads", required_argument, 0, 't'}, 62 65 {"nprocs", required_argument, 0, 'p'}, 66 {"nostats", no_argument , 0, 'S'}, 67 {"procstat", no_argument , 0, 'P'}, 63 68 {"bufsize", required_argument, 0, 'b'}, 64 69 {"userthread", no_argument , 0, 'u'}, … … 69 74 70 75 int idx = 0; 71 int opt = getopt_long(argc, argv, "d:t:p: b:usl:", options, &idx);76 int opt = getopt_long(argc, argv, "d:t:p:SPb:usl:", options, &idx); 72 77 73 78 const char * arg = optarg ? optarg : ""; … … 99 104 } 100 105 break; 106 case 'S': 107 silent = true; 108 break; 109 case 'P': 110 procstats = true; 111 break; 101 112 case 'b': 102 113 buflen = strtoul(arg, &end, 10); … … 124 135 fprintf(stderr, "%d\n", opt); 125 136 usage: 126 fprintf(stderr, "Usage: %s : [options]\n", argv[0]); 127 fprintf(stderr, "\n"); 128 fprintf(stderr, " -d, --duration=DURATION Duration of the experiment, in seconds\n"); 129 fprintf(stderr, " -t, --nthreads=NTHREADS Number of user threads\n"); 130 fprintf(stderr, " -p, --nprocs=NPROCS Number of kernel threads\n"); 131 fprintf(stderr, " -b, --buflen=SIZE Number of bytes to read per request\n"); 132 fprintf(stderr, " -u, --userthread If set, cluster uses user-thread to poll I/O\n"); 133 fprintf(stderr, " -s, --submitthread If set, cluster uses polling thread to submit I/O\n"); 137 fprintf( stderr, "Usage: %s : [options]\n", argv[0] ); 138 fprintf( stderr, "\n" ); 139 fprintf( stderr, " -d, --duration=DURATION Duration of the experiment, in seconds\n" ); 140 fprintf( stderr, " -t, --nthreads=NTHREADS Number of user threads\n" ); 141 fprintf( stderr, " -p, --nprocs=NPROCS Number of kernel threads\n" ); 142 fprintf( stderr, " -S, --nostats Don't print cluster stats\n" ); 143 fprintf( stderr, " -P, --procstat Print processor stats" ); 144 fprintf( stderr, " -b, --buflen=SIZE Number of bytes to read per request\n" ); 145 fprintf( stderr, " -u, --userthread If set, cluster uses user-thread to poll I/O\n" ); 146 fprintf( stderr, " -s, --submitthread If set, cluster uses polling thread to submit I/O\n" ); 134 147 exit(EXIT_FAILURE); 135 148 } … … 148 161 BenchCluster cl = { flags }; 149 162 #if !defined(__CFA_NO_STATISTICS__) 150 print_stats_at_exit( cl.self ); 163 if( !silent ) { 164 print_stats_at_exit( cl.self, CFA_STATS_READY_Q | CFA_STATS_IO ); 165 } 151 166 #endif 152 167 { 153 168 BenchProc procs[nprocs]; 169 #if !defined(__CFA_NO_STATISTICS__) 170 if( procstats ) { 171 for(i; nprocs) { 172 print_stats_at_exit( procs[i].self, CFA_STATS_READY_Q | CFA_STATS_IO ); 173 } 174 } 175 #endif 154 176 { 155 177 Reader threads[nthreads]; -
TabularUnified benchmark/readyQ/yield.cfa ¶
r69fbc61 r566fde0 13 13 #include <clock.hfa> 14 14 #include <time.hfa> 15 #include <stats.hfa> 15 16 16 17 #include "../benchcltr.hfa" … … 45 46 int nprocs = 1; 46 47 int nthreads = 1; 47 48 48 bool silent = false; 49 bool procstats = false; 49 50 50 51 for(;;) { … … 53 54 {"nprocs", required_argument, 0, 'p'}, 54 55 {"nthreads", required_argument, 0, 't'}, 56 {"nostats", no_argument , 0, 'S'}, 57 {"procstat", no_argument , 0, 'P'}, 55 58 {0, 0, 0, 0} 56 59 }; 57 60 58 61 int idx = 0; 59 int opt = getopt_long(argc, argv, "d:p:t: ", options, &idx);62 int opt = getopt_long(argc, argv, "d:p:t:SP", options, &idx); 60 63 61 64 char * arg = optarg ? optarg : ""; … … 87 90 } 88 91 break; 92 case 'S': 93 silent = true; 94 break; 95 case 'P': 96 procstats = true; 97 break; 89 98 // Other cases 90 99 default: /* ? */ … … 96 105 fprintf( stderr, " -t, --nthreads=NTHREADS Number of kernel threads\n" ); 97 106 fprintf( stderr, " -q, --nqueues=NQUEUES Number of queues per threads\n" ); 107 fprintf( stderr, " -S, --nostats Don't print cluster stats\n" ); 108 fprintf( stderr, " -P, --procstat Print processor stats" ); 98 109 exit(1); 99 110 } … … 107 118 BenchCluster cl = { 0 }; 108 119 #if !defined(__CFA_NO_STATISTICS__) 109 print_stats_at_exit( cl.self ); 120 if( !silent ) { 121 print_stats_at_exit( cl.self, CFA_STATS_READY_Q ); 122 } 110 123 #endif 111 124 { 112 125 BenchProc procs[nprocs]; 113 126 #if !defined(__CFA_NO_STATISTICS__) 114 for(i; nprocs) { 115 print_stats_at_exit( procs[i].self ); 127 if( procstats ) { 128 for(i; nprocs) { 129 print_stats_at_exit( procs[i].self, CFA_STATS_READY_Q ); 130 } 116 131 } 117 132 #endif
Note: See TracChangeset
for help on using the changeset viewer.