Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Extension to mpi programs save restore bkp #385

Open
wants to merge 98 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from 1 commit
Commits
Show all changes
98 commits
Select commit Hold shift + click to select a range
497a751
Adding MPI support continuing
Aug 1, 2020
831c5de
Adding multi process GUI elements
Aug 3, 2020
20c9cf8
Process on focus
Aug 7, 2020
cf7307e
Adding MPI support
Aug 13, 2020
936bc39
Cluster
Aug 15, 2020
b3a0ffa
Adding mossing file
Aug 15, 2020
79e49ba
Nox testing passing
Aug 17, 2020
7bc9406
First pytest for mpi version
Aug 20, 2020
ffc4ae8
Refactoring tests for MPI
Aug 22, 2020
c68ae89
Testing JS with puppeters
Aug 23, 2020
905b189
Merge pull request #1 from cs01/master
Aug 24, 2020
a867e74
Fixing package.json
Aug 24, 2020
c7e1cef
MPI extension working with Pty
Aug 27, 2020
fc29ead
Fixing tests
Aug 29, 2020
49498bb
Fixing format to pass check
Aug 29, 2020
082cb87
Removing garbage
Aug 29, 2020
5d9e4f3
Adding openmpi to the testing machines
Aug 29, 2020
0f96f84
Adding openmpi to the testing machines
Aug 29, 2020
127580a
Adding openmpi to the testing machines (again)
Aug 29, 2020
d54b6d9
Fixing compiling nodes_name
Aug 29, 2020
c9b1ef3
Making the test more general
Aug 29, 2020
965c243
Fixing python test for Azure CI servers
Aug 29, 2020
a0e3f06
Trying 127.0.0.1 for debug session connection
Aug 29, 2020
4979556
Install gdbserver in the CI machines
Aug 29, 2020
cbd0230
Troubleshooting ...
Aug 29, 2020
2d3dec0
Moving from shell to bash
Aug 29, 2020
1260136
Fixing test
Aug 29, 2020
66d1bf4
Fixing Javascript test jest calling
Aug 29, 2020
feacf2c
Fixing Javascript test jest calling
Aug 29, 2020
f4b9a4b
Moving js to ts for the testing script
Aug 29, 2020
2e7a337
Cancel workflow
Aug 29, 2020
eac3fd7
Adding timeout
Aug 29, 2020
a814d29
Checking Adding timeout
Aug 29, 2020
469b73b
Apply small review changes
Aug 29, 2020
cdd0ace
Retry with timeout
Aug 29, 2020
aef0ef2
Timeout to 8 min
Aug 29, 2020
f9ae0a6
Removing __main__ and __init__ in gdbgui-mpi
Aug 29, 2020
f528fff
try to fix CI machines Stuck (still good to review)
Aug 30, 2020
11d55e5
try to fix CI machines Stuck
Aug 30, 2020
a4be66b
CI again ...
Aug 30, 2020
ecf29e4
CI again ...
Aug 30, 2020
2c3ecde
CI again ...
Aug 30, 2020
497703b
CI again ...
Aug 30, 2020
1d7b681
Trying without shell
Aug 30, 2020
889fc82
CI again ...
Aug 30, 2020
c7ee38d
CI again ...
Aug 30, 2020
efc49b7
CI again ...
Aug 30, 2020
9627de0
CI again ...
Aug 30, 2020
6538702
Moving build before test in js_tests ...
Aug 30, 2020
9648fd3
CI run after nox fix in previous commit
Aug 30, 2020
cbb95ef
Fixing lint test
Aug 30, 2020
cb1c7b1
Moving requirement of flaskio to setup.py
Aug 30, 2020
b213761
Merge pull request #2 from cs01/master
Jan 16, 2021
79fdd65
Fixing gdbgui with OpenFPM
Jan 18, 2021
9b94f15
Fixing conflicts
Jan 25, 2021
e8e0deb
Fixing github
Jan 25, 2021
1cb1950
Running setup.py before python testing
Jan 25, 2021
3273965
Adding python 3.9 amd fixing tests
Jan 25, 2021
259460d
Adding more time for print node file
Jan 25, 2021
e15ae69
Adding additional output in case of error
Jan 25, 2021
580ffab
More output
Jan 25, 2021
f42ed39
Fixing launching of print nodes
Jan 25, 2021
7f14fe5
Fixing launching of debugger
Jan 25, 2021
a9d89f4
Fixing lint
Jan 25, 2021
5088b53
Fixing lint and tests
Jan 25, 2021
b2a76be
Increase timeout limit
Jan 25, 2021
5583e09
Increase timeout limit
Jan 26, 2021
0af6893
Increase timeout limit
Jan 26, 2021
66e13ec
Eliminating potential deadlock
Jan 26, 2021
ea666ac
Reducing to two sessions instead of six
Jan 26, 2021
923a620
Forcing error t checl
Jan 26, 2021
ddebde7
Checking process.terminate ... does not terminate on github
Jan 26, 2021
9e22d9c
Checking process.terminate ... does not terminate on github
Jan 26, 2021
81f9565
Checking process.terminate ... does not terminate on github
Jan 26, 2021
e277bbd
More analyze
Jan 26, 2021
25d5a5e
More analyze
Jan 26, 2021
6c6abb1
More analyze
Jan 26, 2021
b0db403
More robust detection
Jan 26, 2021
6c27678
Fixing tests
Jan 26, 2021
1b7369d
Fixing tests
Jan 26, 2021
c8048e7
Fixing tests
Jan 26, 2021
973ac13
Fixing pagination and sigint
Apr 21, 2021
e0f6c9d
Fixing syntax
Apr 21, 2021
3e71552
Fixing syntax
Apr 21, 2021
37a6353
Fixing syntax
Apr 21, 2021
0c27d40
Fixing syntax
Apr 21, 2021
39ee11f
Fixing lint
Apr 21, 2021
93831e6
Fixing lint
Apr 22, 2021
8d15c97
Fixing test
Apr 22, 2021
6af6f3f
Fixing SIGINT for MPI
Apr 22, 2021
38c1e75
Set timeout for launching gdbgui server
Apr 22, 2021
01059cd
Set timeout for launching gdbgui server
Apr 22, 2021
d261481
Set timeout for launching gdbgui server
Apr 22, 2021
3d6c4aa
Fixing lint
Apr 22, 2021
9e2a8ae
Fixing test timeout
Apr 22, 2021
9133063
Adding saving breakpoints on cookies
Apr 25, 2021
48c805a
Fixing breakpoints saved on cookies + activate tests
Apr 25, 2021
e85a796
Fixing format
Apr 25, 2021
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
Fixing SIGINT for MPI
  • Loading branch information
Incardona Pietro committed Apr 22, 2021
commit 6af6f3f05fe1a7150deb3577994a3478544a486b
5 changes: 5 additions & 0 deletions gdbgui/server/app.py
Original file line number Diff line number Diff line change
Expand Up @@ -334,6 +334,11 @@ def process_controllers_out():
"""Attach processor information"""
for r in response:
r["proc"] = debug_session.mpi_rank
if r["type"] == "notify":
if r["message"] == "thread-group-started":
debug_session.inferior_pid = int(r["payload"]["pid"])

# Here we parse for thread-group-started to get the inferior_pid

for client_id in client_ids:
logger.info("emiting message to websocket client id " + client_id)
Expand Down
7 changes: 4 additions & 3 deletions gdbgui/server/sessionmanager.py
Original file line number Diff line number Diff line change
Expand Up @@ -36,6 +36,7 @@ def __init__(
self.start_time = datetime.datetime.now().strftime("%Y-%m-%d %H:%M:%S")
self.client_ids: Set[str] = set()
self.mpi_rank = -1
self.inferior_pid = -1

def terminate(self):
if self.pid:
Expand Down Expand Up @@ -186,9 +187,9 @@ def debug_session_from_mpi_processor_id(

return None

def send_signal_to_all_debug_sessions_processes(self):
for debug_session in self.to_dict().items():
print("PROCESS ID: " + debug_session["pid"])
def send_signal_to_all_debug_sessions_processes(self, signal_id: int):
for debug_session, _ in self.debug_session_to_client_ids.items():
os.kill(debug_session.inferior_pid, signal_id)

def exit_all_gdb_processes_except_client_id(self, client_id: str):
logger.info("exiting all subprocesses except client id")
Expand Down