SPHIRE on CentOS 7

SPHIRE (SParks for High Resolution Electron microscopy) is a new software suite designed for easy access to cryo electron microscopy (yes, I quoted). I was asked to make it available on our systems, so here is the tale of my experience.

In principle I just need to download it and follow the installation instructions, but I can’t do that, since I have a lot of software already installed, to start with, another version of EMAN2, and another version of openmpi. I download, then, the main package

sphire_beta_20161216.tar.g

untar it, load my mpi module, and try to install it by typing

./eman2-installer

Of course, it works. Happily, I make a module for it, and test that we can get the GUI after typing sphire. Everything looks fine so far. Unfortunately, when you try to do something for real, like using the 20 cores of the machine, openmpi doesn’t seem to be available. Error reads:

mpirun -np 10 sxali2d.py start.hdf ali2d --MPI
Traceback (most recent call last):
  File "/usr/local/EMAN2_sphire/bin/sxali2d.py", 
line 142, in 
    main()
  File "/usr/local/EMAN2_sphire/bin/sxali2d.py", line 95, in main
    from mpi import mpi_init, mpi_comm_size, 
mpi_comm_rank, MPI_COMM_WORLD
ImportError: No module named mpi

If you try to load my openmpi module in addition to sphire, what you get is opempi and sphire, but sphire doesn’t seem to run with it. Could it be that pydusa is missing? Let’s add it to the sphire folder, and untar it, as suggested.

I start from scratch, and I do step 1 (eman2-installer) step2 (source the eman2 enviroment) step 3 (load my openmpi) and step4 (install the custom pydusa)

tar xvf pydusa-1.15es-fftmpi-6__2016_09_07.tgz

But the error persist. Therefore it must be openmpi. I’m reluctant to install another opempi that will come stucked with pydusa, but it looks like there is no other solution. Now I remember what I always read about missing programmers on the Academia. Since there is a pydusa option that will pull in the right mpi version, and since I already lost a day with this, I use the option

./install_mpi.py --force

an see how openmpi-1.10.2.tar.gz is installed as a part of the pydusa installation. The installation takes some time (~ 20 minutes).  A lot of messages are printed out, but they don’t look scary. The last lines read:

=====> Install the mpi python binding
 make install >> log.txt
=====> To complete installation you need to run:
source /usr/local/EMAN2_sphire2/eman2.bashrc

Then start SPARX or EMAN2 and run 'import mpi'. 
If it runs without any error message the installation is complete.

I do as suggested. The printout reads:

 ## > source /usr/local/EMAN2_sphire2/eman2.bashrc
 ## > sx.py
WARNING: IPython History requires SQLite, 
your history will not be saved
Python 2.7.3 (default, Jul 30 2013, 15:07:49) 
Type "copyright", "credits" or "license" for more information.

IPython 1.2.1 -- An enhanced Interactive Python.
? -> Introduction and overview of IPython's features.
%quickref -> Quick reference.
help -> Python's own help system.
object? -> Details about 'object', use 'object??' for extra details.
Welcome to the interactive SPARX-GUI Python interface, 
provided by ipythonSPARX v4.0 (GITHUB: Sat Nov 26 12:37:45 2016)

In [1]: import mpi

In [2]: quit

And the “real test” seems to work also! As an user, I source the suggested bashrc, the GUI opens, and I can run over several processors. I was, once more, too naive to think a program suite was designed to run under all the circumstances. Let’s not think I’m the culprit but the non-professional approach. Anyway, you don’t need to be professional to release a program, and even professional programs and equipment fail. Look at the new MacBook pro or the (in)famous Samsung Galaxy 7, for example.

One of these days, I’ll write again something interesting. I promise.

Advertisements

HOWTO Windows 10 deactivate Cortana

ximg_579a8af2d6d7b-pagespeed-gpjpjwpjjsrjrprwricpmd-ic-udb4jq9g6z

Hello, happy new year and so on. I’m now trying to recover from the X-mas holidays and a not-so-easy return home, with a luggage lost incident included. I did not finish editing what I wrote up to now, but it’s coming. Definitely. I need to finish it up. But for warming up the blog before the glorious end is written, I will continue typing my computing notes.

Today I learned how to remove Cortana from Windows. Yes, why you want to do that? Easy answer: because you don’t want Microsoft to know every search you do, every tool you type … (insert the Police music here). In principle, it’s not a beginners action, so you should skip it. Anyway, Google knows already everything about you, isn’t?

So let’s go blind. I found the right guide about it in the How-to Geek post about it. I have an enterprise version. I apologize if you don’t and what I write doesn’t work. So:

  • press Windows + R, type “gpedit.msc”
  • Navigate on the menus,  Computer Configuration > Administrative Templates > Windows Components > Search (careful, there are several “search” entries, on other sections)
  • Go to the “Cortana” entry, something like “Allow Cortana”, double click on it, until you see something like this:

ximg_579a8b4259348-pagespeed-gpjpjwpjjsrjrprwricpmd-ic-dgfjdboaqa

  • Change the option to “Disabled”, as in the picture, click “OK”, close everything and restart the computer.

The ominous circle should be gone by now. Note that you can use that corner to quickly search on your local machine, that is usually also quite needed. In the place Cortana was, now you have a mac-searchlight kind of tool. And you can always revert it if you go back to the above menu and reboot 🙂

So see you on my dreams.