技術の家庭菜園

https://tpcbtw.com/

再帰により制限時間を超えたスクリプトを実行する

問題点とその背景

HPCマシン、より一般的な言い方をすればスパコンクラスタと呼ばれるマシンであるが、これらはその殆どが高速なネットワークによってクラスタリングされた単体動作可能なLinuxマシンである。
さて、特に大規模なHPCマシンは1つの部署や1つの研究室が所有しているということは珍しい。多くはそのマシンを管理する専門の部署や、もしくは大学直下の研究センター、もしくは独立行政法人等が管理し、多数の利用者がそれを使うということになる。

利用者が増えれば、それだけマシンの負荷は増える。
特に広く用いられているTORQUEシステムやPBSシステムにおいては、計算ノードの資源を指定した分を排他的に使える代わりにジョブ待ちが多く発生し、また皆が作業するログインノードでは慢性的に資源不足に陥る。
これを解決するためにその管理団体は様々な対策を講じる。ログインノード自体の強化をしてくれる団体は素晴らしいが、概ねその対策というのはユーザーに対する制限である。
例えばとあるスパコンにおいては、計算ジョブの長さは例外はあるものの最大24時間とされ、ログインノードでの最大作業時間は10分未満となっている。
ジョブの長さが24時間なのはせめて許そう。そのような長い計算を投げるならば定期的にデータを書き出しリスタートが可能な状態にできるプログラムが多い。
24時間後にジョブを再投入すれば良いのだから、その問題は解決できる。

しかし、ログインノードで10分しか作業ができないのは頂けない。
ジョブの逐次実行用のスクリプトを投げても10分後には自動的にkillされてしまう。
これでは作業もままならない。困ったものである。

続きを読む

"List index out of bounds"によりNIのドライバインストールに失敗する

Native Instruments製品のドライバインストールに「List index out of bounds (2)」などと言われインストールに失敗することがある。
このエラーは過去に同種類の製品のドライバのインストールに失敗したことがある場合やVSランタイムのバージョンが古い場合などに表示される。
調べた限りではS8,S4,A2,AUDIO8など様々なデバイスで発生している。
このエラーに対するトラブルシューティングであるが、海外のフォーラムでもいろいろ言われているが、情報として全くまとまっていないので、とりあえず私の解決を述べるとともに、他の手段についても簡単にまとめる。

続きを読む

ZOOM G3X(v2.10)をMIDIコントローラーとして使う

※本稿ではG3X(v2.10)とコンピュータのその通信の解析から最終的にG3Xのデータを扱えるMIDIとして取り出すところまでを書いていく。
最終的な手順を知りたい場合は「スタートパケットの複製」の後半部から読むとよいだろう。

続きを読む

WSLからCygwin/XにX転送する

導入

WSLの公開からだいたい1年が経ち、私の今いる分野では特に急速な普及が進んでいる。
これまで仮想マシンを使ってた連中がこぞってWSLだと言っている具合だ。
生粋のCygwinユーザーの私も、ついに手を出してみたのが半年前の話である。
しかし、WSLでは通常X11は使用できない。まぁWindowsがXで動いているわけではないので当然である。
WSL上でXを動かすにはXming等を使うのが一般的である。
しかし私はCygwinユーザー、MinGWを使うのは大変屈辱なことだ。*1
いや、実際はXmingMinGWと関係は薄いらしいけど……まぁなんとなくイヤなのだ。
というわけでCygwinプロジェクトの一部であり、普段から自分も使うCygwin/Xに対しWSLからXを送りたいなと思った次第である。

*1:WSLは良いのだ。

続きを読む

AKG Y40がクソだったのでK404のドライバを移植した話

技術ブログ的なモノには昔からお世話になってきたが、ついぞ今まで書く機会は無かった。
しかし最近自分も少しは書かねばと思い始めたので、最初の記事である。最初なので、ちょっと長い記事な気がする。

続きを読む