null+****@clear*****
null+****@clear*****
2011年 10月 30日 (日) 21:15:09 JST
Kouhei Sutou 2011-10-30 12:15:09 +0000 (Sun, 30 Oct 2011) New Revision: b6ba4db22c09560609b209e3306d3733750baf7c Log: [grntest] assign many used value to variable. Modified files: src/grntest.c Modified: src/grntest.c (+37 -33) =================================================================== --- src/grntest.c 2011-10-30 12:07:51 +0000 (febba7b) +++ src/grntest.c 2011-10-30 12:15:09 +0000 (22d6742) @@ -958,16 +958,19 @@ worker_sub(grn_ctx *ctx, grn_obj *log, int task_id) long long int total_elapsed_time, job_elapsed_time; double sec, qps; long long int load_start; + struct task *task; + struct job *job; - grntest_task[task_id].max = 0LL; - grntest_task[task_id].min = 9223372036854775807LL; - grntest_task[task_id].qnum = 0; + task = &(grntest_task[task_id]); + task->max = 0LL; + task->min = 9223372036854775807LL; + task->qnum = 0; - for (i = 0; i < grntest_task[task_id].ntimes; i++) { - if (grntest_task[task_id].file != NULL) { + for (i = 0; i < task->ntimes; i++) { + if (task->file != NULL) { FILE *fp; grn_obj line; - fp = fopen(grntest_task[task_id].file, "r"); + fp = fopen(task->file, "r"); if (!fp) { fprintf(stderr, "Cannot open %s\n",grntest_task[task_id].file); error_exit_in_thread(1); @@ -995,9 +998,9 @@ worker_sub(grn_ctx *ctx, grn_obj *log, int task_id) } if (load_mode == 1) { if (do_load_command(&grntest_ctx[task_id], GRN_TEXT_VALUE(&line), - grntest_task[task_id].jobtype, + task->jobtype, task_id, &load_start)) { - grntest_task[task_id].qnum += load_count; + task->qnum += load_count; load_mode = 0; load_count = 0; load_start = 0LL; @@ -1007,9 +1010,9 @@ worker_sub(grn_ctx *ctx, grn_obj *log, int task_id) continue; } do_command(&grntest_ctx[task_id], GRN_TEXT_VALUE(&line), - grntest_task[task_id].jobtype, + task->jobtype, task_id); - grntest_task[task_id].qnum++; + task->qnum++; GRN_BULK_REWIND(&line); if (grntest_sigint) { goto exit; @@ -1020,7 +1023,7 @@ worker_sub(grn_ctx *ctx, grn_obj *log, int task_id) } else { int i, n_commands; grn_obj *commands; - commands = grntest_task[task_id].commands; + commands = task->commands; if (!commands) { error_exit_in_thread(1); } @@ -1035,17 +1038,17 @@ worker_sub(grn_ctx *ctx, grn_obj *log, int task_id) if (load_mode == 1) { if (do_load_command(&grntest_ctx[task_id], GRN_TEXT_VALUE(command), - grntest_task[task_id].jobtype, task_id, &load_start)) { + task->jobtype, task_id, &load_start)) { load_mode = 0; load_start = 0LL; - grntest_task[task_id].qnum++; + task->qnum++; } continue; } do_command(&grntest_ctx[task_id], GRN_TEXT_VALUE(command), - grntest_task[task_id].jobtype, task_id); - grntest_task[task_id].qnum++; + task->jobtype, task_id); + task->qnum++; if (grntest_sigint) { goto exit; } @@ -1054,26 +1057,27 @@ worker_sub(grn_ctx *ctx, grn_obj *log, int task_id) } exit: - GRN_TIME_INIT(&end_time, 0); +GRN_TIME_INIT(&end_time, 0); GRN_TIME_NOW(&grntest_ctx[task_id], &end_time); total_elapsed_time = GRN_TIME_VALUE(&end_time) - GRN_TIME_VALUE(&grntest_starttime); job_elapsed_time = GRN_TIME_VALUE(&end_time) - GRN_TIME_VALUE(&grntest_jobs_start); CRITICAL_SECTION_ENTER(grntest_cs); - if (grntest_job[grntest_task[task_id].job_id].max < grntest_task[task_id].max) { - grntest_job[grntest_task[task_id].job_id].max = grntest_task[task_id].max; + job = &(grntest_job[task->job_id]); + if (job->max < task->max) { + job->max = task->max; } - if (grntest_job[grntest_task[task_id].job_id].min > grntest_task[task_id].min) { - grntest_job[grntest_task[task_id].job_id].min = grntest_task[task_id].min; + if (job->min > task->min) { + job->min = task->min; } - grntest_job[grntest_task[task_id].job_id].qnum += grntest_task[task_id].qnum; - grntest_job[grntest_task[task_id].job_id].done++; - if (grntest_job[grntest_task[task_id].job_id].done == - grntest_job[grntest_task[task_id].job_id].concurrency) { + job->qnum += task->qnum; + job->done++; + if (job->done == + job->concurrency) { char tmpbuf[BUF_LEN]; sec = job_elapsed_time / (double)1000000; - qps = (double)grntest_job[grntest_task[task_id].job_id].qnum/ sec; + qps = (double)job->qnum/ sec; grntest_jobdone++; if (grntest_outtype == OUT_TSV) { sprintf(tmpbuf, @@ -1085,13 +1089,13 @@ exit: "%" GRN_FMT_LLD "\t" "%" GRN_FMT_LLD "\t" "%d\n", - grntest_job[grntest_task[task_id].job_id].jobname, + job->jobname, total_elapsed_time, job_elapsed_time, qps, - grntest_job[grntest_task[task_id].job_id].min, - grntest_job[grntest_task[task_id].job_id].max, - grntest_job[grntest_task[task_id].job_id].qnum); + job->min, + job->max, + job->qnum); } else { sprintf(tmpbuf, "{\"job\": \"%s\", " @@ -1101,13 +1105,13 @@ exit: "\"min\": %" GRN_FMT_LLD ", " "\"max\": %" GRN_FMT_LLD ", " "\"queries\": %d}", - grntest_job[grntest_task[task_id].job_id].jobname, + job->jobname, total_elapsed_time, job_elapsed_time, qps, - grntest_job[grntest_task[task_id].job_id].min, - grntest_job[grntest_task[task_id].job_id].max, - grntest_job[grntest_task[task_id].job_id].qnum); + job->min, + job->max, + job->qnum); if (grntest_jobdone < grntest_jobnum) { strcat(tmpbuf, ","); }