ToDo:
機能毎のSADScript関数の切り離しを行うために汎用で参照される関数を 分離する必要がある
取り合えず、現時点で判明している範囲は次のとおり
作業方針
多分、src/sim/unix_env_.cの中身も src/utils.cと同じく Fortranコードへのユーティリティー類なのでマージすべきかな?
変換精度が出ないエレメントをEmittance[]からtransfer matrixを切り出して matrixで埋め込む作業を始めたのだが、絶賛嵌まり中
SOL内部でSOL/MULT/SOL/MULT/...なチェーンが組んであるとき、 SOLは厚みが無いので、次のMULTの入り口と同じ状態にないと いけないはずだが、Emittance[]から切り出した ClosedOrbitとTransferMatricesは、一つ前のMULTの入り口と同じ値に見える。 多分、SOL内部の計算がtturneからtsoleへ移譲されているが、 演算結果の格納形態が完全互換になっていないように思える。 こいつは、ソースコードを要確認。
取り合えず、次のエレメントを探すコードをハックしてSOL内のMULTを matrixへ展開してみたのだが...結果が全然違う Orz
何が起こっているのだろう?
取り合えず、次の課題は...
Note PCを 7-STABLEから 8.0-BETA3へアップデートしたのだが、 無線LANデバイスの使い方が変更されていて、なぜ繋がらないのか 暫く悩んだ Orz
あと、カーネルインターフェースまわりの変更が原因だと思われるが、 7-STABLEで作ったhaldが100%負荷で走りっぱなしになる。 UPなシステムでは要注意
atapicam付きのカーネルで起動した際に、camデバイスのprobe/attach辺りで panicするようで...壊れてるのかな Orz
# kldload atapicam.ko Fatal double fault: eip = 0xc0485b69 esp = 0xd6377e04 ebp = 0xd6378284 cpuid = 0; apic id = 00 panic: double fault cpuid = 0 KDB: stack backtrace: db_trace_self_wrapper(c3565b40,0,0,0,c0bed7b0,...) at db_trace_self_wrapper+0x24 panic(c0b0443c,c0b0442c,0,0,0,...) at panic+0xfe dblfault_handler() at syscall --- trap 0x17, eip = 0xc0485b69, esp = 0xd6377e04, ebp = 0xd6378284 --- scsi_action(c359a000,c35cde80,c3591000,c35910a0,33da86ce,...) at scsi_action+0x9c5 probestart(c35cde80,c359a000,c359a000,c369c780,c369c740,...) at probestart+0x1589 xpt_schedule(c35cde80,5,1,c3412000,1,...) at xpt_schedule+0x1f2 proberegister(c35cde80,c3412000,c3412000,0,c0acbbe2,...) at proberegister+0x19a cam_periph_alloc(c04836fb,0,c04836e4,c04866c0,c0acbbe2,0,c3570390,0,0,c3412000) at cam_periph_alloc+0x452 scsi_action(c3412000,c3412000,c3570390,5) at scsi_action+0x991 scsi_action(c3574000,c35702d0,5,ffffffff,ffffffff,...) at scsi_action+0x7ce reinit_bus(d6379988,0,2,ffffffff,ffffffff,...) at reinit_bus+0x1c5 atapi_cam_attach(c35cdd80,d63799d4,c075b8d5,c0b93ca4,c35cdd80,...) at atapi_cam_attach+0x21e device_attach(c35cdd80,c33b5c80,c361a0dc,d6379a20,c075bfd1,...) at device_attach+0x241 bus_generic_driver_added(c33b5c80) at bus_generic_driver_added+0x14f driver_module_handler(c356ce80,0,c361a0c4,c0b93270,c0ad0fc8,7b) at driver_module_handler+0x18c module_register_init(c361a0ac,c3487aec,c3565b40,c3591800,c33dbd00,...) at module_register_init+0x8c kldload(c3565b40) at kldload+0x1519 syscall(d6379d38) at syscall+0x265 Xint0x80_syscall() at Xint0x80_syscall+0x20 --- syscall (304, FreeBSD ELF32, kldload), eip = 0x33ccbf9b, esp = 0xbfbfecdc, ebp = 0xbfbfed08 --- Uptime: 6m27s Physical memory: 499 MB Dumping 37 MB: 22 6
ここ1週間ぐらい作業しているKEKBLogの読み出し系の更新作業が一段落
但し、kblogrdd通信プロトコルが変更となるため、どこかでタイミングを合わせて入れ替える必要あり
Ryzen 7000が 9/27に解禁になるが、M-ATXマザーの選択子の無さが… Orz
今のところ、ASUSしかないが、拡張スロット構成が x16 + x1なので、GPU + 25/10Gbps NICな構成を考えると絶望しかない
公開されている写真を見る限り x1側は、エッジフリーだが、マザーボードカバーのデザイン的に x16のカードが挿せるか微妙に見える… (エッジフリーにしている以上、カバーが一部外れる等の対応を期待したいが)
25Gbps NIC(ConnectX 4)などを考えると Gen4 x1は帯域不足なので、NICが x16側を消費する構成しか考えらない
M.2 x4を一つ犠牲にして x4スロットを一つ増やして欲しいところである
どうやら1PPSロック時の安定度は、GPS受信機依存性よりもホスト依存性が高いようなので、手持ちの機材で調べてみた
Host | pps jitter | PLL offset | PLL freq |
Ryzen 7950X + B650 | 119μsec min | 600μsec p-p | 2ppm p-p |
Ryzen TR2950X + X399 | 210μsec min | 140μsec p-p | 3ppm p-p |
Ryzen 5950X + X570 | 1μsec min | 190μsec p-p (20μsec p-p w/o spike) *1 | 1ppm p-p (0.1ppm p-p w/o spike) |
Interl N305 | 6μsec min | 110μsec p-p (40μsec p-p w/o spike) | 0.5ppm p-p |
RaspberryPi4 | 12μsec min | 97μsec p-p | 0.7ppm p-p |
(*1) 概30分周期の明確なスパイクが観測される
変なスパイクが出なければ、Ryzen 5950Xの圧勝なのですが、実用上は Intel N305とかRaspberry Pi4などの小型マシンが優位の模様
ほぼ同一構成での比較 (厳密には、CPUクーラー構成が異なる)
buildworld + buildkernelのlaptime
CPU | Tidle | Load | Laptime | Tload | 備考 |
9950X | 40.2℃ | -j32 | 506sec | 86.1℃ | 32T動作 |
9950X | 40.2℃ | -j32 | 600sec | 86.2℃ | 16C固定 |
9950X | 40.1℃ | -j16 | 598sec | 87.0℃ | 16C固定 |
9950X | 40.1℃ | -j16 | 624sec | 86.6℃ | |
7950X | 39.1℃ | -j32 | 590sec | 86.1℃ | 32T動作 |
7950X | 39.1℃ | -j32 | 698sec | 86.6℃ | 16C固定 |
7950X | 39.1℃ | -j16 | 695sec | 86.6℃ | 16C固定 |
7950X | 39.1℃ | -j16 | 730sec | 86.2℃ |
カテゴリー: Admin | Emacs | EPICS | Fortran | FreeBSD | GCC | hgsubversion | IPv6 | KEKB | LHC | Lisp | LLVM | MADX | Ryzen | SAD | samba | tDiary | unix | WWW | YaSAI | お仕事 | イベント | 出張 | 宴会 | 数学 | 艦これ | 買いもの | 追記 | 雑記