comparison example/word_count_test/main.cc @ 666:4615489c5faa

simplify word_count
author Shinji KONO <kono@ie.u-ryukyu.ac.jp>
date Thu, 03 Dec 2009 02:11:31 +0900
parents 4470ff271c5a
children d753b4f6b129
comparison
equal deleted inserted replaced
665:4470ff271c5a 666:4615489c5faa
127 return 0; 127 return 0;
128 } 128 }
129 129
130 130
131 static int blocks = 192; 131 static int blocks = 192;
132 static int division = 16; // in Kbyte
132 133
133 static void 134 static void
134 run_start(TaskManager *manager, char *filename) 135 run_start(TaskManager *manager, char *filename)
135 { 136 {
136 HTaskPtr t_print; 137 HTaskPtr t_print;
146 /*sizeはdivision_sizeの倍数にしている。*/ 147 /*sizeはdivision_sizeの倍数にしている。*/
147 w->size = st_mmap.size; 148 w->size = st_mmap.size;
148 w->file_mmap = st_mmap.file_mmap; 149 w->file_mmap = st_mmap.file_mmap;
149 150
150 /* 1task分のデータサイズ(byte) */ 151 /* 1task分のデータサイズ(byte) */
151 if (w->size >= 4096*4) { 152 if (w->size >= 1024*division) {
152 w->division_size = 4096 * 4;/*16kbyte*/ 153 w->division_size = 1024 * division;/*16kbyte*/
153 } 154 } else {
154 else {
155 w->division_size = w->size; 155 w->division_size = w->size;
156 } 156 }
157 157
158 printf("dvision_size %d\n",w->division_size); 158 printf("dvision_size %d\n",w->division_size);
159 159
207 char *filename = 0; 207 char *filename = 0;
208 208
209 for (int i = 1; argv[i]; ++i) { 209 for (int i = 1; argv[i]; ++i) {
210 if (strcmp(argv[i], "-file") == 0) { 210 if (strcmp(argv[i], "-file") == 0) {
211 filename = argv[i+1]; 211 filename = argv[i+1];
212 } else if (strcmp(argv[i], "-division") == 0) {
213 division = atoi(argv[i+1]);
212 } else if (strcmp(argv[i], "-block") == 0) { 214 } else if (strcmp(argv[i], "-block") == 0) {
213 blocks = atoi(argv[i+1]); 215 blocks = atoi(argv[i+1]);
214 } 216 }
215 } 217 }
216 if (filename==0) { 218 if (filename==0) {