Outrun
気になる Hacker news 2021-03-19
https://www.daemonology.net/hn-daily/ からの気になったニュース
Outrun
今日の気になったニュースは Outrun
こちらも 知らなかった ツールですが 外部の Linux マシン上でローカルのコマンドを実行できるツールのようです。
Outrun lets you execute a local command using the processing power of another Linux machine.
特徴
- 相手のマシンにコマンドをインストールする必要なし。
- 通常の方法でローカルファイルやパスを参照可能。
- Ubuntu と Alpine のように、全く異なる Linux ディストリビューションでも動作。
という特徴がある。
必要なもの
Python 3.7, RUSE 3.x Library
サンプルで記載されているのは ffmpeg の例
通常
ffmpeg -i input.mp4 -vcodec libx265 -crf 28 output.mp4
と実行するものを
outrun user@host ffmpeg -i input.mp4 -vcodec libx265 -crf 28 output.mp4
と outrun を使って実行する
Limitations も記載されている。
There are a couple of things to keep in mind while using outrun:
- File system performance remains a bottleneck, so the most suitable workloads are computationally constrained tasks like ray tracing and video encoding. Using outrun for something like git status works, but is not recommended.
- Since the software to be executed is copied from your own machine to the remote machine, it must be binary compatible. It’s not possible to set up a session from an x86 machine to an ARM machine, for example.
- The command will use the network and date/time of the remote machine.
If you want to access local endpoints, then they must be explicitly forwarded by using the SSH flags parameter to set up remote forwarding.
- ファイルシステムのパフォーマンスは依然としてボトルネックとなっているため、レイトレーシングやビデオエンコーディングのような 計算量に制約のあるタスクが最適なワークロード となります。git status のようなものに outrun を使用することは可能ですが、お勧めできません。
- 実行されるソフトウェアは自分のマシンからリモートマシンにコピーされるので、バイナリ互換性 がなければなりません。例えば、x86 マシンから ARM マシンへのセッションを設定することはできません。
- コマンドには、リモートマシンのネットワークと日時が使用されます。ローカルのエンドポイントにアクセスしたい場合は、SSH フラグパラメータを使ってリモート転送を設定することで、明示的に転送する必要があります。