[英]Executing MPI commands using PHP
我試圖使用php執行一個mpi程序,因為我必須為用戶提供Web界面。PHP成功執行命令並僅在只有一個進程的情況下才返回輸出,即
$output = system(" mpiexec -hostfile /data/hosts -np 1 /data/./hello",$returnValue);
但是我需要一個以上的過程,並且嘗試了以下方法,但是結果是相同的,即mpi程序沒有響應。
使用系統()
$output = system(" mpiexec -hostfile /data/hosts -np 2 /data/./hello",$returnValue);
使用shell_exec()
$output = shell_exec(" mpiexec -hostfile /data/hosts -np 2 /data/./hello");
如果我使用這些方法來運行一個簡單的C程序,我會收到響應。
$output = system("/data./hello",$returnValue);
請幫我。 非常感謝。
問題似乎是您試圖將“ system()”的輸出存儲到“ $ output”中,而它已經在“ $ returnValue”上存儲了值。 嘗試這個:
exec('mpiexec -hostfile /data/hosts -np 2 /data/./hello', $var);
var_dump($var);
出於某種奇怪的原因,PHP不能與多線程相處。
一個骯臟的工作環境將是將結果輸出到文件並從該filem饋送php,例如:
system(" mpiexec -hostfile /data/hosts -np 2 /data/./hello > myfile.txt 2>&1");
$handle = file_get_contents('myfile.txt');
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.