annotate example/word_count/main.cc @ 2069:26aa08c9a1de draft default tip

cuda example fix
author Shinji KONO <kono@ie.u-ryukyu.ac.jp>
date Sun, 12 Feb 2017 10:04:55 +0900
parents 030b8efcf357
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
1584
Masa <e085726@ie.u-ryukyu.ac.jp>
parents: 1579
diff changeset
1 #include <stdio.h>
1544
5c4e3f0d372a many_task add task array
Yuhi TOMARI <yuhi@cr.ie.u-ryukyu.ac.jp>
parents: 1542
diff changeset
2 #include <sys/time.h>
393
cb06748ba6cf add word_count
e065725@localhost.localdomain
parents:
diff changeset
3 #include "TaskManager.h"
946
852ed17d8af1 unify word count examples....
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 797
diff changeset
4 #include "SchedTask.h"
393
cb06748ba6cf add word_count
e065725@localhost.localdomain
parents:
diff changeset
5 #include "Func.h"
2051
b79a250b4f99 FileMapReduce (no compile error)
masa
parents: 2049
diff changeset
6 #include "FileMapReduce.h"
393
cb06748ba6cf add word_count
e065725@localhost.localdomain
parents:
diff changeset
7
1268
f0808a329663 find bug
Daichi Toma <amothic@gmail.com>
parents: 1123
diff changeset
8 /* ;TODO
f0808a329663 find bug
Daichi Toma <amothic@gmail.com>
parents: 1123
diff changeset
9 * PS3でCPU数が2以上の時に、あまりが計算されてない
f0808a329663 find bug
Daichi Toma <amothic@gmail.com>
parents: 1123
diff changeset
10 */
f0808a329663 find bug
Daichi Toma <amothic@gmail.com>
parents: 1123
diff changeset
11
400
984e7890db0c Fix examples.
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 394
diff changeset
12 extern void task_init();
1544
5c4e3f0d372a many_task add task array
Yuhi TOMARI <yuhi@cr.ie.u-ryukyu.ac.jp>
parents: 1542
diff changeset
13 void TMend(TaskManager *);
5c4e3f0d372a many_task add task array
Yuhi TOMARI <yuhi@cr.ie.u-ryukyu.ac.jp>
parents: 1542
diff changeset
14 static double st_time;
5c4e3f0d372a many_task add task array
Yuhi TOMARI <yuhi@cr.ie.u-ryukyu.ac.jp>
parents: 1542
diff changeset
15 static double ed_time;
2051
b79a250b4f99 FileMapReduce (no compile error)
masa
parents: 2049
diff changeset
16 const char* usr_help_str = "";
1542
9ccfdc408d51 fix gpu word count.but not count line num.
Yuhi TOMARI <yuhi@cr.ie.u-ryukyu.ac.jp>
parents: 1538
diff changeset
17
1544
5c4e3f0d372a many_task add task array
Yuhi TOMARI <yuhi@cr.ie.u-ryukyu.ac.jp>
parents: 1542
diff changeset
18 static double
5c4e3f0d372a many_task add task array
Yuhi TOMARI <yuhi@cr.ie.u-ryukyu.ac.jp>
parents: 1542
diff changeset
19 getTime() {
5c4e3f0d372a many_task add task array
Yuhi TOMARI <yuhi@cr.ie.u-ryukyu.ac.jp>
parents: 1542
diff changeset
20 struct timeval tv;
5c4e3f0d372a many_task add task array
Yuhi TOMARI <yuhi@cr.ie.u-ryukyu.ac.jp>
parents: 1542
diff changeset
21 gettimeofday(&tv, NULL);
5c4e3f0d372a many_task add task array
Yuhi TOMARI <yuhi@cr.ie.u-ryukyu.ac.jp>
parents: 1542
diff changeset
22 return tv.tv_sec + (double)tv.tv_usec*1e-6;
5c4e3f0d372a many_task add task array
Yuhi TOMARI <yuhi@cr.ie.u-ryukyu.ac.jp>
parents: 1542
diff changeset
23 }
5c4e3f0d372a many_task add task array
Yuhi TOMARI <yuhi@cr.ie.u-ryukyu.ac.jp>
parents: 1542
diff changeset
24
393
cb06748ba6cf add word_count
e065725@localhost.localdomain
parents:
diff changeset
25 int
400
984e7890db0c Fix examples.
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 394
diff changeset
26 TMmain(TaskManager *manager, int argc, char *argv[])
393
cb06748ba6cf add word_count
e065725@localhost.localdomain
parents:
diff changeset
27 {
cb06748ba6cf add word_count
e065725@localhost.localdomain
parents:
diff changeset
28
394
bc2012726a51 debug word_count
e065725@localhost.localdomain
parents: 393
diff changeset
29 char *filename = 0;
2051
b79a250b4f99 FileMapReduce (no compile error)
masa
parents: 2049
diff changeset
30 FileMapReduce *fmp = new FileMapReduce(manager,TASK_EXEC,TASK_EXEC_DATA_PARALLEL,TASK_PRINT);
b79a250b4f99 FileMapReduce (no compile error)
masa
parents: 2049
diff changeset
31 filename = fmp->init(argc, argv);
393
cb06748ba6cf add word_count
e065725@localhost.localdomain
parents:
diff changeset
32 if (filename < 0) {
1538
fac06524090b add gpu task wordcount. But not work print
Yuhi TOMARI <yuhi@cr.ie.u-ryukyu.ac.jp>
parents: 1351
diff changeset
33 return -1;
393
cb06748ba6cf add word_count
e065725@localhost.localdomain
parents:
diff changeset
34 }
2053
030b8efcf357 remove wordCount dependency in FileMapReduce
masa
parents: 2051
diff changeset
35 fmp->division_out_size = sizeof(unsigned long long)*4;
393
cb06748ba6cf add word_count
e065725@localhost.localdomain
parents:
diff changeset
36 task_init();
1988
f13abbbaaf72 include file read time
masa
parents: 1987
diff changeset
37 st_time = getTime();
2051
b79a250b4f99 FileMapReduce (no compile error)
masa
parents: 2049
diff changeset
38 fmp->run_start(manager, filename);
1544
5c4e3f0d372a many_task add task array
Yuhi TOMARI <yuhi@cr.ie.u-ryukyu.ac.jp>
parents: 1542
diff changeset
39 manager->set_TMend(TMend);
393
cb06748ba6cf add word_count
e065725@localhost.localdomain
parents:
diff changeset
40 return 0;
cb06748ba6cf add word_count
e065725@localhost.localdomain
parents:
diff changeset
41 }
946
852ed17d8af1 unify word count examples....
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 797
diff changeset
42
1544
5c4e3f0d372a many_task add task array
Yuhi TOMARI <yuhi@cr.ie.u-ryukyu.ac.jp>
parents: 1542
diff changeset
43 void
5c4e3f0d372a many_task add task array
Yuhi TOMARI <yuhi@cr.ie.u-ryukyu.ac.jp>
parents: 1542
diff changeset
44 TMend(TaskManager *manager)
5c4e3f0d372a many_task add task array
Yuhi TOMARI <yuhi@cr.ie.u-ryukyu.ac.jp>
parents: 1542
diff changeset
45 {
5c4e3f0d372a many_task add task array
Yuhi TOMARI <yuhi@cr.ie.u-ryukyu.ac.jp>
parents: 1542
diff changeset
46 ed_time = getTime();
5c4e3f0d372a many_task add task array
Yuhi TOMARI <yuhi@cr.ie.u-ryukyu.ac.jp>
parents: 1542
diff changeset
47 printf("Time: %0.6f\n",ed_time-st_time);
5c4e3f0d372a many_task add task array
Yuhi TOMARI <yuhi@cr.ie.u-ryukyu.ac.jp>
parents: 1542
diff changeset
48 }
5c4e3f0d372a many_task add task array
Yuhi TOMARI <yuhi@cr.ie.u-ryukyu.ac.jp>
parents: 1542
diff changeset
49
946
852ed17d8af1 unify word count examples....
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 797
diff changeset
50 /* end */