トップ 最新 追記

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|

2008-01-06 [長年日記]

_ [雑記]スイスに到着

CERNが年末年始で閉鎖される間、日本に一時帰国していましたが、 本日スイスに戻ってきました。

今回は、フランクフルト-成田間の国際線は共同運航便で 機体は ANAの747-400でしたが、前に乗った Lufthansaの 機体より快適だった。

預け入れ荷物が約28kgなのですが、Lufthansaの規定だとエコノミーは 20kgを越えると重量超過なのですが...支払いを求められる額が 一定しないので現場の裁量で決まっている気がします。

2007/09/03の成田→フランクフルト→ジュネーブのフライト(LH711/LH3668)を Lufthansaのカウンターでチェックインしたときは、超過料金は14,600円。

2007/12/23のジュネーブ→フランクフルト→成田のフライト(LH3667/LH9790)を Swiss Airのカウンターでチェックインしたときは、超過料金は210CHF。

2008/01/06の成田→フランクフルト→ジュネーブのフライト(LH9791/LH3670)を ANAのカウンターでチェックインしたときは、そのまま通過。


2008-01-08 [長年日記]

_ [WWW]NG word追加

なんか、また SAD部屋の itsプラグインにコメントスパムのテストをしている 連中が居るみたいなので、NG word listを更新... Orz


2008-01-09 [長年日記]

_ [tDiary]2.2.0へアップデート

subversionのベンダーブランチに 2.2.0を取り込んで、 さくっと 2.2.0へアップデート


2008-01-16 [長年日記]

_ [雑記]住むところ

スイスでの住所がやっと決まった...

どうやら、大家が部屋を複数持っていて、広告に有った方は既に借り手が 付いていたが別の部屋が空くことになったそうな...

_ [WWW]NG word検索

この前、SAD部屋のコメントSPAM対策に登録した NG wordを いまだに投げてくるようなので、googleしてみたら Hiki以外にもさまざまな掲示板に同じメッセージが...

どうやら、投稿可能な掲示板を探す BOTのようです Orz

こんなもの開発するくらいなら、もっと役に立つもの開発してくれ(w

本日のツッコミ(全1件) [ツッコミを入れる]

_ 管理人A [コントロール棟会議室のiMacが立ち上がらなくなってしまったので、中をあけてみたら電解コンデンサが5個パンクしていま..]


2008-01-17 [長年日記]

_ [雑記]iMacの寿命

iMacコンデンサ破裂 の話だが、KEKBだと24時間稼働がデフォルトになっていますが、 iMacを普通のオフィス製品だと考えた場合、1日平均8時間稼働かつ週末停止を 仮定して換算すると7年相当ぐらい...まあ製品寿命設計的には妥当と 言えなくもないが、コンデンサ破裂は明らかに部品不良若しくは回路設計設計 不良ですよね...

追記(2008/02/13)

リコール対象ってことは、やはり不良コンデンサっぽいですねぇ

本日のツッコミ(全2件) [ツッコミを入れる]

_ 管理人 [そう言われてしまうと、修理に出しても仕方ないかな。Tさんにも、電解コンデンサは85℃で1000時間程度だから、筐体内..]

_ 管理人さん [その後リコール製品であることが判明。 リコール期限ギリギリで何とかマザーボードと電源が交換されて返ってくる。 買った..]


2008-01-18 [長年日記]

_ [SAD]Random[] family入れ換え

Random[] familyを RandomMT extension moduleベースのものに入れ換え

ただし、TRACKモジュール等で使われている iseed, tran(), tgauss()系は 既存のままなので、これらの疑似乱数列は SEED, \$SEED変数で制御される 点に注意

_ [SAD]SeekFile[]サポート with GCC4.3.0

gfortranで不足している fseek intrinsicが、GCC 4.3.0から 実装されているので、SeekFile[]を復活させてみました。

g77だと、fseekは引数3個の整数を返す関数(fseek -> fseek_)なのだが gfortranだと 引数4個のサブルーチン(fseek -> _gfortran_fseek_sub) だったりするので、Fortranでの名前空間の衝突を避けつつ fseek_を 提供するために Fortran + Cの二段構えのラッパーになりました

まあ、使っているって話は聞かないけど、動かない機能があるのは 気持ち悪いので...


2008-01-20 [長年日記]

_ [雑記]噴水にかかる虹

天気が良いので、午後からレマン湖へ散歩に出かける。 傾き始めた太陽の光が、噴水の水飛沫に当たって虹が見えました。

title0

_ [雑記]検札遭遇

日曜日にレマン湖へ散歩にいった帰りのバス(CornavinからNo.3)で 検札に遭遇(本年初&通算2回目)

今回は、反則金とられた乗客が3名ほどいた模様


2008-01-21 [長年日記]

_ [SAD]iseed追放大作戦

SAD本体での 大域変数iseed/gcutの参照を局所化する。(tgauss.fへ閉じ込める)

まずは、tran() @ src/tgauss.f相当のインライン展開を関数呼び出しに 置換する。

他にやるべき作業は...

  1. gcut変数へのアクセス関数 tgetgcutを定義して gcutへの参照を隠蔽
  2. iseedの退避復元コードの撤去

2008-01-22 [長年日記]

_ [SAD]iseedまわりの作業

継続中

  1. gcut関連のコードをtsetgcut()/tgetgcut()でアクセスを隠蔽
  2. tgauss()の内部状態リセットコードを call pgclrに置き換え
  3. src/pgclr.fを src/tgauss.fへ吸収
  4. inline展開されている tran()相当コードを tran()に置き換え

残っている iseed関連コード

  1. FIXSEEDオプションによる iseedの退避/復元コード
  2. src/tffsa.f内の SEED操作コマンド
  3. src/track.fでの SEED変数からのiseed設定/格納コード

また、\$SEED関係のコードはコモンブロックの iseed変数とは 一切関係ない独立した疑似乱数発生器になっていることが判った。 (アルゴリズムは tran()と同じだけど...)


2008-01-23 [長年日記]

_ [雑記]エアメール

日本発の普通のエアメールが届く

2008/01/16受け付けで 2008/01/23到着、ざっと1週間ですね

_ [SAD]疑似乱数発生器の残り作業

  • tran(), tgauss()の呼び出し元の確認
  • PUSHSEED/POPSEED/EXCGSEED/PEEKSEEDコマンド(iseedを裏スタックにpush/pop/exchange/peek)
  • SEEDコマンド(iseedを設定する/シンボルコンフリクトで死亡中)

基本方針は、

  • SEEDコマンドは捨て捨て
  • PUSHSEED/POPSEED/EXCGSEED/PEEKSEEDコマンドは、必要ならtfevalb()で実装
  • SEED変数は、廃止の方向

残るは、FIXSEEDスイッチの扱いをどうするかかな?

_ [LHC]IP Coupling/Dispersion Knob

LHCのIP Coupling/Dispersion Knobを作らんかという話がまわってきたので、 使えそうな Skew Quad成分を探して Latticeを漁る。

Skew Quad自身は、global correction用らしきものが 各アーク部の中程に4台あるが、各IP個別に knobを作るには 少な過ぎる...

やはり、Sextupole Bumpしかないかな... LHCの sextupoleは -I cellに入ってないから Bump立てるのが 面堂そう Orz


2008-01-24 [長年日記]

_ [LHC]LINX/LINYファイル対応

Closed Orbitベースのβ/φ解析コードの入力ファイルのフォーマット変更 リクエストが出て来た。当初は、TFSで有れば良い的な話だったのだが... 他のコードで使ってるフォーマットを読めるようにしろとのこと

可能/不可能で言えば、入力部の改修だけなので可能だけど、最初から 共通フォーマット化する気があるなら最初からそういう提案をして 欲しいものである。

LINX/LINYファイルって、ファイル名にメタ情報を含んでるのは 個人的にはいけてない気がする。(解析ルーチンにfile descriper渡しとか 無茶なことができないじゃんw)

_ [LHC]IP Knob

Sextupole Vertical Bumpを使った IP Knobの quick hackな実装を作る

local bump 144個、操作対象 R1-4/EY/EPY x 8IPで 48パラメータ

本日のツッコミ(全1件) [ツッコミを入れる]

_ 影達 [これからしばらくはLHC帝国の時代。ところでコミッショニングはいつごろからでしょうか? ホントのとこをよろしくお願い..]


2008-01-25 [長年日記]

_ [LHC]LHCのコミッショニングのスケジュール

LHCのコミッショニングは 何時始まるのか...私も知りたい(w

3月に、前に壊れた Triplet Qの試験が有るらしいので、 それで問題が出ると間違えなく延期だと思う。 あと、グループリーダーレベルでの話題に 秋死守(各国の偉い人を招いた LHCの完成記念式典があるらしい)という話が出ているとの噂を聞きましたが 真相は不明。 噂が事実なら予定よりも遅れる可能性が出てきているということでは?

_ [SAD]疑似乱数発生器の置き換え

長らく作業してきた、疑似乱数発生器の交換作業も大詰めです。 FFSコマンドで実装されてる iseed操作機能ですが、 nistack()で実装している iseedを蓄えるスタックを SeedRandom[]を使って Packages/NISTACK.nへ全ての疑似乱数発生器プラグインで使える形に 再実装した上で、

  1. SEEDコマンド ->廃止(SEED変数とのシンボル衝突で機能していませんし)
  2. PUSHSEED/POPSEED/EXCGSEED/PEEKSEEDコマンドは、Packages/NISTACK.nをtfevalb()で呼び出して実装
  3. FIXSEEDスイッチは、Packages/NISTACK.nをtfevalb()で呼び出して実装
  4. src/tgauss.fの関数は、random_* APIを用いて src/tgauss_.cへ再実装
  5. SEED変数は、定義はそのまま残すが参照しない
  6. \$SEED変数と関連する線形合同法ルーチンはそのまま残留

という形になりました(Rev.1325)

_ [SAD]疑似乱数発生器の動作確認

載替えた疑似乱数器の動作確認が一番面倒な気がする...

tran(),tgauss()の呼び出し置き換えが正しいかどうか、 どうやってテストするべきか...


2008-01-26 [長年日記]

_ [Admin]鯖リブート

年末にカーネルを RELENG_7に移行したが、相変わらずフリーズすることが 有るようです。Y氏に依頼して再起動してもらう。

フリーズしたとき、ssh経由で GNU screenに繋いでいたのだが、 GNU screenの detachが出来たが shell promptに戻らない。 つまり、ssh的には通信チャンネルが維持されている。 また、ICMP ECHO REQUESTへ返事を返すが、sshのコネクションが 成立しないのは前と同じ。

なんか、端末制御かプロセス制御周りで問題が発生している模様...


2008-01-28 [長年日記]

_ [SAD]Random/Framework, Date/TAIバックポート

CVS MAIN trunkに random_* API周りと DateTAI extension moduleをバックポート完了

Random[]の入れ換えと iseed追い出しのバックポートは、 もう少しコードの改修とテストをしてから... 特に、大量に疑似乱数を使うときは arrayで生成させないと 性能が出ないはずですし...

iseed版はインライン展開だったのでそこそこの性能が出るはずですが、 random_* APIは plugin関数を呼び出すので個別に生成すると 関数呼び出しのオーバーヘッドが無視できない... Orz

最速を目指すなら、呼び出し元を Cで書いて random_* APIの生成系APIを マクロ展開にした上で、Random Plugin ABI変更して framework側に 疑似乱数列のバッファーを持たせるべきかも(マルチコア環境では、 さらにダブルバッファー化して feeder threadを置いてバックグラウンドで 疑似乱数列を生成するとか...)

_ [LHC]LINX/Yファイルサポート

実装してみるが、もらったLINX/Yファイルの TFSパースに失敗するので 入力ファイルに手を入れて動作を確認する。

どうやら、TFSパーサーがエラーになるのは貰ったLINX/Yファイル上での TFSフォーマットの出現順序が異なるからのようだが...

TFSフォーマットの正式な仕様をもらっていない(求めたけど簡単だから 口頭で説明すると言われて仕様書が出てこない)、フォーマットの 説明には出現順序の自由度に関するものが無かった上に、MADXの 出力をリファレンスにしろと言われたので、読めない件に関しては 仕様と言うことにする。

文句が有るなら、TFSの正式な仕様書を書いてもらうことにしよう(w


2008-01-30 [長年日記]

_ [SAD]1.0.10.2.2b1から1.0.10.2.2b2に異義を唱えてみる

まず、version番号だが、前置単項演算子として実装されて来た ~演算子を、中置演算子としても作用可能にする仕様変更を 含んでいるので、major versionを変えるべきだと思う。

また、~を中置演算子として使った構文、a~bは 関数表現ではNot[a,b]と解釈され構文エラーとされるのは 個人的には謎仕様だと思う。

掲示板 にある conststentの意味するところは、

 In[1]:= Not[a,b]
???General::narg:  Number of arguments is expected 1 in (a~b)
Out[1]:= (a~b)

に対する整合性だと思うのだが、整合性問題の本質は関数型で記述した 入力に対してエラーメッセージを表示する際に入力した構文 そのものではなく中置演算子表示に勝手に変換する インタープリター実装の問題と思われる。 原因は、構文解析器が吐き出す構文木に元の表現形(関数 or 演算子)が 記録されないためだが、ユーザーに何処で構文エラーが発生しているかを 正しく伝えるためには構文上意味を持たない空白文字を省略するならまだしも、 意味論的に同じだからと言って構文要素として異なる表現形で提示するのは あまり正しいとは思えない。

他の構文糖(syntax sugar)としての中置演算子表現を持つ関数でも同様の 表示上の問題を抱えている。さらに言えば、関数表現では単一の引数を 認めているが、対応する演算子に単項演算子が存在しない場合は 以下に示すように引数の数が変わった際の表示に一貫性が無い。

 In[1]:= Plus[a]
Out[1]:= Plus[a]
 In[2]:= Plus[a,b]
Out[2]:= (a+b)
 In[3]:= Plus[a,b,c]
Out[3]:= (a+b+c)
 In[4]:= Alternatives[a]
Out[4]:= Alternatives[a]
 In[5]:= Alternatives[a,b]
Out[5]:= (a|b)
 In[6]:= Alternatives[a,b,c]
Out[6]:= (a|b|c)

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