Mercurial > hg > Members > masakoha > masa
annotate 14/February/memo/03rd.txt @ 51:d8f499590d82
rename 201* to 1*
author | Masataka Kohagura <e085726@ie.u-ryukyu.ac.jp> |
---|---|
date | Sun, 16 Mar 2014 13:36:04 +0900 |
parents | 2014/February/memo/03rd.txt@37d843c14923 |
children |
rev | line source |
---|---|
32 | 1 2014/02/03 (Mon) |
29
444b0ca6ff2c
add OUTLINE & 01st.txt
Masataka Kohagura <e085726@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
2 [program] |
32 | 3 とりあえず、manager->allocate の内部実装を int -> long long に変更した。 |
4 regex_mas 2GB 以上の file を読み込ますと、mmap と divide read の違いで結果が違ってしまう。 -> 多分、ちゃんと読み込みされていないのでは?? | |
5 | |
6 grep -c "doing" 2g.txt -> 5209072 | |
7 ./regex -file 2g.txt -sw doing -cpu 4 -> 5209072 | |
8 ./regex -file 2g.txt -sw doing -cpu 4 -dr -> 5190577 | |
29
444b0ca6ff2c
add OUTLINE & 01st.txt
Masataka Kohagura <e085726@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
9 |
32 | 10 ./regex -file 3g.txt -sw doing -cpu 4 -> 7799680 |
11 ./regex -file 3g.txt -sw doing -cpu 4 -dr -> 5190577 | |
12 | |
13 やっぱり 2GB の壁くさい | |
30 | 14 |
32 | 15 segmentation fault が起こらないということは、ちゃんと allocate はされているっぽい。 |
16 ということは、やはり read 関係のどこかで 2GB 制限がかかってるのではないか。 | |
17 (API を int -> long long にかえないといけない部分がまだ存在すると思われる。 | |
18 | |
19 divide read mode 時、wbuf の address の動きが怪しい | |
20 long だと MAX が約2GB。つまりどこかで long long にしないとこれは直らない。 | |
33
37d843c14923
resolve 2GB problem
Masataka Kohagura <e085726@ie.u-ryukyu.ac.jp>
parents:
32
diff
changeset
|
21 |
37d843c14923
resolve 2GB problem
Masataka Kohagura <e085726@ie.u-ryukyu.ac.jp>
parents:
32
diff
changeset
|
22 read_run 内の |
37d843c14923
resolve 2GB problem
Masataka Kohagura <e085726@ie.u-ryukyu.ac.jp>
parents:
32
diff
changeset
|
23 read->set_outData(0,w->file_mmap + w->read_task_number*w->read_division_size, w->read_division_size); |
37d843c14923
resolve 2GB problem
Masataka Kohagura <e085726@ie.u-ryukyu.ac.jp>
parents:
32
diff
changeset
|
24 第二引数 の値がおかしくなっていることが発覚 |
37d843c14923
resolve 2GB problem
Masataka Kohagura <e085726@ie.u-ryukyu.ac.jp>
parents:
32
diff
changeset
|
25 |
37d843c14923
resolve 2GB problem
Masataka Kohagura <e085726@ie.u-ryukyu.ac.jp>
parents:
32
diff
changeset
|
26 実行結果 |
37d843c14923
resolve 2GB problem
Masataka Kohagura <e085726@ie.u-ryukyu.ac.jp>
parents:
32
diff
changeset
|
27 |
37d843c14923
resolve 2GB problem
Masataka Kohagura <e085726@ie.u-ryukyu.ac.jp>
parents:
32
diff
changeset
|
28 ---------------------- |
37d843c14923
resolve 2GB problem
Masataka Kohagura <e085726@ie.u-ryukyu.ac.jp>
parents:
32
diff
changeset
|
29 set_outData buf : 0x24367a000 |
37d843c14923
resolve 2GB problem
Masataka Kohagura <e085726@ie.u-ryukyu.ac.jp>
parents:
32
diff
changeset
|
30 w->file_mmap : 0x1c467a000 |
37d843c14923
resolve 2GB problem
Masataka Kohagura <e085726@ie.u-ryukyu.ac.jp>
parents:
32
diff
changeset
|
31 w->read_task_number : 127 |
37d843c14923
resolve 2GB problem
Masataka Kohagura <e085726@ie.u-ryukyu.ac.jp>
parents:
32
diff
changeset
|
32 w->read_division_size : 16777216 |
37d843c14923
resolve 2GB problem
Masataka Kohagura <e085726@ie.u-ryukyu.ac.jp>
parents:
32
diff
changeset
|
33 ---------------------- |
37d843c14923
resolve 2GB problem
Masataka Kohagura <e085726@ie.u-ryukyu.ac.jp>
parents:
32
diff
changeset
|
34 [read No 105 : wbuf addr 0x22d67a000] |
37d843c14923
resolve 2GB problem
Masataka Kohagura <e085726@ie.u-ryukyu.ac.jp>
parents:
32
diff
changeset
|
35 [read No 106 : wbuf addr 0x22e67a000] |
37d843c14923
resolve 2GB problem
Masataka Kohagura <e085726@ie.u-ryukyu.ac.jp>
parents:
32
diff
changeset
|
36 [read No 107 : wbuf addr 0x22f67a000] |
37d843c14923
resolve 2GB problem
Masataka Kohagura <e085726@ie.u-ryukyu.ac.jp>
parents:
32
diff
changeset
|
37 ・・・ |
37d843c14923
resolve 2GB problem
Masataka Kohagura <e085726@ie.u-ryukyu.ac.jp>
parents:
32
diff
changeset
|
38 [read No 120 : wbuf addr 0x23c67a000] |
37d843c14923
resolve 2GB problem
Masataka Kohagura <e085726@ie.u-ryukyu.ac.jp>
parents:
32
diff
changeset
|
39 [read No 121 : wbuf addr 0x23d67a000] |
37d843c14923
resolve 2GB problem
Masataka Kohagura <e085726@ie.u-ryukyu.ac.jp>
parents:
32
diff
changeset
|
40 ---------------------- |
37d843c14923
resolve 2GB problem
Masataka Kohagura <e085726@ie.u-ryukyu.ac.jp>
parents:
32
diff
changeset
|
41 set_outData buf : 0x14467a000 |
37d843c14923
resolve 2GB problem
Masataka Kohagura <e085726@ie.u-ryukyu.ac.jp>
parents:
32
diff
changeset
|
42 w->file_mmap : 0x1c467a000 |
37d843c14923
resolve 2GB problem
Masataka Kohagura <e085726@ie.u-ryukyu.ac.jp>
parents:
32
diff
changeset
|
43 w->read_task_number : 128 |
37d843c14923
resolve 2GB problem
Masataka Kohagura <e085726@ie.u-ryukyu.ac.jp>
parents:
32
diff
changeset
|
44 w->read_division_size : 16777216 |
37d843c14923
resolve 2GB problem
Masataka Kohagura <e085726@ie.u-ryukyu.ac.jp>
parents:
32
diff
changeset
|
45 ---------------------- |
37d843c14923
resolve 2GB problem
Masataka Kohagura <e085726@ie.u-ryukyu.ac.jp>
parents:
32
diff
changeset
|
46 ---------------------- |
37d843c14923
resolve 2GB problem
Masataka Kohagura <e085726@ie.u-ryukyu.ac.jp>
parents:
32
diff
changeset
|
47 set_outData buf : 0x14567a000 |
37d843c14923
resolve 2GB problem
Masataka Kohagura <e085726@ie.u-ryukyu.ac.jp>
parents:
32
diff
changeset
|
48 w->file_mmap : 0x1c467a000 |
37d843c14923
resolve 2GB problem
Masataka Kohagura <e085726@ie.u-ryukyu.ac.jp>
parents:
32
diff
changeset
|
49 w->read_task_number : 129 |
37d843c14923
resolve 2GB problem
Masataka Kohagura <e085726@ie.u-ryukyu.ac.jp>
parents:
32
diff
changeset
|
50 w->read_division_size : 16777216 |
37d843c14923
resolve 2GB problem
Masataka Kohagura <e085726@ie.u-ryukyu.ac.jp>
parents:
32
diff
changeset
|
51 ---------------------- |
37d843c14923
resolve 2GB problem
Masataka Kohagura <e085726@ie.u-ryukyu.ac.jp>
parents:
32
diff
changeset
|
52 |
37d843c14923
resolve 2GB problem
Masataka Kohagura <e085726@ie.u-ryukyu.ac.jp>
parents:
32
diff
changeset
|
53 再実行 |
37d843c14923
resolve 2GB problem
Masataka Kohagura <e085726@ie.u-ryukyu.ac.jp>
parents:
32
diff
changeset
|
54 [read No 124 : wbuf addr 0x24067a000] |
37d843c14923
resolve 2GB problem
Masataka Kohagura <e085726@ie.u-ryukyu.ac.jp>
parents:
32
diff
changeset
|
55 [read No 125 : wbuf addr 0x24167a000] |
37d843c14923
resolve 2GB problem
Masataka Kohagura <e085726@ie.u-ryukyu.ac.jp>
parents:
32
diff
changeset
|
56 [read No 126 : wbuf addr 0x24267a000] |
37d843c14923
resolve 2GB problem
Masataka Kohagura <e085726@ie.u-ryukyu.ac.jp>
parents:
32
diff
changeset
|
57 [read No 127 : wbuf addr 0x24367a000] |
37d843c14923
resolve 2GB problem
Masataka Kohagura <e085726@ie.u-ryukyu.ac.jp>
parents:
32
diff
changeset
|
58 [read No 128 : wbuf addr 0x14467a000] |
37d843c14923
resolve 2GB problem
Masataka Kohagura <e085726@ie.u-ryukyu.ac.jp>
parents:
32
diff
changeset
|
59 [read No 129 : wbuf addr 0x14567a000] |
37d843c14923
resolve 2GB problem
Masataka Kohagura <e085726@ie.u-ryukyu.ac.jp>
parents:
32
diff
changeset
|
60 [read No 130 : wbuf addr 0x14667a000] |
37d843c14923
resolve 2GB problem
Masataka Kohagura <e085726@ie.u-ryukyu.ac.jp>
parents:
32
diff
changeset
|
61 876543210 |
37d843c14923
resolve 2GB problem
Masataka Kohagura <e085726@ie.u-ryukyu.ac.jp>
parents:
32
diff
changeset
|
62 16^8 = 2^4^8 = 2^32 |
37d843c14923
resolve 2GB problem
Masataka Kohagura <e085726@ie.u-ryukyu.ac.jp>
parents:
32
diff
changeset
|
63 |
37d843c14923
resolve 2GB problem
Masataka Kohagura <e085726@ie.u-ryukyu.ac.jp>
parents:
32
diff
changeset
|
64 Address が 2^32 分落ちてしまっている。 |
37d843c14923
resolve 2GB problem
Masataka Kohagura <e085726@ie.u-ryukyu.ac.jp>
parents:
32
diff
changeset
|
65 (オーバーフローしている) |
37d843c14923
resolve 2GB problem
Masataka Kohagura <e085726@ie.u-ryukyu.ac.jp>
parents:
32
diff
changeset
|
66 |
37d843c14923
resolve 2GB problem
Masataka Kohagura <e085726@ie.u-ryukyu.ac.jp>
parents:
32
diff
changeset
|
67 原因究明 |
37d843c14923
resolve 2GB problem
Masataka Kohagura <e085726@ie.u-ryukyu.ac.jp>
parents:
32
diff
changeset
|
68 (char*)w->file_mmap + (int)w->read_task_number*(int)w->read_division_size |
37d843c14923
resolve 2GB problem
Masataka Kohagura <e085726@ie.u-ryukyu.ac.jp>
parents:
32
diff
changeset
|
69 (int)w->read_task_number*(int)w->read_division_size |
37d843c14923
resolve 2GB problem
Masataka Kohagura <e085726@ie.u-ryukyu.ac.jp>
parents:
32
diff
changeset
|
70 |
37d843c14923
resolve 2GB problem
Masataka Kohagura <e085726@ie.u-ryukyu.ac.jp>
parents:
32
diff
changeset
|
71 int に 2GB 以上の数値を突っ込んでいたので、オーバーフローしていた |