Oct 29, 1998 onl5v4: Solaris 2.6 cc ドライバのデバッグ. cc ドライバの実行、スピード測定、(その2) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ (http://www-online.kek.jp/~inoue/CAMAC/ onl5v4-sol2.6/camac-step07.txt) 高エネルギー加速器研究機構 素粒子原子核研究所 物理、オンライングループ 井上 栄二 (1). 現状確認 (A). 英語版 Soalris2.6 & VMEドライバ v2.2.2 が届いた。 (B). CPU-5V に Solaris2.6 のシステムをインストールした。 (C). /etc の下の各設定、および /export/home の作成をやった。 (D). sendmail のバージョンをアップをやった。 (E). Solaris2.6用の VMEドライバ、FRCvme-2.2.2 をインストールした。 (F). onl5v4 に ccドライバをインストールした。 (G). サンプル・プログラムを実行した。 (G-1). 24ビットのシングル・アクション read/writeプログラム、cam1 は 正常終了した。 (G-2). 割り込み処理プログラム、cam3 は正常終了した。 (G-3). 16ビットのブロック転送 read/writeプログラム、cam2 は NG。 ハングする。 (H). onl5v4 に VMEドライバ v2.2.2、および CAMACドライバをインストール した後、onl7v2 上での cam2 の実行もハングするようになってしまった。 (H-1). onl5v4 のボードを引き抜いて、cam2 を実行しみたところ、以前と 同様に正常に実行できることを確認した。 (H-2). onl7v2 のボードを引き抜いてから onl5v4、Solaris2.6 で CAMAC の テストを再実行した。 正常に実行できることを確認した。 (I). onl5v4 上で、シングルアクション、割り込み、ブロック転送の実行速度 を調べた。 (2). ここでやるべきこと onl5v4 上で、シングルアクションの実行に要する時間を、精度を上げて測定 する。 (3). データ転送速度測定プログラムの修正およびコンパイル 測定の精度を上げるために測定方法は次のようにする。 シングルアクション Read の CAMAC コールを 1000回実行する。 この1000回実行の前後で時間を 測り、その値を 1000 で割る。 (3-1). テスト・プログラムをコンパイルする ソース・プログラムを上記のように修正した。 そして、コンパイルを実行。 onl5v4[54]% make camsingle_measure1 /usr/ucb/cc -DOSF1 -o camsingle_measure1 camsingle_measure1.c -I../includes -L.. /lib -lcamac onl5v4[55]% ok. 正常にコンパイルできた。 (4). データ転送速度測定プログラムの実行 上記でコンパイルしたデータ転送速度測定プログラムを実行する。 プログラムはシェルスクリプトを使って 100回繰り返した。 (4-1). 24 ビット camac シングルアクションのテスト用プログラムの実行 onl5v4[55]% camsingle.sh program execution : loop count = 1 elapsed time 0 sec, 31 microsec overhead time 6 microsec elapsed time 0 sec, 61852 microsec elapsed time 61 microsec CAMAC READ single action takes 55 microsec. program execution : loop count = 2 elapsed time 0 sec, 32 microsec overhead time 6 microsec elapsed time 0 sec, 62153 microsec elapsed time 62 microsec CAMAC READ single action takes 56 microsec. program execution : loop count = 3 elapsed time 0 sec, 32 microsec overhead time 6 microsec elapsed time 0 sec, 61735 microsec elapsed time 61 microsec CAMAC READ single action takes 55 microsec. program execution : loop count = 4 elapsed time 0 sec, 32 microsec overhead time 6 microsec elapsed time 0 sec, 62148 microsec elapsed time 62 microsec CAMAC READ single action takes 56 microsec. program execution : loop count = 5 elapsed time 0 sec, 32 microsec overhead time 6 microsec elapsed time 0 sec, 61735 microsec elapsed time 61 microsec CAMAC READ single action takes 55 microsec. program execution : loop count = 6 elapsed time 0 sec, 32 microsec overhead time 6 microsec elapsed time 0 sec, 62249 microsec elapsed time 62 microsec CAMAC READ single action takes 56 microsec. program execution : loop count = 7 elapsed time 0 sec, 31 microsec overhead time 6 microsec elapsed time 0 sec, 61654 microsec elapsed time 61 microsec CAMAC READ single action takes 55 microsec. program execution : loop count = 8 elapsed time 0 sec, 32 microsec overhead time 6 microsec elapsed time 0 sec, 62201 microsec elapsed time 62 microsec CAMAC READ single action takes 56 microsec. program execution : loop count = 9 elapsed time 0 sec, 31 microsec overhead time 6 microsec elapsed time 0 sec, 61741 microsec elapsed time 61 microsec CAMAC READ single action takes 55 microsec. program execution : loop count = 10 elapsed time 0 sec, 33 microsec overhead time 6 microsec elapsed time 0 sec, 62308 microsec elapsed time 62 microsec CAMAC READ single action takes 56 microsec. program execution : loop count = 11 elapsed time 0 sec, 33 microsec overhead time 6 microsec elapsed time 0 sec, 61747 microsec elapsed time 61 microsec CAMAC READ single action takes 55 microsec. program execution : loop count = 12 elapsed time 0 sec, 32 microsec overhead time 6 microsec elapsed time 0 sec, 62142 microsec elapsed time 62 microsec CAMAC READ single action takes 56 microsec. program execution : loop count = 13 elapsed time 0 sec, 31 microsec overhead time 6 microsec elapsed time 0 sec, 61773 microsec elapsed time 61 microsec CAMAC READ single action takes 55 microsec. program execution : loop count = 14 elapsed time 0 sec, 32 microsec overhead time 6 microsec elapsed time 0 sec, 62214 microsec elapsed time 62 microsec CAMAC READ single action takes 56 microsec. program execution : loop count = 15 elapsed time 0 sec, 32 microsec overhead time 6 microsec elapsed time 0 sec, 61799 microsec elapsed time 61 microsec CAMAC READ single action takes 55 microsec. program execution : loop count = 16 elapsed time 0 sec, 33 microsec overhead time 6 microsec elapsed time 0 sec, 62220 microsec elapsed time 62 microsec CAMAC READ single action takes 56 microsec. program execution : loop count = 17 elapsed time 0 sec, 32 microsec overhead time 6 microsec elapsed time 0 sec, 61754 microsec elapsed time 61 microsec CAMAC READ single action takes 55 microsec. program execution : loop count = 18 elapsed time 0 sec, 31 microsec overhead time 6 microsec elapsed time 0 sec, 62028 microsec elapsed time 62 microsec CAMAC READ single action takes 56 microsec. program execution : loop count = 19 elapsed time 0 sec, 32 microsec overhead time 6 microsec elapsed time 0 sec, 61794 microsec elapsed time 61 microsec CAMAC READ single action takes 55 microsec. program execution : loop count = 20 elapsed time 0 sec, 33 microsec overhead time 6 microsec elapsed time 0 sec, 62064 microsec elapsed time 62 microsec CAMAC READ single action takes 56 microsec. program execution : loop count = 21 elapsed time 0 sec, 32 microsec overhead time 6 microsec elapsed time 0 sec, 61806 microsec elapsed time 61 microsec CAMAC READ single action takes 55 microsec. program execution : loop count = 22 elapsed time 0 sec, 34 microsec overhead time 6 microsec elapsed time 0 sec, 62106 microsec elapsed time 62 microsec CAMAC READ single action takes 56 microsec. program execution : loop count = 23 elapsed time 0 sec, 32 microsec overhead time 6 microsec elapsed time 0 sec, 61873 microsec elapsed time 61 microsec CAMAC READ single action takes 55 microsec. program execution : loop count = 24 elapsed time 0 sec, 31 microsec overhead time 6 microsec elapsed time 0 sec, 62104 microsec elapsed time 62 microsec CAMAC READ single action takes 56 microsec. program execution : loop count = 25 elapsed time 0 sec, 33 microsec overhead time 6 microsec elapsed time 0 sec, 61715 microsec elapsed time 61 microsec CAMAC READ single action takes 55 microsec. program execution : loop count = 26 elapsed time 0 sec, 30 microsec overhead time 6 microsec elapsed time 0 sec, 62149 microsec elapsed time 62 microsec CAMAC READ single action takes 56 microsec. program execution : loop count = 27 elapsed time 0 sec, 33 microsec overhead time 6 microsec elapsed time 0 sec, 61665 microsec elapsed time 61 microsec CAMAC READ single action takes 55 microsec. program execution : loop count = 28 elapsed time 0 sec, 31 microsec overhead time 6 microsec elapsed time 0 sec, 62160 microsec elapsed time 62 microsec CAMAC READ single action takes 56 microsec. program execution : loop count = 29 elapsed time 0 sec, 30 microsec overhead time 6 microsec elapsed time 0 sec, 61684 microsec elapsed time 61 microsec CAMAC READ single action takes 55 microsec. program execution : loop count = 30 elapsed time 0 sec, 33 microsec overhead time 6 microsec elapsed time 0 sec, 62248 microsec elapsed time 62 microsec CAMAC READ single action takes 56 microsec. program execution : loop count = 31 elapsed time 0 sec, 32 microsec overhead time 6 microsec elapsed time 0 sec, 61748 microsec elapsed time 61 microsec CAMAC READ single action takes 55 microsec. program execution : loop count = 32 elapsed time 0 sec, 32 microsec overhead time 6 microsec elapsed time 0 sec, 61979 microsec elapsed time 61 microsec CAMAC READ single action takes 55 microsec. program execution : loop count = 33 elapsed time 0 sec, 32 microsec overhead time 6 microsec elapsed time 0 sec, 61663 microsec elapsed time 61 microsec CAMAC READ single action takes 55 microsec. program execution : loop count = 34 elapsed time 0 sec, 32 microsec overhead time 6 microsec elapsed time 0 sec, 62091 microsec elapsed time 62 microsec CAMAC READ single action takes 56 microsec. program execution : loop count = 35 elapsed time 0 sec, 33 microsec overhead time 6 microsec elapsed time 0 sec, 61841 microsec elapsed time 61 microsec CAMAC READ single action takes 55 microsec. program execution : loop count = 36 elapsed time 0 sec, 31 microsec overhead time 6 microsec elapsed time 0 sec, 62141 microsec elapsed time 62 microsec CAMAC READ single action takes 56 microsec. program execution : loop count = 37 elapsed time 0 sec, 32 microsec overhead time 6 microsec elapsed time 0 sec, 61540 microsec elapsed time 61 microsec CAMAC READ single action takes 55 microsec. program execution : loop count = 38 elapsed time 0 sec, 32 microsec overhead time 6 microsec elapsed time 0 sec, 61963 microsec elapsed time 61 microsec CAMAC READ single action takes 55 microsec. program execution : loop count = 39 elapsed time 0 sec, 31 microsec overhead time 6 microsec elapsed time 0 sec, 61761 microsec elapsed time 61 microsec CAMAC READ single action takes 55 microsec. program execution : loop count = 40 elapsed time 0 sec, 33 microsec overhead time 6 microsec elapsed time 0 sec, 62082 microsec elapsed time 62 microsec CAMAC READ single action takes 56 microsec. program execution : loop count = 41 elapsed time 0 sec, 32 microsec overhead time 6 microsec elapsed time 0 sec, 61779 microsec elapsed time 61 microsec CAMAC READ single action takes 55 microsec. program execution : loop count = 42 elapsed time 0 sec, 32 microsec overhead time 6 microsec elapsed time 0 sec, 62203 microsec elapsed time 62 microsec CAMAC READ single action takes 56 microsec. program execution : loop count = 43 elapsed time 0 sec, 32 microsec overhead time 6 microsec elapsed time 0 sec, 61963 microsec elapsed time 61 microsec CAMAC READ single action takes 55 microsec. program execution : loop count = 44 elapsed time 0 sec, 32 microsec overhead time 6 microsec elapsed time 0 sec, 61948 microsec elapsed time 61 microsec CAMAC READ single action takes 55 microsec. program execution : loop count = 45 elapsed time 0 sec, 32 microsec overhead time 6 microsec elapsed time 0 sec, 61895 microsec elapsed time 61 microsec CAMAC READ single action takes 55 microsec. program execution : loop count = 46 elapsed time 0 sec, 32 microsec overhead time 6 microsec elapsed time 0 sec, 62053 microsec elapsed time 62 microsec CAMAC READ single action takes 56 microsec. program execution : loop count = 47 elapsed time 0 sec, 32 microsec overhead time 6 microsec elapsed time 0 sec, 61784 microsec elapsed time 61 microsec CAMAC READ single action takes 55 microsec. program execution : loop count = 48 elapsed time 0 sec, 31 microsec overhead time 6 microsec elapsed time 0 sec, 63894 microsec elapsed time 63 microsec CAMAC READ single action takes 57 microsec. program execution : loop count = 49 elapsed time 0 sec, 32 microsec overhead time 6 microsec elapsed time 0 sec, 61797 microsec elapsed time 61 microsec CAMAC READ single action takes 55 microsec. program execution : loop count = 50 elapsed time 0 sec, 33 microsec overhead time 6 microsec elapsed time 0 sec, 62222 microsec elapsed time 62 microsec CAMAC READ single action takes 56 microsec. program execution : loop count = 51 elapsed time 0 sec, 31 microsec overhead time 6 microsec elapsed time 0 sec, 61822 microsec elapsed time 61 microsec CAMAC READ single action takes 55 microsec. program execution : loop count = 52 elapsed time 0 sec, 32 microsec overhead time 6 microsec elapsed time 0 sec, 62032 microsec elapsed time 62 microsec CAMAC READ single action takes 56 microsec. program execution : loop count = 53 elapsed time 0 sec, 31 microsec overhead time 6 microsec elapsed time 0 sec, 61768 microsec elapsed time 61 microsec CAMAC READ single action takes 55 microsec. program execution : loop count = 54 elapsed time 0 sec, 32 microsec overhead time 6 microsec elapsed time 0 sec, 62122 microsec elapsed time 62 microsec CAMAC READ single action takes 56 microsec. program execution : loop count = 55 elapsed time 0 sec, 31 microsec overhead time 6 microsec elapsed time 0 sec, 61721 microsec elapsed time 61 microsec CAMAC READ single action takes 55 microsec. program execution : loop count = 56 elapsed time 0 sec, 32 microsec overhead time 6 microsec elapsed time 0 sec, 62258 microsec elapsed time 62 microsec CAMAC READ single action takes 56 microsec. program execution : loop count = 57 elapsed time 0 sec, 31 microsec overhead time 6 microsec elapsed time 0 sec, 61641 microsec elapsed time 61 microsec CAMAC READ single action takes 55 microsec. program execution : loop count = 58 elapsed time 0 sec, 31 microsec overhead time 6 microsec elapsed time 0 sec, 62139 microsec elapsed time 62 microsec CAMAC READ single action takes 56 microsec. program execution : loop count = 59 elapsed time 0 sec, 32 microsec overhead time 6 microsec elapsed time 0 sec, 61819 microsec elapsed time 61 microsec CAMAC READ single action takes 55 microsec. program execution : loop count = 60 elapsed time 0 sec, 32 microsec overhead time 6 microsec elapsed time 0 sec, 62312 microsec elapsed time 62 microsec CAMAC READ single action takes 56 microsec. program execution : loop count = 61 elapsed time 0 sec, 31 microsec overhead time 6 microsec elapsed time 0 sec, 61654 microsec elapsed time 61 microsec CAMAC READ single action takes 55 microsec. program execution : loop count = 62 elapsed time 0 sec, 32 microsec overhead time 6 microsec elapsed time 0 sec, 62218 microsec elapsed time 62 microsec CAMAC READ single action takes 56 microsec. program execution : loop count = 63 elapsed time 0 sec, 31 microsec overhead time 6 microsec elapsed time 0 sec, 61626 microsec elapsed time 61 microsec CAMAC READ single action takes 55 microsec. program execution : loop count = 64 elapsed time 0 sec, 32 microsec overhead time 6 microsec elapsed time 0 sec, 62193 microsec elapsed time 62 microsec CAMAC READ single action takes 56 microsec. program execution : loop count = 65 elapsed time 0 sec, 33 microsec overhead time 6 microsec elapsed time 0 sec, 61679 microsec elapsed time 61 microsec CAMAC READ single action takes 55 microsec. program execution : loop count = 66 elapsed time 0 sec, 32 microsec overhead time 6 microsec elapsed time 0 sec, 61959 microsec elapsed time 61 microsec CAMAC READ single action takes 55 microsec. program execution : loop count = 67 elapsed time 0 sec, 32 microsec overhead time 6 microsec elapsed time 0 sec, 61919 microsec elapsed time 61 microsec CAMAC READ single action takes 55 microsec. program execution : loop count = 68 elapsed time 0 sec, 32 microsec overhead time 6 microsec elapsed time 0 sec, 62176 microsec elapsed time 62 microsec CAMAC READ single action takes 56 microsec. program execution : loop count = 69 elapsed time 0 sec, 31 microsec overhead time 6 microsec elapsed time 0 sec, 61936 microsec elapsed time 61 microsec CAMAC READ single action takes 55 microsec. program execution : loop count = 70 elapsed time 0 sec, 33 microsec overhead time 6 microsec elapsed time 0 sec, 62484 microsec elapsed time 62 microsec CAMAC READ single action takes 56 microsec. program execution : loop count = 71 elapsed time 0 sec, 32 microsec overhead time 6 microsec elapsed time 0 sec, 61783 microsec elapsed time 61 microsec CAMAC READ single action takes 55 microsec. program execution : loop count = 72 elapsed time 0 sec, 32 microsec overhead time 6 microsec elapsed time 0 sec, 62309 microsec elapsed time 62 microsec CAMAC READ single action takes 56 microsec. program execution : loop count = 73 elapsed time 0 sec, 33 microsec overhead time 6 microsec elapsed time 0 sec, 61663 microsec elapsed time 61 microsec CAMAC READ single action takes 55 microsec. program execution : loop count = 74 elapsed time 0 sec, 32 microsec overhead time 6 microsec elapsed time 0 sec, 62146 microsec elapsed time 62 microsec CAMAC READ single action takes 56 microsec. program execution : loop count = 75 elapsed time 0 sec, 32 microsec overhead time 6 microsec elapsed time 0 sec, 61838 microsec elapsed time 61 microsec CAMAC READ single action takes 55 microsec. program execution : loop count = 76 elapsed time 0 sec, 31 microsec overhead time 6 microsec elapsed time 0 sec, 62023 microsec elapsed time 62 microsec CAMAC READ single action takes 56 microsec. program execution : loop count = 77 elapsed time 0 sec, 32 microsec overhead time 6 microsec elapsed time 0 sec, 61718 microsec elapsed time 61 microsec CAMAC READ single action takes 55 microsec. program execution : loop count = 78 elapsed time 0 sec, 32 microsec overhead time 6 microsec elapsed time 0 sec, 62248 microsec elapsed time 62 microsec CAMAC READ single action takes 56 microsec. program execution : loop count = 79 elapsed time 0 sec, 32 microsec overhead time 6 microsec elapsed time 0 sec, 61795 microsec elapsed time 61 microsec CAMAC READ single action takes 55 microsec. program execution : loop count = 80 elapsed time 0 sec, 32 microsec overhead time 6 microsec elapsed time 0 sec, 62047 microsec elapsed time 62 microsec CAMAC READ single action takes 56 microsec. program execution : loop count = 81 elapsed time 0 sec, 32 microsec overhead time 6 microsec elapsed time 0 sec, 61679 microsec elapsed time 61 microsec CAMAC READ single action takes 55 microsec. program execution : loop count = 82 elapsed time 0 sec, 31 microsec overhead time 6 microsec elapsed time 0 sec, 62053 microsec elapsed time 62 microsec CAMAC READ single action takes 56 microsec. program execution : loop count = 83 elapsed time 0 sec, 32 microsec overhead time 6 microsec elapsed time 0 sec, 61638 microsec elapsed time 61 microsec CAMAC READ single action takes 55 microsec. program execution : loop count = 84 elapsed time 0 sec, 33 microsec overhead time 6 microsec elapsed time 0 sec, 62289 microsec elapsed time 62 microsec CAMAC READ single action takes 56 microsec. program execution : loop count = 85 elapsed time 0 sec, 33 microsec overhead time 6 microsec elapsed time 0 sec, 61731 microsec elapsed time 61 microsec CAMAC READ single action takes 55 microsec. program execution : loop count = 86 elapsed time 0 sec, 32 microsec overhead time 6 microsec elapsed time 0 sec, 62383 microsec elapsed time 62 microsec CAMAC READ single action takes 56 microsec. program execution : loop count = 87 elapsed time 0 sec, 31 microsec overhead time 6 microsec elapsed time 0 sec, 61638 microsec elapsed time 61 microsec CAMAC READ single action takes 55 microsec. program execution : loop count = 88 elapsed time 0 sec, 31 microsec overhead time 6 microsec elapsed time 0 sec, 62264 microsec elapsed time 62 microsec CAMAC READ single action takes 56 microsec. program execution : loop count = 89 elapsed time 0 sec, 32 microsec overhead time 6 microsec elapsed time 0 sec, 61655 microsec elapsed time 61 microsec CAMAC READ single action takes 55 microsec. program execution : loop count = 90 elapsed time 0 sec, 32 microsec overhead time 6 microsec elapsed time 0 sec, 62193 microsec elapsed time 62 microsec CAMAC READ single action takes 56 microsec. program execution : loop count = 91 elapsed time 0 sec, 32 microsec overhead time 6 microsec elapsed time 0 sec, 61730 microsec elapsed time 61 microsec CAMAC READ single action takes 55 microsec. program execution : loop count = 92 elapsed time 0 sec, 31 microsec overhead time 6 microsec elapsed time 0 sec, 62257 microsec elapsed time 62 microsec CAMAC READ single action takes 56 microsec. program execution : loop count = 93 elapsed time 0 sec, 31 microsec overhead time 6 microsec elapsed time 0 sec, 61585 microsec elapsed time 61 microsec CAMAC READ single action takes 55 microsec. program execution : loop count = 94 elapsed time 0 sec, 32 microsec overhead time 6 microsec elapsed time 0 sec, 62401 microsec elapsed time 62 microsec CAMAC READ single action takes 56 microsec. program execution : loop count = 95 elapsed time 0 sec, 31 microsec overhead time 6 microsec elapsed time 0 sec, 61663 microsec elapsed time 61 microsec CAMAC READ single action takes 55 microsec. program execution : loop count = 96 elapsed time 0 sec, 30 microsec overhead time 6 microsec elapsed time 0 sec, 62135 microsec elapsed time 62 microsec CAMAC READ single action takes 56 microsec. program execution : loop count = 97 elapsed time 0 sec, 33 microsec overhead time 6 microsec elapsed time 0 sec, 61758 microsec elapsed time 61 microsec CAMAC READ single action takes 55 microsec. program execution : loop count = 98 elapsed time 0 sec, 31 microsec overhead time 6 microsec elapsed time 0 sec, 62148 microsec elapsed time 62 microsec CAMAC READ single action takes 56 microsec. program execution : loop count = 99 elapsed time 0 sec, 32 microsec overhead time 6 microsec elapsed time 0 sec, 61793 microsec elapsed time 61 microsec CAMAC READ single action takes 55 microsec. program execution : loop count = 100 elapsed time 0 sec, 32 microsec overhead time 6 microsec elapsed time 0 sec, 62203 microsec elapsed time 62 microsec CAMAC READ single action takes 56 microsec. program stop onl5v4[56]% シングルアクションを実行するのに要した時間は、55μsec であった。 --- (6). 項目タイトル (6-1). サブ項目タイトル (6-1-1). サブサブ項目タイトル