[Groonga-commit] groonga/groonga [master] [grntest] assign many used value to variable.

Back to archive index

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, ",");
       }




Groonga-commit メーリングリストの案内
Back to archive index