prism
prism copied to clipboard
macOSでmpprismを実行した時、linuxと異なるエラーが出る。
ubuntuでprism_mp_linux.bin、macOSでprism_mp_darwin.binをビルドした後、mpprismを実行した時、ほぼ同様のテキストがターミナルに出力されるが、macOSでは加えて
*** Error: getline(): not interactive, use stdio.
というエラーが出力される。
ubuntuでの出力テキストの抜粋
PRISM 2.3, (C) Sato Lab, Tokyo Institute of Technology, August, 2017
B-Prolog Version 7.8b1, All rights reserved, (C) Afany Software 1994-2012.
This edition of B-Prolog is for evaluation, learning, and non-profit
research purposes only, and a license is needed for any other uses.
Please visit http://www.probp.com/license.htm for the detail.
*** PRISM ERROR: batch file not specified
Aborted by exception -- errorThe system is aborted by Rank #1.
The system is aborted by Rank #2.
The system is aborted by Rank #3.
(existence_error(prism_file,unknown),$pp_batch/1)
The system is aborted by Rank #0.
--------------------------------------------------------------------------
MPI_ABORT was invoked on rank 2 in communicator MPI_COMM_WORLD
with errorcode 1.
NOTE: invoking MPI_ABORT causes Open MPI to kill all MPI processes.
You may or may not see output from other processes, depending on
exactly when Open MPI kills them.
--------------------------------------------------------------------------
macOSでの出力テキストの抜粋
B-Prolog Version 7.8b1, All rights reserved, (C) Afany Software 1994-2012.
This edition of B-Prolog is for evaluation, learning, and non-profit
research purposes only, and a license is needed for any other uses.
Please visit http://www.probp.com/license.htm for the detail.
Type 'help' for usage.
*** Error: getline(): not interactive, use stdio.
The system is aborted by Rank #0.
*** Error: getline(): not interactive, use stdio.
The system is aborted by Rank #3.
*** Error: getline(): not interactive, use stdio.
The system is aborted by Rank #2.
*** Error: getline(): not interactive, use stdio.
The system is aborted by Rank #1.
--------------------------------------------------------------------------
MPI_ABORT was invoked on rank 2 in communicator MPI_COMM_WORLD
with errorcode 1.
NOTE: invoking MPI_ABORT causes Open MPI to kill all MPI processes.
You may or may not see output from other processes, depending on
exactly when Open MPI kills them.
--------------------------------------------------------------------------
bp4prism-linux.a と bp4prism-darwin.a との差異に起因している可能性が有る。
mpprismの実行はファイルを指定する必要がある。以下のスクリプトでテストをするのが良い。 https://github.com/prismplp/prism/blob/master/testing/test_mp.sh mac OSの方はprismが起動できていないのでprologディレクトリの方のインストールに失敗している可能性もあり
すみません。macOSで /src/prolog
での make
/make install
を実行するのを忘れてしまっていました。docker版だとイメージ作成時にそこは勝手に行われて/src/c
での作業のみしていたので、その流れで忘れてしまっていたようです。お騒がせしました。