Oct 29, 1998 onl7v2: Solaris 2.6 cc ドライバのデバッグ. cc ドライバの実行、スピード測定、(その2) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ (http://www-online.kek.jp/~inoue/CAMAC/ onl7v2-sol2.6/camac-step06.txt) 高エネルギー加速器研究機構 素粒子原子核研究所 物理、オンライングループ 井上 栄二 (1). 現状確認 (A). 英語版 Soalris2.6 & VMEドライバ v2.2.2 が届いた。 (B). CPU-7V に Solaris2.6 のシステムをインストールした。 (C). /etc の下の各設定、および /export/home の作成をやった。 (D). Solaris2.6用の VMEドライバ、FRCvme-2.2.2 をインストールした。 (E). onl7v2 に ccドライバをインストールする。 (G). サンプル・プログラムを実行した。 (G-1). 24ビットのシングル・アクション read/writeプログラム、cam1 は 正常終了した。 (G-2). 割り込み処理プログラム、cam3 は正常終了した。 (G-3). 16ビットのブロック転送 read/writeプログラム、cam2 は ok。 (G-4). 24ビットのブロック転送 read/writeプログラム、cam2 は ok。 (G-5). シングル・アクション read/write実行時の、リターン値を調べた。 (H). onl7v2 上で、シングルアクション、割り込み、ブロック転送の実行速度 を調べた。 (2). ここでやるべきこと onl7v2 上で、シングルアクションの実行に要する時間を、精度を上げて測定 する。 (3). データ転送速度測定プログラムの修正およびコンパイル 測定の精度を上げるために測定方法は次のようにする。 シングルアクション Read の CAMAC コールを 1000回実行する。 この1000回実行の前後で時間を 測り、その値を 1000 で割る。 (3-1). テスト・プログラムをコンパイルする ソース・プログラムを上記のように修正した。 そして、コンパイルを実行。 onl7v2[95]% make camsingle_measure1 /usr/ucb/cc -DOSF1 -o camsingle_measure1 camsingle_measure1.c -I../includes -L.. /lib -lcamac onl7v2[96]% ok. 正常にコンパイルできた。 (4). データ転送速度測定プログラムの実行 上記でコンパイルしたデータ転送速度測定プログラムを実行する。 プログラムはシェルスクリプトを使って 100回繰り返した。 (4-1). 24 ビット camac シングルアクションのテスト用プログラムの実行 program execution : loop count = 1 elapsed time 0 sec, 51 microsec overhead time 10 microsec elapsed time 0 sec, 56031 microsec elapsed time 56 microsec CAMAC READ single action takes 46 microsec. program execution : loop count = 2 elapsed time 0 sec, 50 microsec overhead time 10 microsec elapsed time 0 sec, 54834 microsec elapsed time 54 microsec CAMAC READ single action takes 44 microsec. program execution : loop count = 3 elapsed time 0 sec, 50 microsec overhead time 10 microsec elapsed time 0 sec, 56111 microsec elapsed time 56 microsec CAMAC READ single action takes 46 microsec. program execution : loop count = 4 elapsed time 0 sec, 49 microsec overhead time 9 microsec elapsed time 0 sec, 54610 microsec elapsed time 54 microsec CAMAC READ single action takes 45 microsec. program execution : loop count = 5 elapsed time 0 sec, 51 microsec overhead time 10 microsec elapsed time 0 sec, 55971 microsec elapsed time 55 microsec CAMAC READ single action takes 45 microsec. program execution : loop count = 6 elapsed time 0 sec, 52 microsec overhead time 10 microsec elapsed time 0 sec, 54475 microsec elapsed time 54 microsec CAMAC READ single action takes 44 microsec. program execution : loop count = 7 elapsed time 0 sec, 51 microsec overhead time 10 microsec elapsed time 0 sec, 56144 microsec elapsed time 56 microsec CAMAC READ single action takes 46 microsec. program execution : loop count = 8 elapsed time 0 sec, 49 microsec overhead time 9 microsec elapsed time 0 sec, 54180 microsec elapsed time 54 microsec CAMAC READ single action takes 45 microsec. program execution : loop count = 9 elapsed time 0 sec, 51 microsec overhead time 10 microsec elapsed time 0 sec, 56095 microsec elapsed time 56 microsec CAMAC READ single action takes 46 microsec. program execution : loop count = 10 elapsed time 0 sec, 49 microsec overhead time 9 microsec elapsed time 0 sec, 54734 microsec elapsed time 54 microsec CAMAC READ single action takes 45 microsec. program execution : loop count = 11 elapsed time 0 sec, 51 microsec overhead time 10 microsec elapsed time 0 sec, 56005 microsec elapsed time 56 microsec CAMAC READ single action takes 46 microsec. program execution : loop count = 12 elapsed time 0 sec, 52 microsec overhead time 10 microsec elapsed time 0 sec, 54738 microsec elapsed time 54 microsec CAMAC READ single action takes 44 microsec. program execution : loop count = 13 elapsed time 0 sec, 51 microsec overhead time 10 microsec elapsed time 0 sec, 56137 microsec elapsed time 56 microsec CAMAC READ single action takes 46 microsec. program execution : loop count = 14 elapsed time 0 sec, 52 microsec overhead time 10 microsec elapsed time 0 sec, 54615 microsec elapsed time 54 microsec CAMAC READ single action takes 44 microsec. program execution : loop count = 15 elapsed time 0 sec, 51 microsec overhead time 10 microsec elapsed time 0 sec, 56104 microsec elapsed time 56 microsec CAMAC READ single action takes 46 microsec. program execution : loop count = 16 elapsed time 0 sec, 52 microsec overhead time 10 microsec elapsed time 0 sec, 55000 microsec elapsed time 55 microsec CAMAC READ single action takes 45 microsec. program execution : loop count = 17 elapsed time 0 sec, 51 microsec overhead time 10 microsec elapsed time 0 sec, 56030 microsec elapsed time 56 microsec CAMAC READ single action takes 46 microsec. program execution : loop count = 18 elapsed time 0 sec, 50 microsec overhead time 10 microsec elapsed time 0 sec, 54641 microsec elapsed time 54 microsec CAMAC READ single action takes 44 microsec. program execution : loop count = 19 elapsed time 0 sec, 51 microsec overhead time 10 microsec elapsed time 0 sec, 56081 microsec elapsed time 56 microsec CAMAC READ single action takes 46 microsec. program execution : loop count = 20 elapsed time 0 sec, 51 microsec overhead time 10 microsec elapsed time 0 sec, 55036 microsec elapsed time 55 microsec CAMAC READ single action takes 45 microsec. program execution : loop count = 21 elapsed time 0 sec, 52 microsec overhead time 10 microsec elapsed time 0 sec, 56807 microsec elapsed time 56 microsec CAMAC READ single action takes 46 microsec. program execution : loop count = 22 elapsed time 0 sec, 50 microsec overhead time 10 microsec elapsed time 0 sec, 54770 microsec elapsed time 54 microsec CAMAC READ single action takes 44 microsec. program execution : loop count = 23 elapsed time 0 sec, 49 microsec overhead time 9 microsec elapsed time 0 sec, 55762 microsec elapsed time 55 microsec CAMAC READ single action takes 46 microsec. program execution : loop count = 24 elapsed time 0 sec, 54 microsec overhead time 10 microsec elapsed time 0 sec, 54768 microsec elapsed time 54 microsec CAMAC READ single action takes 44 microsec. program execution : loop count = 25 elapsed time 0 sec, 50 microsec overhead time 10 microsec elapsed time 0 sec, 55550 microsec elapsed time 55 microsec CAMAC READ single action takes 45 microsec. program execution : loop count = 26 elapsed time 0 sec, 51 microsec overhead time 10 microsec elapsed time 0 sec, 54153 microsec elapsed time 54 microsec CAMAC READ single action takes 44 microsec. program execution : loop count = 27 elapsed time 0 sec, 50 microsec overhead time 10 microsec elapsed time 0 sec, 55501 microsec elapsed time 55 microsec CAMAC READ single action takes 45 microsec. program execution : loop count = 28 elapsed time 0 sec, 50 microsec overhead time 10 microsec elapsed time 0 sec, 54694 microsec elapsed time 54 microsec CAMAC READ single action takes 44 microsec. program execution : loop count = 29 elapsed time 0 sec, 51 microsec overhead time 10 microsec elapsed time 0 sec, 55530 microsec elapsed time 55 microsec CAMAC READ single action takes 45 microsec. program execution : loop count = 30 elapsed time 0 sec, 50 microsec overhead time 10 microsec elapsed time 0 sec, 54145 microsec elapsed time 54 microsec CAMAC READ single action takes 44 microsec. program execution : loop count = 31 elapsed time 0 sec, 52 microsec overhead time 10 microsec elapsed time 0 sec, 56131 microsec elapsed time 56 microsec CAMAC READ single action takes 46 microsec. program execution : loop count = 32 elapsed time 0 sec, 51 microsec overhead time 10 microsec elapsed time 0 sec, 54179 microsec elapsed time 54 microsec CAMAC READ single action takes 44 microsec. program execution : loop count = 33 elapsed time 0 sec, 50 microsec overhead time 10 microsec elapsed time 0 sec, 55640 microsec elapsed time 55 microsec CAMAC READ single action takes 45 microsec. program execution : loop count = 34 Segmentation Fault (core dumped) program execution : loop count = 35 elapsed time 0 sec, 50 microsec overhead time 10 microsec elapsed time 0 sec, 55614 microsec elapsed time 55 microsec CAMAC READ single action takes 45 microsec. program execution : loop count = 36 elapsed time 0 sec, 52 microsec overhead time 10 microsec elapsed time 0 sec, 54196 microsec elapsed time 54 microsec CAMAC READ single action takes 44 microsec. program execution : loop count = 37 elapsed time 0 sec, 50 microsec overhead time 10 microsec elapsed time 0 sec, 55665 microsec elapsed time 55 microsec CAMAC READ single action takes 45 microsec. program execution : loop count = 38 elapsed time 0 sec, 50 microsec overhead time 10 microsec elapsed time 0 sec, 54238 microsec elapsed time 54 microsec CAMAC READ single action takes 44 microsec. program execution : loop count = 39 elapsed time 0 sec, 52 microsec overhead time 10 microsec elapsed time 0 sec, 55506 microsec elapsed time 55 microsec CAMAC READ single action takes 45 microsec. program execution : loop count = 40 elapsed time 0 sec, 49 microsec overhead time 9 microsec elapsed time 0 sec, 54046 microsec elapsed time 54 microsec CAMAC READ single action takes 45 microsec. program execution : loop count = 41 elapsed time 0 sec, 52 microsec overhead time 10 microsec elapsed time 0 sec, 55548 microsec elapsed time 55 microsec CAMAC READ single action takes 45 microsec. program execution : loop count = 42 elapsed time 0 sec, 51 microsec overhead time 10 microsec elapsed time 0 sec, 54143 microsec elapsed time 54 microsec CAMAC READ single action takes 44 microsec. program execution : loop count = 43 elapsed time 0 sec, 51 microsec overhead time 10 microsec elapsed time 0 sec, 55493 microsec elapsed time 55 microsec CAMAC READ single action takes 45 microsec. program execution : loop count = 44 elapsed time 0 sec, 49 microsec overhead time 9 microsec elapsed time 0 sec, 54507 microsec elapsed time 54 microsec CAMAC READ single action takes 45 microsec. program execution : loop count = 45 elapsed time 0 sec, 51 microsec overhead time 10 microsec elapsed time 0 sec, 55513 microsec elapsed time 55 microsec CAMAC READ single action takes 45 microsec. program execution : loop count = 46 elapsed time 0 sec, 51 microsec overhead time 10 microsec elapsed time 0 sec, 54134 microsec elapsed time 54 microsec CAMAC READ single action takes 44 microsec. program execution : loop count = 47 elapsed time 0 sec, 51 microsec overhead time 10 microsec elapsed time 0 sec, 56829 microsec elapsed time 56 microsec CAMAC READ single action takes 46 microsec. program execution : loop count = 48 elapsed time 0 sec, 51 microsec overhead time 10 microsec elapsed time 0 sec, 54158 microsec elapsed time 54 microsec CAMAC READ single action takes 44 microsec. program execution : loop count = 49 elapsed time 0 sec, 49 microsec overhead time 9 microsec elapsed time 0 sec, 55589 microsec elapsed time 55 microsec CAMAC READ single action takes 46 microsec. program execution : loop count = 50 elapsed time 0 sec, 50 microsec overhead time 10 microsec elapsed time 0 sec, 54270 microsec elapsed time 54 microsec CAMAC READ single action takes 44 microsec. program execution : loop count = 51 elapsed time 0 sec, 50 microsec overhead time 10 microsec elapsed time 0 sec, 55701 microsec elapsed time 55 microsec CAMAC READ single action takes 45 microsec. program execution : loop count = 52 elapsed time 0 sec, 52 microsec overhead time 10 microsec elapsed time 0 sec, 54143 microsec elapsed time 54 microsec CAMAC READ single action takes 44 microsec. program execution : loop count = 53 elapsed time 0 sec, 49 microsec overhead time 9 microsec elapsed time 0 sec, 55611 microsec elapsed time 55 microsec CAMAC READ single action takes 46 microsec. program execution : loop count = 54 elapsed time 0 sec, 51 microsec overhead time 10 microsec elapsed time 0 sec, 54168 microsec elapsed time 54 microsec CAMAC READ single action takes 44 microsec. program execution : loop count = 55 elapsed time 0 sec, 51 microsec overhead time 10 microsec elapsed time 0 sec, 55423 microsec elapsed time 55 microsec CAMAC READ single action takes 45 microsec. program execution : loop count = 56 elapsed time 0 sec, 52 microsec overhead time 10 microsec elapsed time 0 sec, 54267 microsec elapsed time 54 microsec CAMAC READ single action takes 44 microsec. program execution : loop count = 57 elapsed time 0 sec, 50 microsec overhead time 10 microsec elapsed time 0 sec, 55632 microsec elapsed time 55 microsec CAMAC READ single action takes 45 microsec. program execution : loop count = 58 elapsed time 0 sec, 49 microsec overhead time 9 microsec elapsed time 0 sec, 54658 microsec elapsed time 54 microsec CAMAC READ single action takes 45 microsec. program execution : loop count = 59 elapsed time 0 sec, 53 microsec overhead time 10 microsec elapsed time 0 sec, 55549 microsec elapsed time 55 microsec CAMAC READ single action takes 45 microsec. program execution : loop count = 60 elapsed time 0 sec, 50 microsec overhead time 10 microsec elapsed time 0 sec, 54520 microsec elapsed time 54 microsec CAMAC READ single action takes 44 microsec. program execution : loop count = 61 elapsed time 0 sec, 51 microsec overhead time 10 microsec elapsed time 0 sec, 55953 microsec elapsed time 55 microsec CAMAC READ single action takes 45 microsec. program execution : loop count = 62 elapsed time 0 sec, 50 microsec overhead time 10 microsec elapsed time 0 sec, 54168 microsec elapsed time 54 microsec CAMAC READ single action takes 44 microsec. program execution : loop count = 63 elapsed time 0 sec, 50 microsec overhead time 10 microsec elapsed time 0 sec, 55626 microsec elapsed time 55 microsec CAMAC READ single action takes 45 microsec. program execution : loop count = 64 elapsed time 0 sec, 51 microsec overhead time 10 microsec elapsed time 0 sec, 54184 microsec elapsed time 54 microsec CAMAC READ single action takes 44 microsec. program execution : loop count = 65 elapsed time 0 sec, 51 microsec overhead time 10 microsec elapsed time 0 sec, 55616 microsec elapsed time 55 microsec CAMAC READ single action takes 45 microsec. program execution : loop count = 66 elapsed time 0 sec, 52 microsec overhead time 10 microsec elapsed time 0 sec, 54273 microsec elapsed time 54 microsec CAMAC READ single action takes 44 microsec. program execution : loop count = 67 elapsed time 0 sec, 50 microsec overhead time 10 microsec elapsed time 0 sec, 55593 microsec elapsed time 55 microsec CAMAC READ single action takes 45 microsec. program execution : loop count = 68 elapsed time 0 sec, 50 microsec overhead time 10 microsec elapsed time 0 sec, 54211 microsec elapsed time 54 microsec CAMAC READ single action takes 44 microsec. program execution : loop count = 69 elapsed time 0 sec, 51 microsec overhead time 10 microsec elapsed time 0 sec, 55589 microsec elapsed time 55 microsec CAMAC READ single action takes 45 microsec. program execution : loop count = 70 elapsed time 0 sec, 52 microsec overhead time 10 microsec elapsed time 0 sec, 54141 microsec elapsed time 54 microsec CAMAC READ single action takes 44 microsec. program execution : loop count = 71 elapsed time 0 sec, 52 microsec overhead time 10 microsec elapsed time 0 sec, 55496 microsec elapsed time 55 microsec CAMAC READ single action takes 45 microsec. program execution : loop count = 72 elapsed time 0 sec, 52 microsec overhead time 10 microsec elapsed time 0 sec, 54495 microsec elapsed time 54 microsec CAMAC READ single action takes 44 microsec. program execution : loop count = 73 elapsed time 0 sec, 51 microsec overhead time 10 microsec elapsed time 0 sec, 55614 microsec elapsed time 55 microsec CAMAC READ single action takes 45 microsec. program execution : loop count = 74 elapsed time 0 sec, 50 microsec overhead time 10 microsec elapsed time 0 sec, 54394 microsec elapsed time 54 microsec CAMAC READ single action takes 44 microsec. program execution : loop count = 75 elapsed time 0 sec, 50 microsec overhead time 10 microsec elapsed time 0 sec, 56663 microsec elapsed time 56 microsec CAMAC READ single action takes 46 microsec. program execution : loop count = 76 elapsed time 0 sec, 50 microsec overhead time 10 microsec elapsed time 0 sec, 54250 microsec elapsed time 54 microsec CAMAC READ single action takes 44 microsec. program execution : loop count = 77 elapsed time 0 sec, 49 microsec overhead time 9 microsec elapsed time 0 sec, 55917 microsec elapsed time 55 microsec CAMAC READ single action takes 46 microsec. program execution : loop count = 78 elapsed time 0 sec, 49 microsec overhead time 9 microsec elapsed time 0 sec, 54117 microsec elapsed time 54 microsec CAMAC READ single action takes 45 microsec. program execution : loop count = 79 elapsed time 0 sec, 52 microsec overhead time 10 microsec elapsed time 0 sec, 55628 microsec elapsed time 55 microsec CAMAC READ single action takes 45 microsec. program execution : loop count = 80 elapsed time 0 sec, 50 microsec overhead time 10 microsec elapsed time 0 sec, 54126 microsec elapsed time 54 microsec CAMAC READ single action takes 44 microsec. program execution : loop count = 81 elapsed time 0 sec, 49 microsec overhead time 9 microsec elapsed time 0 sec, 55536 microsec elapsed time 55 microsec CAMAC READ single action takes 46 microsec. program execution : loop count = 82 elapsed time 0 sec, 51 microsec overhead time 10 microsec elapsed time 0 sec, 54326 microsec elapsed time 54 microsec CAMAC READ single action takes 44 microsec. program execution : loop count = 83 elapsed time 0 sec, 50 microsec overhead time 10 microsec elapsed time 0 sec, 56009 microsec elapsed time 56 microsec CAMAC READ single action takes 46 microsec. program execution : loop count = 84 elapsed time 0 sec, 51 microsec overhead time 10 microsec elapsed time 0 sec, 54607 microsec elapsed time 54 microsec CAMAC READ single action takes 44 microsec. program execution : loop count = 85 elapsed time 0 sec, 52 microsec overhead time 10 microsec elapsed time 0 sec, 56056 microsec elapsed time 56 microsec CAMAC READ single action takes 46 microsec. program execution : loop count = 86 elapsed time 0 sec, 49 microsec overhead time 9 microsec elapsed time 0 sec, 54588 microsec elapsed time 54 microsec CAMAC READ single action takes 45 microsec. program execution : loop count = 87 elapsed time 0 sec, 51 microsec overhead time 10 microsec elapsed time 0 sec, 57039 microsec elapsed time 57 microsec CAMAC READ single action takes 47 microsec. program execution : loop count = 88 elapsed time 0 sec, 52 microsec overhead time 10 microsec elapsed time 0 sec, 54568 microsec elapsed time 54 microsec CAMAC READ single action takes 44 microsec. program execution : loop count = 89 elapsed time 0 sec, 50 microsec overhead time 10 microsec elapsed time 0 sec, 56328 microsec elapsed time 56 microsec CAMAC READ single action takes 46 microsec. program execution : loop count = 90 elapsed time 0 sec, 49 microsec overhead time 9 microsec elapsed time 0 sec, 54597 microsec elapsed time 54 microsec CAMAC READ single action takes 45 microsec. program execution : loop count = 91 elapsed time 0 sec, 49 microsec overhead time 9 microsec elapsed time 0 sec, 55509 microsec elapsed time 55 microsec CAMAC READ single action takes 46 microsec. program execution : loop count = 92 elapsed time 0 sec, 53 microsec overhead time 10 microsec elapsed time 0 sec, 54318 microsec elapsed time 54 microsec CAMAC READ single action takes 44 microsec. program execution : loop count = 93 elapsed time 0 sec, 50 microsec overhead time 10 microsec elapsed time 0 sec, 55631 microsec elapsed time 55 microsec CAMAC READ single action takes 45 microsec. program execution : loop count = 94 elapsed time 0 sec, 49 microsec overhead time 9 microsec elapsed time 0 sec, 54187 microsec elapsed time 54 microsec CAMAC READ single action takes 45 microsec. program execution : loop count = 95 elapsed time 0 sec, 50 microsec overhead time 10 microsec elapsed time 0 sec, 56031 microsec elapsed time 56 microsec CAMAC READ single action takes 46 microsec. program execution : loop count = 96 elapsed time 0 sec, 52 microsec overhead time 10 microsec elapsed time 0 sec, 54609 microsec elapsed time 54 microsec CAMAC READ single action takes 44 microsec. program execution : loop count = 97 elapsed time 0 sec, 50 microsec overhead time 10 microsec elapsed time 0 sec, 56093 microsec elapsed time 56 microsec CAMAC READ single action takes 46 microsec. program execution : loop count = 98 elapsed time 0 sec, 52 microsec overhead time 10 microsec elapsed time 0 sec, 54786 microsec elapsed time 54 microsec CAMAC READ single action takes 44 microsec. program execution : loop count = 99 elapsed time 0 sec, 49 microsec overhead time 9 microsec elapsed time 0 sec, 56082 microsec elapsed time 56 microsec CAMAC READ single action takes 47 microsec. program execution : loop count = 100 elapsed time 0 sec, 49 microsec overhead time 9 microsec elapsed time 0 sec, 54608 microsec elapsed time 54 microsec CAMAC READ single action takes 45 microsec. program stop シングルアクションを実行するのに要した時間は、45μsec であった。 --- (6). 項目タイトル (6-1). サブ項目タイトル (6-1-1). サブサブ項目タイトル