memo379 : WP-1116

Created Tue Nov 16 17:15:48 2010
Last Modified Wed Nov 17 16:36:40 2010

*#1 Tue Nov 16 17:15:48 2010 / Wed Nov 17 16:36:40 2010

memo380 Forward <= Today => Previous memo378



* rdfファイルを分割する => memo379
* run75の時系列 => memo379
* time likeな量をヒストグラムに使おう => memo379
* time like vs Analogue for D213 => memo379
* time like vs Analogue for All  => memo379



*#2 Tue Nov 16 17:17:06 2010 / Tue Nov 16 17:55:04 2010

rdfファイルを分割する。
rdfフォーマットでは1ブロック=16kB = 16*2**10 = 16384bytes.
0075.rdfのサイズは57474ブロックであった。
先頭と末尾の1ブロックはそれぞれヘッダとエンダである。
=> memo379

$ ./rdfsplitter.pl 0075.rdf r75size.log
Use of uninitialized value in subtraction (-) at ./rdfsplitter.pl line 31, <GEN0> line 20.
Use of uninitialized value in concatenation (.) or string at ./rdfsplitter.pl line 32, <GEN0> line 20.
1322  23
1382 23 3024
dd if=0075.rdf of=0075.rdf.temp ibs=16384 obs=16384 skip=23 count=3024
読み込んだブロック数は 3024+0
書き込んだブロック数は 3024+0
cat h75 0075.rdf.temp e75 > 0075.rdf.1
1442 3047 3020
dd if=0075.rdf of=0075.rdf.temp ibs=16384 obs=16384 skip=3047 count=3020
読み込んだブロック数は 3020+0
書き込んだブロック数は 3020+0
cat h75 0075.rdf.temp e75 > 0075.rdf.2
1502 6067 3024
dd if=0075.rdf of=0075.rdf.temp ibs=16384 obs=16384 skip=6067 count=3024
読み込んだブロック数は 3024+0
書き込んだブロック数は 3024+0
cat h75 0075.rdf.temp e75 > 0075.rdf.3
1562 9091 3026
dd if=0075.rdf of=0075.rdf.temp ibs=16384 obs=16384 skip=9091 count=3026
読み込んだブロック数は 3026+0
書き込んだブロック数は 3026+0
cat h75 0075.rdf.temp e75 > 0075.rdf.4
1622 12117 3023
dd if=0075.rdf of=0075.rdf.temp ibs=16384 obs=16384 skip=12117 count=3023
読み込んだブロック数は 3023+0
書き込んだブロック数は 3023+0
cat h75 0075.rdf.temp e75 > 0075.rdf.5
1682 15140 3018
dd if=0075.rdf of=0075.rdf.temp ibs=16384 obs=16384 skip=15140 count=3018
読み込んだブロック数は 3018+0
書き込んだブロック数は 3018+0
cat h75 0075.rdf.temp e75 > 0075.rdf.6
1742 18158 3031
dd if=0075.rdf of=0075.rdf.temp ibs=16384 obs=16384 skip=18158 count=3031
読み込んだブロック数は 3031+0
書き込んだブロック数は 3031+0
cat h75 0075.rdf.temp e75 > 0075.rdf.7
1802 21189 3019
dd if=0075.rdf of=0075.rdf.temp ibs=16384 obs=16384 skip=21189 count=3019
読み込んだブロック数は 3019+0
書き込んだブロック数は 3019+0
cat h75 0075.rdf.temp e75 > 0075.rdf.8
1862 24208 3016
dd if=0075.rdf of=0075.rdf.temp ibs=16384 obs=16384 skip=24208 count=3016
読み込んだブロック数は 3016+0
書き込んだブロック数は 3016+0
cat h75 0075.rdf.temp e75 > 0075.rdf.9
1922 27224 3025
dd if=0075.rdf of=0075.rdf.temp ibs=16384 obs=16384 skip=27224 count=3025
読み込んだブロック数は 3025+0
書き込んだブロック数は 3025+0
cat h75 0075.rdf.temp e75 > 0075.rdf.10
1982 30249 3020
dd if=0075.rdf of=0075.rdf.temp ibs=16384 obs=16384 skip=30249 count=3020
読み込んだブロック数は 3020+0
書き込んだブロック数は 3020+0
cat h75 0075.rdf.temp e75 > 0075.rdf.11
2042 33269 3028
dd if=0075.rdf of=0075.rdf.temp ibs=16384 obs=16384 skip=33269 count=3028
読み込んだブロック数は 3028+0
書き込んだブロック数は 3028+0
cat h75 0075.rdf.temp e75 > 0075.rdf.12
2102 36297 3020
dd if=0075.rdf of=0075.rdf.temp ibs=16384 obs=16384 skip=36297 count=3020
読み込んだブロック数は 3020+0
書き込んだブロック数は 3020+0
cat h75 0075.rdf.temp e75 > 0075.rdf.13
2162 39317 3018
dd if=0075.rdf of=0075.rdf.temp ibs=16384 obs=16384 skip=39317 count=3018
読み込んだブロック数は 3018+0
書き込んだブロック数は 3018+0
cat h75 0075.rdf.temp e75 > 0075.rdf.14
2222 42335 3024
dd if=0075.rdf of=0075.rdf.temp ibs=16384 obs=16384 skip=42335 count=3024
読み込んだブロック数は 3024+0
書き込んだブロック数は 3024+0
cat h75 0075.rdf.temp e75 > 0075.rdf.15
2282 45359 3016
dd if=0075.rdf of=0075.rdf.temp ibs=16384 obs=16384 skip=45359 count=3016
読み込んだブロック数は 3016+0
書き込んだブロック数は 3016+0
cat h75 0075.rdf.temp e75 > 0075.rdf.16
2342 48375 3026
dd if=0075.rdf of=0075.rdf.temp ibs=16384 obs=16384 skip=48375 count=3026
読み込んだブロック数は 3026+0
書き込んだブロック数は 3026+0
cat h75 0075.rdf.temp e75 > 0075.rdf.17
2402 51401 3030
dd if=0075.rdf of=0075.rdf.temp ibs=16384 obs=16384 skip=51401 count=3030
読み込んだブロック数は 3030+0
書き込んだブロック数は 3030+0
cat h75 0075.rdf.temp e75 > 0075.rdf.18
2462 54431 3036
dd if=0075.rdf of=0075.rdf.temp ibs=16384 obs=16384 skip=54431 count=3036
読み込んだブロック数は 3036+0
書き込んだブロック数は 3036+0
cat h75 0075.rdf.temp e75 > 0075.rdf.19


*#3 Tue Nov 16 17:45:09 2010 / Tue Nov 16 17:45:09 2010

#!/usr/bin/perl
 
use warnings;
use strict;
use IO::File;
 
my ($rdf, $size) = @ARGV;
my $block = 16 * (2**10);
my @rawsize;
my @segment;
my @times;
 
#making header & ender
my $fullsize = -s $rdf;
my $fullless = $fullsize-1;
my $rdfblocks = int($fullsize/$block);
my $com;
$com = "dd if=$rdf of=h$rdf ibs=$block obs=$block count=1";
print $com, "\n", `$com`;
$com = "dd if=$rdf of=h$rdf ibs=$block obs=$block skip=$fullless count=1";
print $com, "\n", `$com`;
 
my $i = 0;
my $sizelog = IO::File->new($size, "r") or die $!;
for my $line ($sizelog->getlines){
    my @ll = split(/\s+/, $line);
    my ($bytes, $time) =($ll[4], $ll[7]);
    my $blk = int($bytes/$block);
 
    push @rawsize, $bytes;
    $bytes  = $blk*$block;
    push @times,   $time;
    push @segment, $blk;
     
    my ($skip, $count) = ($segment[-2], $segment[-1]-$segment[-2]);
    print "$time $skip $count\n";
   if($i>0){
        my $com = "dd if=$rdf of=$rdf.temp ibs=$block obs=$block skip=$skip count=$count";
        print STDERR $com, "\n", `$com`;
        $com = "cat h$rdf $rdf.temp e$rdf > $rdf.$i";
        print STDERR $com, "\n", `$com`;
    }
    ++$i;
}

*#4 Tue Nov 16 18:23:39 2010 / Tue Nov 16 19:53:53 2010


run75を1時間区切りで19分割し、それぞれのD213Aのスペクトルをならべてみた。
1-3:
./file/1289899188.ps
4-6:
./file/1289899207.ps
7-9:
./file/1289899229.ps
10-12:
./file/1289899244.ps
13-15:
./file/1289899266.ps
16-19:
./file/1289899279.ps

どうもおかしいと思ったらrun75では現象が出ていない。
./file/1289899394.ps
現象が無い、というか変動の下限の方で落ち着いた、ということか?

他のチャンネルも特に変動はなさそうだが、
実は変動してたりして。

*#5 Tue Nov 16 20:44:26 2010 / Wed Nov 17 03:16:19 2010

<dec_nbbq.fの変更>
アナライザー1の60番に次のものを割り当てた:

---dec_nbbq.f---------------------

------<中略>------
      real t1
      integer tf
      save t1, tf
 
      if(tf .ne. 12345) then
         t1 = 0
         tf = 12345
      end if
------<中略>------
         val(60,naok) = t1
------<中略>------
      t1 = t1 + 1e-6
 
      return
      end
----------------------------------

60番はほぼイベント番号のようなものになるので、
横軸に60番を使うことで時間依存性のようなものが見えることになる。
(正確には、「anapawが起動してからdec_nbbqが解析したイベントの数」)

ただし60番と実時間の線形関係は必ずしも成り立たないことに注意。
特になんらかの原因でイベントレートが変わった場合。

また、現状ではerase, clearなどではリセットされないことにも注意。
ゼロに戻すにはanapawを終了させる必要がある。

*#6 Tue Nov 16 21:13:50 2010 / Tue Nov 16 21:20:54 2010

<run66, 75の時間経過>
ともに横軸はイベントID(/1Mil.), 縦軸はアナログch.

run66:
./file/1289909564.ps
        23:00--------------------------------18:00
        11/11                                11/13
横軸が実時間に対し線形であると仮定しておおざっぱに見積もると、
11/12 14:00から11/13未明にかけてゲインが下がっていることになる。


run75:
./file/1289909766.ps



*#7 Tue Nov 16 21:46:11 2010 / Tue Nov 16 21:49:25 2010

<run66の全chのゲイン時間変化>

./file/1289911455.ps
./file/1289911468.ps
./file/1289911480.ps
./file/1289911489.ps
./file/1289911498.ps
./file/1289911508.ps
./file/1289911515.ps
./file/1289911525.ps
./file/1289911533.ps

これを見ると、おかしなことが起こっているchは実はちょいちょいある。
一部は時間帯も連動している。
また全てに共通して終わりの150万イベントくらいがおかしい。
おそらくrun75でゲインチェックを行うと全部低く出る。

*Linked from: