オンラインでPAWを使うことを考えてみましょう。データ収集系では実験デー タのモニターのためオンライン解析プログラムを走らせますが、ヒストグラム 等一つのランが終わった後でなければ見られないということでは困ります。現 在走っているランのヒストグラムを途中でいいので見たいものです。そのため には何らかの方法で解析プログラムとPAWでヒストグラムをシェアしなければ なりません。そのための方法を見てみましょう。まず単一の計算機では共有メ モリーを使ってシェアが可能です。ネットワークにまたがる場合、何らかのネッ トワーク通信によってヒストグラムをコピーする必要があります。
まず共有メモリーから見ていきましょう。共有メモリーの仕組みそのものは すでに9章で解説してあります。PAW/HBOOKでは共有メモリーは名前で識別され ます。これまでメモリーは//PAWCとしてきましたが違う名前のメモリーを作業 領域とします。まず共有メモリーを開き、ZEBRA領域として使うことを宣言し ます。まずFORTRANプログラムの中(これは解析プログラムの方)でHLIMITの替 わりにHLIMAPを呼びます。
PARAMETER ( NWORDS = 50000 ) CALL HLIMAP( NWORDS, 'SHDEMO' )
これによりコモンブロックPAWCではなく、共有メモリーにヒストグラムや ntupleが作られていきます。あとはHBOOK1(2)で定義し、HFILLでフィルしてい きます。
PAWはこれをHISTOGRAM/HIO/GLOBAL_SECTコマンドでファイルの代わりに割り 付けます。解析プログラムが走り出した後
PAW > GLOBAL SHDEMO
これで//PAWCの代わりに共有メモリーSHDEMOが作業場所になりました。LDIRで 中身を見れば解析プログラムが作っているヒストグラムが見えるはずです。
ネットワークにまたがってPAWを起動する仕組みも用意されています。相手 側の計算機にPAWサーバがを起動してそこのファイルを読み書き出来るように なります。
PAW > RLOGIN YAOYA PAW > RSHELL FILE RUN2001.HIST
最初のNETWORK/RLOGINコマンドでホストyaoyaにPAWサーバを起動しました。次 のNETWORK/ RSHELLコマンドで向こう側のファイルを開きました。後は通常の ファイルと同じようにヒストグラムを表示したりすることが出来ます。
相手計算機のファイルは//YAOYAのようにトップディレクトリに表示されま す。CDIRで移動したりすることも可能です。RSHELLは必ずホストに対応したディ レクトリで発行する必要があります。