在使用ubuntu 18.04终止之前进程挂起

当在ubuntu 18.04上使用ABAQUS 6.14(以及ABAQUS 2018)时,除了standard流程的终止之外,一切似乎都能正常工作(在执行隐式分析时开始流程 – 如果你不熟悉它并不重要)。

分析确实可以正常工作,因为人们也可以在日志文件中看到( .sta文件,对于那些熟悉abaqus的人来说) THE ANALYSIS HAS COMPLETED SUCCESSFULLY 。 输出数据库包含分析结果。 但是,在分析完成后,进程standard将使用0%CPU保持hibernate状态,并保持与运行时相同的RAM量。

strace我得到:

 [pid 23191] close(8) = 0 [pid 23185]  ) = 0 (Timeout) [pid 23185] select(0, NULL, NULL, NULL, {tv_sec=0, tv_usec=50000}  [pid 23193]  ) = 0 (Timeout) [pid 23193] futex(0x7f3acd917db0, FUTEX_WAKE_PRIVATE, 1  [pid 23191] futex(0x7f3acd917db0, FUTEX_WAIT_PRIVATE, 2, NULL  [pid 23193]  ) = 0 [pid 23191]  ) = -1 EAGAIN (Resource temporarily unavailable) [pid 23191] futex(0x7f3acd917db0, FUTEX_WAKE_PRIVATE, 1) = 0 [pid 23193] select(7, [4 5 6], NULL, NULL, {tv_sec=0, tv_usec=20000}  [pid 23191] munmap(0x7f3ab130b000, 327680) = 0 [pid 23191] munmap(0x7f3ab136b000, 1114112) = 0 [pid 23191] munmap(0x7f3ab16db000, 1114112) = 0 [pid 23191] munmap(0x7f3ab0fbb000, 1114112) = 0 [pid 23191] munmap(0x7f3ab0ddb000, 1114112) = 0 [pid 23191] munmap(0x7f3ab0a0b000, 1114112) = 0 [pid 23191] munmap(0x7f3ab03fb000, 1114112) = 0 [pid 23191] munmap(0x7f3ab050b000, 1114112) = 0 [pid 23191] munmap(0x7f3ab00cb000, 1114112) = 0 [pid 23191] munmap(0x7f3ab02eb000, 1114112) = 0 [pid 23191] munmap(0x7f3ab14eb000, 1114112) = 0 [pid 23191] futex(0x7f3ab8a5dd44, FUTEX_WAIT_PRIVATE, 8, NULL) = -1 EAGAIN (Resource temporarily unavailable) [pid 23191] futex(0x7f3ab8a5dd44, FUTEX_WAIT_PRIVATE, 12, NULL  [pid 23193]  ) = 0 (Timeout) [pid 23193] select(7, [4 5 6], NULL, NULL, {tv_sec=0, tv_usec=20000}) = 0 (Timeout) [pid 23193] select(7, [4 5 6], NULL, NULL, {tv_sec=0, tv_usec=20000}  [pid 23185]  ) = 0 (Timeout) [pid 23185] select(10, [5 6 8 9], NULL, NULL, {tv_sec=0, tv_usec=20000}  [pid 23193]  ) = 0 (Timeout) [pid 23193] select(7, [4 5 6], NULL, NULL, {tv_sec=0, tv_usec=20000}  [pid 23185]  ) = 0 (Timeout) [pid 23185] select(0, NULL, NULL, NULL, {tv_sec=0, tv_usec=50000}  [pid 23193]  ) = 0 (Timeout) [pid 23193] select(7, [4 5 6], NULL, NULL, {tv_sec=0, tv_usec=20000}) = 0 (Timeout) [pid 23193] select(7, [4 5 6], NULL, NULL, {tv_sec=0, tv_usec=20000}  [pid 23185]  ) = 0 (Timeout) [pid 23185] select(10, [5 6 8 9], NULL, NULL, {tv_sec=0, tv_usec=20000}  [pid 23193]  ) = 0 (Timeout) [pid 23193] select(7, [4 5 6], NULL, NULL, {tv_sec=0, tv_usec=20000}  [pid 23185]  ) = 0 (Timeout) [pid 23185] select(0, NULL, NULL, NULL, {tv_sec=0, tv_usec=50000}  [pid 23193]  ) = 0 (Timeout) [pid 23193] select(7, [4 5 6], NULL, NULL, {tv_sec=0, tv_usec=20000}) = 0 (Timeout) [pid 23193] select(7, [4 5 6], NULL, NULL, {tv_sec=0, tv_usec=20000}) = 0 (Timeout) [pid 23193] select(7, [4 5 6], NULL, NULL, {tv_sec=0, tv_usec=20000}  

就像这两个进程处于死锁状态一样。 而且,命令

 pid -p 7002 

 pid -p 7010 

给出一个空输出。 dirs /proc/7002/proc/7010不存在。

执行的唯一与abaqus相关的进程是

 david 6995 0.0 0.1 295428 51388 pts/0 S 17:00 0:00 /opt/abaqus/6.14-1/code/bin/python /opt/abaqus/6.14-1 david 6998 0.0 0.2 368744 97948 pts/0 S 17:00 0:00 /opt/abaqus/6.14-1/code/bin/python std_inst.com david 7001 0.1 0.0 122076 20096 pts/0 Sl 17:00 0:03 /opt/abaqus/6.14-1/code/bin/eliT_DriverLM -job std_in david 7008 0.4 0.5 735812 185364 pts/0 Sl 17:00 0:07 /opt/abaqus/6.14-1/code/bin/standard -standard -acade 

在ubuntu 16.04上,完全相同的版本就像魅力一样。 在ubuntu 16.04上有相同的strace (与我的18.04具有相同的内核版本,即4.15.0-29):

 3890 close(8) = 0 3892  ) = 0 (Timeout) 3892 futex(0x7f29e43e1db0, FUTEX_WAIT_PRIVATE, 2, NULL  3890 futex(0x7f29e43e1db0, FUTEX_WAKE_PRIVATE, 1) = 0 3892  ) = -1 EAGAIN (Resource temporarily unavailable) 3892 futex(0x7f29e43e1db0, FUTEX_WAIT_PRIVATE, 2, NULL  3890 futex(0x7f29e43e1db0, FUTEX_WAKE_PRIVATE, 1) = 0 3892  ) = -1 EAGAIN (Resource temporarily unavailable) 3892 futex(0x7f29e43e1db0, FUTEX_WAKE_PRIVATE, 1  3890 futex(0x7f29e43e1db0, FUTEX_WAIT_PRIVATE, 2, NULL  3892  ) = 0 3890  ) = -1 EAGAIN (Resource temporarily unavailable) 3890 futex(0x7f29e43e1db0, FUTEX_WAKE_PRIVATE, 1) = 0 3892 select(7, [4 5 6], NULL, NULL, {0, 20000}  3890 munmap(0x7f29c7adb000, 327680) = 0 3890 munmap(0x7f29c7b3b000, 1114112) = 0 3890 munmap(0x7f29c7eab000, 1114112) = 0 3890 munmap(0x7f29c778b000, 1114112) = 0 3890 munmap(0x7f29c75ab000, 1114112) = 0 3890 munmap(0x7f29c71db000, 1114112) = 0 3890 munmap(0x7f29c6bcb000, 1114112) = 0 3890 munmap(0x7f29c6cdb000, 1114112) = 0 3890 munmap(0x7f29c689b000, 1114112) = 0 3890 munmap(0x7f29c6abb000, 1114112) = 0 3890 munmap(0x7f29c7cbb000, 1114112) = 0 3890 exit_group(0) = ? 3891 +++ exited with 0 +++ 3893 +++ exited with 0 +++ 3892 +++ exited with 0 +++ 3890 +++ exited with 0 +++ 3880  [{WIFEXITED(s) && WEXITSTATUS(s) == 0}], 0, NULL) = 3890 3880 --- SIGCHLD {si_signo=SIGCHLD, si_code=CLD_EXITED, si_pid=3890, si_uid=1000, si_status=0, si_utime=107, si_stime=7} --- 

谁有个好主意如何解决这个问题? 或者我应该在哪个方向进一步调查。