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

continuing install issue #255

Closed
mschendel opened this issue Oct 30, 2020 · 18 comments
Closed

continuing install issue #255

mschendel opened this issue Oct 30, 2020 · 18 comments

Comments

@mschendel
Copy link

Hi all,
Continuing issue #252
I am able to start the gui, but I get a bunch of problems on the terminal when I do.
I try to run the default parameters in a simulation, and I get an error saying an exception occurred, but I don't know where to look for the hnn_docker.log file mentioned. I'm sorry, I didn't have time to go through the terminal output carefully, so I might have missed something obvious.
Find below the terminal output. Thanks for any suggestions!
Megan

/hnn_source_code> python3 hnn.py
qt.qpa.xcb: X server does not support XInput 2
Attribute Qt::AA_EnableHighDpiScaling must be set before QCoreApplication is created.
Warning: could not read file: /na/homes/mschendel/hnn_out/data/default/dpl.txt
Warning: could not read file: /na/homes/mschendel/hnn_out/data/default/spk.txt
Warning: could not read file: /na/homes/mschendel/hnn_out/data/default/dpl.txt
Warning: could not read file: /na/homes/mschendel/hnn_out/data/default/spk.txt
qt.qpa.xcb: QXcbConnection: XCB error: 1 (BadRequest), sequence: 169, resource id: 132, major code: 130 (Unknown), minor code: 47
/export/research/analysis/human/jstephen/shared/programs/python/anaconda3/lib/python3.5/site-packages/matplotlib/axis.py:1081: UserWarning: Unable to find pixel distance along axis for interval padding of ticks; assuming no interval padding needed.
warnings.warn("Unable to find pixel distance along axis "
/export/research/analysis/human/jstephen/shared/programs/python/anaconda3/lib/python3.5/site-packages/matplotlib/axis.py:1091: UserWarning: Unable to find pixel distance along axis for interval padding of ticks; assuming no interval padding needed.
warnings.warn("Unable to find pixel distance along axis "

I try to start the default parameters in a simulation, I get the following:
Starting simulation (4 cores). . .
Terminating simulation. . .
Traceback (most recent call last):
File "hnn.py", line 37, in
runqt5()
File "hnn.py", line 27, in runqt5
sys.exit(app.exec_())
File "/opt/hnn_source_code/hnn_qt5.py", line 3327, in stopsim
self.parent().stopsim()
File "/opt/hnn_source_code/hnn_qt5.py", line 4159, in stopsim
self.runthread.stop() # killed = True # terminate()
File "/opt/hnn_source_code/hnn_qt5.py", line 556, in stop
self.killproc()
File "/opt/hnn_source_code/hnn_qt5.py", line 602, in killproc
kill_and_check_nrniv_procs()
File "/opt/hnn_source_code/hnn_qt5.py", line 493, in kill_and_check_nrniv_procs
procs = get_nrniv_procs_running()
File "/opt/hnn_source_code/hnn_qt5.py", line 485, in get_nrniv_procs_running
for p in process_iter(attrs=["name", "exe", "cmdline"]):
TypeError: process_iter() got an unexpected keyword argument 'attrs'
Simulation exited with return code -9. Stderr from console:
NEURON -- VERSION 7.8.1-1-gda13bb7c HEAD (da13bb7c) 2020-07-22
Duke, Yale, and the BlueBrain Project -- Copyright 1984-2019
See http://neuron.yale.edu/neuron/credits

Additional mechanisms from files
mod/ar.mod mod/beforestep_py.mod mod/cad.mod mod/ca.mod mod/cat.mod mod/dipole.mod mod/dipole_pp.mod mod/hh2.mod mod/kca.mod mod/km.mod mod/lfp.mod mod/mea.mod mod/vecevent.mod

Traceback (most recent call last):
File "run.py", line 14, in
from neuron import h
ImportError: No module named 'neuron'

Traceback (most recent call last):
File "run.py", line 14, in
from neuron import h
ImportError: No module named 'neuron'

Traceback (most recent call last):
File "run.py", line 14, in
from neuron import h
ImportError: No module named 'neuron'

@mschendel
Copy link
Author

Hi there,
I wonder if there's an issue because the hnn is not installed in my home directory, but that's where the hnn_out folder is?
Installed here:
/opt/hnn_source_code/
Home directory:
/na/homes/mschendel/hnn_out/
Also I have an anaconda python distribution set in my bashrc file, for other uses. Is that getting in the way of things?
Here:
/export/research/analysis/human/jstephen/shared/programs/python/anaconda3/lib/python3.5/

Thanks for any help,
Megan

@blakecaldwell
Copy link
Member

@mschendel Sorry that are you are still having problems running simulations with this install. I've seen similar errors myself when installing HNN on non-standard configurations, which is why we prescribe specific installation procedures.

Some comments:

  1. Yes, the anaconda python version could be causing those errors. NEURON is not loading properly in your case.
  2. The hnn_docker.log isn't really applicable in your case; all of the errors are shown on the console, which you copied here.
  3. That is the intended directory layout with hnn_out in your home directory.

@mschendel
Copy link
Author

Hello,
Thank you for your feedback. I removed the setting to start the anaconda environment for my user. But now I can't even start hnn.
I am trying to follow the instructions on the website (https://jonescompneurolab.github.io/hnn/installer/ubuntu/)
Before, it looked like I was successfully able to run hnn_unbuntu.sh
Is there some other specifications I'm missing? What do I need to have a standard configuration?

Thank you again for your help
Megan

@blakecaldwell
Copy link
Member

Something could have gone wrong with the script, or it could have used the anaconda environment to install prerequisites. In that case, the python modules won't be available outside of anaconda. Just make sure you are not in anaconda and retry the installation script. Posting output here will help us debug if something failed. Thanks.

@mschendel
Copy link
Author

Thanks.
Suddenly I don't have sudo permissions to try to run the installer script again, so I'll get back to you when that is corrected.

Megan

@mschendel
Copy link
Author

Tried now to use the vm image and setup the vm (which was done for us by IT)
I am able to start hnn, I still get an error on startup
/hnn_source_code> python3 hnn.py
qt.qpa.xcb: X server does not support XInput 2
qt.qpa.xcb: QXcbConnection: XCB error: 1 (BadRequest), sequence: 167, resource id: 147, major code: 130 (Unknown), minor code: 47

When I try to run a simulation, there is a pop up that says the simulation failed, but I can't catch any more of the details. The terminal shows:
Starting simulation (4 cores). . .
Simulation exited with return code 134. Stderr from console:

Any suggestions?
Thanks,
Megan

@mschendel
Copy link
Author

Hi all,
It seems to be a user specific issue. If I log in to the vm as my usual work user, the software simulation fails. Our IT set up a user which was a copy of hnn_user (not sure why we can't just log in as that, but...), and if I log in as that user I can complete the simulation.
Does that shed any light on what might be the problem?
Thanks,
Megan

@mschendel
Copy link
Author

Hi again,
I'm looking at the .bashrc
These lines exist in the hnn_user, do I need to add them to my user if I want to run the software from my user?

these lines define global session variables for HNN

export CPU=$(uname -m)
export PATH=$PATH:/home/hnn_user/nrn/build/$CPU/bin:/home/hnn_user/hnn_source_code
export PYTHONPATH=/home/hnn_user/nrn/build/lib/python

Thanks,
Megan

@mschendel
Copy link
Author

Hi again...
So I edited my .bashrc to include these lines, but I'm seeing
mschendel@HNN-VM:~$ which python
/usr/bin/python

So I'm thinking somehow the shell initialization is not correct for my user. Can you advise?
Thanks
Megan

@blakecaldwell
Copy link
Member

@mschendel sorry I've been away for a few days, but thanks for continuing the debugging effort. Those settings in .bashrc shouldn't be necessary. I'm not sure exactly where those lines came from in the current installation instructions, but I do recognize them as part of an older installation procedure. Sorry if a version inconsistency was introduced somewhere along the line. Here's what I would recommend.

Remove those lines from .bashrc and then try running the simulation as your regular user. If it fails because something isn't found in PATH, a line should be printed to the console which will allow us to figure it out.

Let me know what you find.

Also, I'm not positive this error is a significant issue for the moment

/hnn_source_code> python3 hnn.py
qt.qpa.xcb: X server does not support XInput 2
qt.qpa.xcb: QXcbConnection: XCB error: 1 (BadRequest), sequence: 167, resource id: 147, major code: 130 (Unknown), minor code: 47

This one, however, makes sense to me:

Starting simulation (4 cores). . .
Simulation exited with return code 134. Stderr from console:

@mschendel
Copy link
Author

Hi there,
Thanks again for your help! I removed those lines from my bashrc, but I get the same error as above.
/home/hnn_user_copy/hnn_source_code> python3 hnn.py
qt.qpa.xcb: X server does not support XInput 2
qt.qpa.xcb: QXcbConnection: XCB error: 1 (BadRequest), sequence: 167, resource id: 147, major code: 130 (Unknown), minor code: 47
Starting simulation (4 cores). . .
Simulation exited with return code 134. Stderr from console:

(same error if I try to run from /home/hnn_user/)

Sorry, no better information given in the console... What else can we try or check?

Thanks,
Megan

@blakecaldwell
Copy link
Member

Hi @mschendel, I'm set up an ubuntu environment to try to reproduce this. Nothing so far.

Can you try this command from the hnn_source_code directory? It should run the default simulation and return after Simulation Time: 160.0 ms....

mpiexec -np 4 nrniv -mpi run.py

@mschendel
Copy link
Author

Hi there,
When I am logged in as my usual user, it looks like it can't find nrniv. It is installed and can run when I log in as the hnn_user_copy IT created. See below...

/home/hnn_user/hnn_source_code> mpiexec -np 4 nrniv -mpi run.py

mpiexec was unable to find the specified executable file, and therefore
did not launch the job. This error was first reported for process
rank 0; it may have occurred for other processes as well.

NOTE: A common cause for this error is misspelling a mpiexec command
line parameter option (remember that mpiexec interprets the first
unrecognized command line token as the executable).

Node: HNN-VM
Executable: nrniv

4 total processes failed to start

If I do
ls -l run.py
-rwxr-xr-x 1 hnn_user_copy root 17920 Nov 6 09:19 run.py

If I do
which nrniv
nrniv: Command not found.

If I log in as the hnn_user_copy, I get :
~/hnn_source_code$ mpiexec -np 4 nrniv -mpi run.py
numprocs=4
NEURON -- VERSION 7.7.1-28-g952217f3 master (952217f3) 2019-08-07
Duke, Yale, and the BlueBrain Project -- Copyright 1984-2018
See http://neuron.yale.edu/neuron/credits

Additional mechanisms from files
mod/ar.mod mod/beforestep_py.mod mod/cad.mod mod/ca.mod mod/cat.mod mod/dipole.mod mod/dipole_pp.mod mod/hh2.mod mod/kca.mod mod/km.mod mod/lfp.mod mod/mea.mod mod/vecevent.mod
making dout: /home/hnn_user_copy/hnn_out/data/default
Simulation time: 160.0 ms...

If I do
which nrniv
/home/hnn_user/nrn/build/x86_64/bin/nrniv

@blakecaldwell
Copy link
Member

blakecaldwell commented Nov 13, 2020

Ok! This looks like part of the problem. The installation script installs NEURON using pip install NEURON at this point
https://github.com/jonescompneurolab/hnn/blob/master/installer/ubuntu/hnn-ubuntu.sh#L95

It doesn't look like that has been done. Files in the hnn_user's home are not accessible to your normal user.

Also, it looks like hnn_user was set up with an old version of the install procedure.

@mschendel
Copy link
Author

mschendel commented Nov 13, 2020

Hi there,
Ok. Is there a list somewhere of specifications across users? Because both times, we've attempted setup where IT user was setting everything up for me and another user. It sounds like after setup by IT, we still need to independently do additional setup. This also requires permissions to run bash hnn-ubuntu.sh as other users, or be able to use pip, or update PATH so that we have access to the things installed by the IT user...

As far as I know, for this install, we used these instructions: https://jonescompneurolab.github.io/hnn/installer/virtualbox/
Is there a more up to date version somewhere?

Thanks,
Megan

@mschendel
Copy link
Author

Hi another question,
I see in the .sh file the LOGFILE, but when I've looked around, I've never seen the ubuntu_install.log. Where should that be?
Thanks again for your help,
Megan

@blakecaldwell
Copy link
Member

blakecaldwell commented Nov 14, 2020

Hi there,
Ok. Is there a list somewhere of specifications across users? Because both times, we've attempted setup where IT user was setting everything up for me and another user. It sounds like after setup by IT, we still need to independently do additional setup. This also requires permissions to run bash hnn-ubuntu.sh as other users, or be able to use pip, or update PATH so that we have access to the things installed by the IT user...

As far as I know, for this install, we used these instructions: https://jonescompneurolab.github.io/hnn/installer/virtualbox/
Is there a more up to date version somewhere?

Thanks,
Megan

The pre-configured VM only has hnn installed for hnn_user. You would need to use the instructions on the webpage to install for another user:
https://jonescompneurolab.github.io/hnn/installer/ubuntu/

I ran the script again on Ubuntu 18.04 and it seemed to work as expected. The ubuntu_install.log file can be found in the directory you ran the script from, most likely your home directory.

@mschendel
Copy link
Author

Hi there,
Thanks again for trying to help me.
I finally sat down with our IT and we got it figured out. Logging in as my normal user was missing the PYTHONPATH, I think. So we just sourced the bashrc from the hnn_user. Then, running the software from that user's directory worked. I'm not sure why that was so confusing, but we finally got it.
THANK GOODNESS.
Megan

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants