2026年8月18日

研究室サーバの電源ON。まずはファイルサーバから。

ファイルサーバが上がったのを確認してログインノード(NISサーバ)を立ち上げ、ログインノードが上がったあたりで計算ノード(NISクライアント)を立ち上げた。

まずはNISの確認。

またポート番号が変わっている。ポートを昔開けた861に固定。/etc/sysconfig/network に以下を追記。

YPSERV_ARGS="-p 861"

その後再起動。

sudo systemctl restart ypserv
$ rpcinfo -p localhost
   program vers proto   port  service
    100000    4   tcp    111  portmapper
    100000    3   tcp    111  portmapper
    100000    2   tcp    111  portmapper
    100000    4   udp    111  portmapper
    100000    3   udp    111  portmapper
    100000    2   udp    111  portmapper
    100004    2   udp    861  ypserv
    100004    1   udp    861  ypserv
    100004    2   tcp    861  ypserv
    100004    1   tcp    861  ypserv

861になった。これで計算サーバにもNISが通った。

なぜかyagami03が死んでいる。yagami01,02だけ復活させる。

sudo scontrol update NodeName=yagami01.appi.keio.ac.jp State=RESUME
sudo scontrol update NodeName=yagami02.appi.keio.ac.jp State=RESUME
$ sinfo -N -l
Tue Aug 18 23:45:24 2026
NODELIST                  NODES PARTITION       STATE CPUS    S:C:T MEMORY TMP_DISK WEIGHT AVAIL_FE REASON
yagami01.appi.keio.ac.jp      1     main*        idle 20     20:1:1      1        0      1   (null) none
yagami02.appi.keio.ac.jp      1     main*        idle 20     20:1:1      1        0      1   (null) none
yagami03.appi.keio.ac.jp      1     main*    drained* 20     20:1:1      1        0      1   (null) planned_power_outage

yagami01,02だけ復活。03は明日確認。

RBM論文、arxivでリプレースされたんだけど、なぜかPDFが古い。

arXiv:2509.04899

メタデータも、HTML (experimental)も更新されているが、PDFとTeX Sourceが古い。なんか変にキャッシュされてるのか?しばらく待って直ってなかったら再投稿?

昔作ったRubyスクリプトを修正しようとしたら、Rubocopがうるさいこと。特に、「関数の引数は3文字以上」という制約が厳しい。これがRuby独自なのか、いくつかの言語について調べてみた。

  • Python PEP8 lowercaseであることだけ。最低文字数の定めなし。
  • C++ — Google C++ Style Guide snake_caseとだけ定められている。
  • Java — Google Java Style Guide 引数は lowerCamelCaseであること、パブリックな関数は一文字は避けることが書いてある。
  • JavaScript — Google JavaScript Style Guide lowerCamelCaseであること、パブリックな関数は一文字は避けることが書いてある。一方、「スコープが10行以下で、exported API の引数でなければ、1文字変数名でもよい」と踏み込んだ記述がある。
  • Effective Go 探した範囲では、関数の引数に関する規定がない。公式のサンプルに一文字の引数を多数利用している。Go Wiki では、逆にlineCountよりcsliceIndexよりiを使えと、短い名前を推奨している。
  • Microsoft C# camelCaseであることが求められているが、最低文字数は定められていない。
  • Swift — Swift API Design Guidelines 引数についての明確な規定はなさそう。
  • Community Ruby Style Guide おそらく規定はない。

要するに、Rubcopが独自に厳しい。

さらに調べてみたが、RuboCop 0.53でNaming/UncommunicativeMethodArgNameが導入され、その時に既にMinNameLength: 3が指定されていた。これがNaming/MethodParameterNameに変更され、今にいたる。

直接の議論は[Fix #3666] Adds Uncommunicative MethodArg & BlockParam Naming copsかなぁ。要するに洗い出しに使って、必要ならAllowedNamesに追加していってね、という感じらしい。うーん。

LSW理論の分布関数を出力するスクリプトを整理して公開。

LSW Distribution

以前書いたノートの分布関数、3倍だけ計算が間違えている。レビュー論文を参考にしたはずなんだけどなぁ。いまBaldanのレビュー論文を読み直してみたけど、そこには書いてなかった。いずれにせよ、もういちどノートを整理してブログかどこかで公開したい。

PCの電源が壊れたのと、マウスの調子が悪いので注文。