ToDo:
Google CPU Profilerによる測定結果
Total: 68153 samples 22354 32.8% 32.8% 22354 32.8% tdrift_ 4828 7.1% 39.9% 4828 7.1% tquad_ 4801 7.0% 46.9% 4801 7.0% tsteer_ 4315 6.3% 53.3% 4315 6.3% ttfrin_ 4228 6.2% 59.5% 4228 6.2% tsolqu_ 4011 5.9% 65.3% 4011 5.9% tmulti_ 2267 3.3% 68.7% 2267 3.3% tbend_ 1745 2.6% 71.2% 1749 2.6% tturn1_ 1353 2.0% 73.2% 1353 2.0% fintrb_ 831 1.2% 74.4% 831 1.2% tmulbs_ 766 1.1% 75.6% 766 1.1% tthin_ 729 1.1% 76.6% 729 1.1% 0x000000020112dee6 679 1.0% 77.6% 679 1.0% xsin_ 635 0.9% 78.6% 635 0.9% touckf_ 595 0.9% 79.4% 595 0.9% spdrift_ 500 0.7% 80.2% 500 0.7% tsfrin_ 395 0.6% 80.7% 395 0.6% tmultr5_ 303 0.4% 81.2% 303 0.4% spkick_ 302 0.4% 81.6% 302 0.4% tbende_ 287 0.4% 82.1% 287 0.4% bint_ 256 0.4% 82.4% 256 0.4% tintrb_ 238 0.3% 82.8% 238 0.3% 0x000000020112c1fc 197 0.3% 83.1% 197 0.3% tsteee_ 168 0.2% 83.3% 168 0.2% tcav_ 153 0.2% 83.5% 1307 1.9% _init 140 0.2% 83.7% 140 0.2% ttfrins_
tdrift(ドリフトスペース)がCPU時間の1/3を占めている
afsad1上で 2010/5/31一日分をSAD形式で読み出してみた。(ストア先は、NFSな home directory)
Group | real | user | sys | size(MiB) |
---|---|---|---|---|
BM/BCM | 6.26 | 5.29 | 0.38 | 198 |
BM/BLM | 71.77 | 64.33 | 4.21 | 2012 |
BM/BMOthers | 6.15 | 5.57 | 0.40 | 201 |
BM/BPMHER | 40.65 | 36.01 | 3.14 | 1580 |
BM/BPMLER | 42.66 | 36.90 | 3.39 | 1602 |
BM/BPMVol | 89.24 | 80.04 | 5.03 | 2482 |
BM/DCCT | 2.71 | 2.40 | 0.16 | 90 |
BM/OctoPos | 2.28 | 1.99 | 0.20 | 86 |
BM/SRM | 180.12 | 160.39 | 11.55 | 5024 |
BT/BTBPM | 3.14 | 2.51 | 0.26 | 108 |
BT/BTMagnets | 4.72 | 3.74 | 0.34 | 138 |
BT/CC | 0.53 | 0.48 | 0.03 | 18 |
CO/Abort | 0.02 | 0.00 | 0.00 | 1 |
CO/Env | 8.03 | 6.55 | 0.61 | 255 |
FB/FBTemp | 1.89 | 1.57 | 0.09 | 53 |
FB/Tune | 2.67 | 2.30 | 0.08 | 82 |
LI/Linac | 0.01 | 0.00 | 0.00 | 0 |
LI/LinacBM | 0.11 | 0.10 | 0.00 | 0 |
LI/LinacMG | 4.59 | 3.56 | 0.37 | 145 |
LI/LinacMisc | 1.76 | 1.44 | 0.19 | 65 |
LI/LinacRF | 6.96 | 5.73 | 0.53 | 207 |
LI/LinacRT | 12.64 | 9.41 | 0.92 | 409 |
LI/LinacVA | 3.93 | 2.59 | 0.36 | 112 |
MG/HERMagnets | 19.81 | 13.08 | 1.14 | 485 |
MG/LERMagnets | 22.53 | 15.69 | 1.30 | 538 |
MG/LERSMagnets | 11.26 | 7.97 | 1.02 | 315 |
MG/MGOthers | 6.88 | 4.89 | 0.56 | 191 |
Misc/Base | 0.72 | 0.62 | 0.06 | 21 |
Misc/KCG | 0.51 | 0.43 | 0.02 | 16 |
Misc/Misc | 42.31 | 28.94 | 4.06 | 1215 |
PY/Physics | 1.52 | 1.31 | 0.07 | 44 |
RF/AnalogData | 86.28 | 62.85 | 5.73 | 2284 |
RF/BinaryData | 0.45 | 0.29 | 0.02 | 8 |
RF/RFOthers | 0.30 | 0.24 | 0.02 | 8 |
VA/CCG | 21.16 | 15.02 | 1.37 | 666 |
VA/IPump | 3.74 | 3.01 | 0.28 | 123 |
VA/Mask | 1.06 | 0.91 | 0.07 | 31 |
VA/VAFlow | 11.64 | 8.63 | 0.64 | 355 |
VA/VAOthers | 1.14 | 0.90 | 0.08 | 31 |
VA/VATemp | 28.70 | 20.36 | 2.01 | 877 |
SAD形式(SAD EPOCHな時刻タグ+レコード名+データ列)だと格納効率はかなり 低く、5月31日分だけで22GiBの領域を必要とする
tfgeoによるpos/gammab/geo配列の構成は、tfgeo1による計算直後は、物理並びであるが、tfgeoがMARKer要素に関しては、OFFSET参照先の値を計算してpos/geoを更新しているが、gammabは明示的に更新していないので、tfgeoの設計意図的にはgammab配列上のMARKer要素の値は一つ前の物理element出口の値を保持している状態を意図しているものと思われる
しかし、fractionalなgeometryを計算するtfgeo1の読み出しで、再計算の対象となったelement出口側のgammabは作業領域として使われたあと復元されていない また、MARKerからのoffset計算に置いて、再帰的なMARKer列が考慮されていない (qcell1やtturneでは、tffselmoffsetによる再帰検索が行われている)
また、*frac関数系の動作としては、有限のfracional lengthかつqfraccompが偽(長さの更新が光学系を変更しない)場合、次の要素の値を返している
従って、MARKer要素の有限fractinal positionは、次のelementを指すことになる
他のTypeはすべて偽となる
例えば、
本質的に局所的に不連続な写像を含むSOL, COORD, APERTに関しては厚みが無いものとして扱うほかないと思われる
BEAMBEAMに対しては意味づけの議論が必要
MAPに関しては、非物理的な任意写像を含むので、一般に分割を定義するのは困難と思われる
一方、進行方向に広がった磁場分布をモデル化するUND, WIG, INS, PROTには中点を意味づけ可能
例えば、PROTは、逆写像が存在すればMatrixLog/Expベースで定義可能と思われる
カテゴリー: Admin | Emacs | EPICS | Fortran | FreeBSD | GCC | hgsubversion | IPv6 | KEKB | LHC | Lisp | LLVM | MADX | Ryzen | SAD | samba | tDiary | unix | WWW | YaSAI | お仕事 | イベント | 出張 | 宴会 | 数学 | 艦これ | 買いもの | 追記 | 雑記
_ Y氏 [I田さんが大ボケかましたから(笑)]
_ M [坊やだからさ]