トップ «前の日(08-05) 最新 次の日(08-07)» 追記

Orz日記 by Akio Morita

ToDo:

  • 15 SAD Fit[]回りの障害事例の解析
  • 10 smart pointer版PEGクラスの再実装(Left Recursionまわり)
2006|03|04|05|06|07|08|09|10|11|12|
2007|01|02|03|04|06|09|10|11|12|
2008|01|02|03|04|05|06|07|08|09|10|11|12|
2009|01|02|03|04|05|06|07|08|09|10|11|12|
2010|01|02|03|04|05|06|07|08|09|10|11|12|
2011|01|02|03|04|05|06|07|08|09|10|11|12|
2012|01|02|03|04|05|07|08|09|10|11|12|
2013|01|03|04|05|06|07|08|09|10|11|12|
2014|01|02|03|04|05|06|07|08|09|10|11|12|
2015|01|02|03|04|06|07|08|10|12|
2016|01|02|03|05|06|08|10|11|
2017|01|02|03|04|05|06|07|09|10|11|12|
2018|01|02|03|04|06|07|08|09|10|11|12|
2019|01|03|04|05|07|08|09|10|11|12|
2020|01|02|03|04|05|06|07|08|09|10|11|12|
2021|01|02|03|04|05|06|07|08|09|10|11|12|
2022|01|02|03|04|05|06|07|08|09|10|11|12|
2023|01|02|03|04|05|06|07|08|09|10|11|12|
2024|01|02|03|04|05|06|07|08|09|10|11|

2010-08-06

_ [SAD]INTRA EMITのバグ探し

誤差付きOpticsをINTRA EMITすると BINTが NaNを出して まともに動かない件を昨日から真面目に調べていて分かったこと

  • bint()に渡される被非積分関数が、積分領域の端でNaNを返す
    • 改良前の台形公式による積分値がNaNなので、bint()内の収束判定が必ず失敗する
    • 被積分関数のパラメータに問題が有り、関数の値が純虚数になる領域がある

というわけで、呼出側(tintrb)での前後関係を洗ってゆくと、NaNが発生する 前の計算で、3x3行列の固有値がおかしいことが発覚。 周辺のコードから、固有値は正定値であることが期待されているのに、 零や負の値が帰ってきている。

固有値分解関数eigs33()へ与えている行列と帰ってきた固有値を 正常時と異常時で比較してゆくと、一番小さい固有値が失われているのが 直接の原因と判明。

内部の2x2部分行列の固有値分解で桁落ちしている部分を修正したら、 多少マシになったが、完治していない。

多分、対角化操作で行列を回転する際に桁落ち or 情報落ちしているものと 思われる。対処法としては、

  1. ピポッド選択等のアルゴリズムを改良する
  2. 4倍 or 8倍精度実数を使う
  3. Error Free Transformationで行列操作を実装する

3x3行列なので、(1)はあまり余地は無いかもしれない。 (2)は、Fortran標準では実装必須にはなっていないので、 動作がコンパイラ依存になるのが難。 (3)は、実装が面倒くさいのが難。C++とかだと class化すれば 表面上のコードは綺麗にかけるけど、FortranからC++を呼び出すのは 木に竹を継ぐような話だから避けたい所である。


2014-08-06

_ [雑記]ECC Chipkillが作動している orz

ECCが役立ってる! まだ動いてるけど、メンテナンスが必要だよね... テスト中の新鯖筐体を前倒しで投入か?

MCE 0
CPU 0 4 northbridge TSC 369bda1dc841b [at 3214 Mhz 3 days 11:1:15 uptime (unreliable)]
ADDR c9a23a50
  Northbridge RAM Chipkill ECC error
  Chipkill ECC syndrome = 8
       bit46 = corrected ecc error
       bit62 = error overflow (multiple errors)
  bus error 'local node response, request didn't time out
             generic read mem transaction
             memory access, level generic'
STATUS d404400000080a13 MCGSTATUS 0
MCGCAP 106 APICID 0 SOCKETID 0
CPUID Vendor AMD Family 16 Model 10

MCE 1
CPU 0 4 northbridge TSC 4affe0da89b2e [at 3214 Mhz 4 days 18:1:14 uptime (unreliable)]
ADDR 1d8587c30
  Northbridge RAM Chipkill ECC error
  Chipkill ECC syndrome = 8
       bit46 = corrected ecc error
       bit62 = error overflow (multiple errors)
  bus error 'local node origin, request didn't time out
             generic read mem transaction
             memory access, level generic'
STATUS d404400000080813 MCGSTATUS 0
MCGCAP 106 APICID 0 SOCKETID 0
CPUID Vendor AMD Family 16 Model 10

カテゴリー: Admin | Emacs | EPICS | Fortran | FreeBSD | GCC | hgsubversion | IPv6 | KEKB | LHC | Lisp | LLVM | MADX | Ryzen | SAD | samba | tDiary | unix | WWW | YaSAI | お仕事 | イベント | 出張 | 宴会 | 数学 | 艦これ | 買いもの | 追記 | 雑記