私の質問は少し技術的です。
特別な理由から、mpiexecの後にvimを呼び出す必要があります。
例:
mpiexec -n 1 vim mytext.txt
ただし、これは次の警告メッセージを提供します。
Vim: Warning: Output is not to a terminal
Vim: Warning: Input is not from a terminal
その後、vimが不自然に動作し、入力コマンドがエディタでうまく解釈されず、操作が私がやっているのと同じくらい簡単ではありません。
vim mytext.txt
mpiexecの後にvimを使用できるように、入力/出力を起動端末に正しくリダイレクトする方法についてのアイデアはありますか?
実際、最終的な目標は、特定のプロセスの並列デバッグに gdb を使用し、gdb 内の vim エディタを使用して機能を編集することです。
例:
mpiexec -s 1 myprog : gdb myprog
したがって、両方のプロセスで "myprog"プログラムを起動し、2番目のプロセス(proc 1など)でgdbを使用し、stdinをproc 1にリダイレクトします(-s 1 [mpiexec -helpを参照]のおかげで)。
ただし、gdbでvimエディタを使用して関数を編集したい場合は、同じ問題に直面しています。
Vim: Warning: Output is not to a terminal
Vim: Warning: Input is not from a terminal
簡単な解決策はxtermウィンドウを起動することですが、このアプローチは避けたいと思います。
mpiexec myprog : xterm -e gdb myprog
ご協力ありがとうございます。
これは私のLinuxディストリビューションです。
NAME="CentOS Linux"
VERSION="7 (Core)"
ID="centos"
ID_LIKE="rhel fedora"
VERSION_ID="7"
PRETTY_NAME="CentOS Linux 7 (Core)"
ANSI_COLOR="0;31"
CPE_NAME="cpe:/o:centos:centos:7"
HOME_URL="https://www.centos.org/"
BUG_REPORT_URL="https://bugs.centos.org/"
CENTOS_MANTISBT_PROJECT="CentOS-7"
CENTOS_MANTISBT_PROJECT_VERSION="7"
REDHAT_SUPPORT_PRODUCT="centos"
REDHAT_SUPPORT_PRODUCT_VERSION="7"
ベストアンサー1
mpiexec
SSHを介してパラメータプロセスを開始すると、入力と出力は実際には端末に接続されなくなります。あなたが望むのはこのトリックです:
mpiexec -n 4 xterm -e gdb yourprogram