HOOMD v1.2.1 binary available via conda (beta)

340 views
Skip to first unread message

Joshua Anderson

unread,
Oct 23, 2015, 9:04:57 AM10/23/15
to hoomd...@googlegroups.com
Would you like to install binary builds of hoomd in an easy to set up environment with a powerful package manager and access to all the popular python packages?

1. Install miniconda: (http://conda.pydata.org/miniconda.html)
    - wget https://repo.continuum.io/miniconda/Miniconda3-latest-Linux-x86_64.sh
    - bash Miniconda3-latest-Linux-x86_64.sh
    - # follow onscreen prompts
2. conda config --add channels glotzer
3. conda install hoomd

Try it out and let me know how it works. This is a beta test to gauge if the packages work and if there is sufficient interest to make it worth continuing to provide these builds. My hope is that it is helpful to Ubuntu users, as building hoomd on that distro can be a challenge to configure properly.

Conda is a python-centric binary package manager aimed at researchers that is rapidly gaining in popularity. It installs into a single subdir within your home directory. With it, you can have hoomd up and running from a bare system in a minute. See the conda documenation for more information: http://conda.pydata.org/docs/install/quick.html . Best of all, it is a package manager, so when a new version of hoomd comes out, you only need to `conda update --all` to get the latest version.

Currently, I only have linux builds posted. If there is interest, I can see how feasible it is to provide mac builds.

Requirements:
1. Sandybridge or newer processor (AVX instruction set)
2. (optional) CUDA 7.5 capable NVIDIA drivers (required to use the GPU)

Caveats:
1. I don't recommend using conda on a cluster because it won't work with the cluster specific  MPI environment, nor with admin supported python installs on local file systems.

2. Currently, Conda is not useful as a development platform for hoomd. You are better off using your linux distro's package manager to install boost and python packages suitable for compiling hoomd.
--
------
Joshua A. Anderson, Ph.D.
Research Area Specialist, Chemical Engineering, University of Michigan
Phone: 734-647-8244
http://www-personal.umich.edu/~joaander/

Jens

unread,
Oct 27, 2015, 5:50:34 AM10/27/15
to hoomd...@googlegroups.com
Hi,

I just tried this on Ubuntu 15.04 (Intel(R) Core(TM) i7-5960X CPU @ 3.00GHz with a Tesla K20c and Cuda 7.0) and it worked perfectly.

If this could be supported it would be great as I'm currently experiencing problems building hoomd-blue on Ubuntu and it would make life so much easier.

Am I correct in thinking that this is only supported for python3? 

Best wishes,

Jens




--
You received this message because you are subscribed to the Google Groups "hoomd-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to hoomd-users...@googlegroups.com.
To post to this group, send email to hoomd...@googlegroups.com.
Visit this group at http://groups.google.com/group/hoomd-users.
For more options, visit https://groups.google.com/d/optout.

Joshua A. Anderson

unread,
Oct 27, 2015, 7:31:56 AM10/27/15
to hoomd...@googlegroups.com, Jens
Thanks for the feedback, and I'm glad it is working.

I do have both python2.7 and python3.4 builds posted. If you install miniconda python 2 (or create a python2.7 environment) "conda install hoomd" should select the python2.7 build and install it.

Are any users interested in Mac builds?
--
Joshua A. Anderson, Ph.D.
Research Area Specialist, Chemical Engineering, University of Michigan
Phone: 734-647-8244
http://www-personal.umich.edu/~joaander/
> Phone: 734-647-8244 <tel:734-647-8244>
> http://www-personal.umich.edu/~joaander/
>
> --
> You received this message because you are subscribed to the Google Groups "hoomd-users" group.
> To unsubscribe from this group and stop receiving emails from it, send an email to hoomd-users...@googlegroups.com <mailto:hoomd-users...@googlegroups.com>.
> To post to this group, send email to hoomd...@googlegroups.com <mailto:hoomd...@googlegroups.com>.
> Visit this group at http://groups.google.com/group/hoomd-users.
> For more options, visit https://groups.google.com/d/optout.
>
>
> --
> You received this message because you are subscribed to the Google Groups "hoomd-users" group.
> To unsubscribe from this group and stop receiving emails from it, send an email to hoomd-users...@googlegroups.com <mailto:hoomd-users...@googlegroups.com>.
> To post to this group, send email to hoomd...@googlegroups.com <mailto:hoomd...@googlegroups.com>.

Jens

unread,
Oct 27, 2015, 9:25:38 AM10/27/15
to Joshua A. Anderson, hoomd...@googlegroups.com
That's great to hear.

I downloaded the miniconda python2.7 environment (wget https://repo.continuum.io/miniconda/Miniconda-latest-Linux-x86_64.sh), and this installs things into ~/miniconda, rather then ~/miniconda3.

I then followed the instructions as per the rest of the email and it worked out of the box!

Many thanks for that.

As a Mac user, I'd also be interested in having Mac builds that easy too. :)

Best wishes,

Jens

Eric Jankowski

unread,
Oct 27, 2015, 5:31:05 PM10/27/15
to hoomd...@googlegroups.com, Joshua A. Anderson
Mac builds would be convenient for my lab as well!
Best,
Eric
> email to hoomd-users...@googlegroups.com.
> To post to this group, send email to hoomd...@googlegroups.com.

Joshua Anderson

unread,
Oct 29, 2015, 7:31:16 AM10/29/15
to Eric Jankowski, hoomd...@googlegroups.com
I have posted a mac build to the conda glotzer repository. Try it out and see if it works for you.

It is a single-core CPU only build, sufficient for testing small jobs. No MPI because conda's default MPI package is horribly broken on mac. No CUDA because I have no CUDA capable macs to test on, nor do I think there is a single Mac with a CUDA GPU that is worth using to execute hoomd. They make great dumb terminals, though. If you don't have local GPU resource, get time on Comet - it only takes a few sentences to request 1000 hours, and a paragraph to request 100k.

Requirements:
* OS X 10.8 (maybe even 10.10)
* Haswell or newer processor.

Mac is such a pain to work with, libc++ vs libstdc++, deployment targets, clang vs gcc, oh my.

As for a code dev environment, don't even attempt to use conda for that on a mac. Keep using macports, though macports has given me lots of trouble in the last few years, I've given up compiling hoomd on mac and just remote into a linux box. Maybe someone could evaluate homebrew as a dev environment for hoomd, and provide instructions for those that want to build locally.
------
Joshua A. Anderson, Ph.D.
Research Area Specialist, Chemical Engineering, University of Michigan
Phone: 734-647-8244
http://www-personal.umich.edu/~joaander/

Eric Jankowski

unread,
Oct 29, 2015, 9:25:57 AM10/29/15
to Joshua Anderson, hoomd...@googlegroups.com
Good enough!

I was able to conda install and successfully run a small LJ test
script with Anaconda3 on a new iMac, though there was a
numpy.core.multiarray import error upon invocation of hoomd. That
error looks awfully familiar, and my guess is that that's an issue
with the conda numpy package having one path wrong somewhere.

After years of compiling GPU-enabled builds on my laptops, I think it
is wise to leave that exercise to the ambitious user. However, being
able to instantly have a hoomd executable working (even on just one
core) for a new user that wants to poke around is really great.

Joshua Anderson

unread,
Oct 29, 2015, 9:56:54 AM10/29/15
to Eric Jankowski, hoomd...@googlegroups.com
One nice thing about the conda builds is that they install as a python module. Fire up an ipython notebook (conda install ipython-notebook), import hoomd_script and have fun! Note that you will need context.initialize("") to make hoomd avoid trying to process ipython notebook arguments.

HOOMD v2.0 will include better support for use within notebooks (like status text to the web page instead of the terminal).
------
Joshua A. Anderson, Ph.D.
Research Area Specialist, Chemical Engineering, University of Michigan
Phone: 734-647-8244
http://www-personal.umich.edu/~joaander/

Jens

unread,
Oct 29, 2015, 5:47:18 PM10/29/15
to hoomd...@googlegroups.com
I've just tested on a Macbook Air running OSX 10.9.5 (Intel(R) Core(TM) i5-4260U CPU @ 1.40GHz) and a simple test worked straight out of the box.

Even if it's not running on the GPU, this is still really helpful for me as I develop a code that uses hoomd-blue and don't need much horsepower, just enough to test and debug things locally. With a mac build I can develop when I'm out of the lab and travelling, and then move to Linux for more serious testing.

So for me at least, these builds are very useful, so thanks for providing them and saving me from the pain of having to do it myself!

Best wishes,

Jens

Nathan Horst

unread,
Nov 18, 2015, 3:50:29 PM11/18/15
to hoomd-users
Hi,

I tried this on Ubuntu 14.04, as I too have had problems building hoomd-blue on my machine, and I believe the install was successful. However, I have tried with both python 2.7 and 3.4 environments and I am still unable to run the following command from the python shell. 

"from hoomd_script import *"

I am getting the following error, I have tried editing my python path multiple times, but perhaps I am not being careful enough with the path definitions? 

/home/nathan/miniconda2/bin/hoomd: line 15: 26217 Illegal instruction     /home/nathan/miniconda2/bin/python $*

I am new to miniconda, but everything seems to be in order as far as i can tell. Any ideas why I am getting this error?

Thanks,

Nathan

Michael Howard

unread,
Nov 18, 2015, 5:05:00 PM11/18/15
to hoomd-users
Do you have a sandybridge or newer CPU chip? You might be getting illegal instructions because your chip doesn't support avx optimizations.

--Mike

Resonanz

unread,
Nov 19, 2015, 6:48:50 AM11/19/15
to hoomd-users
First, I love anaconda.  It is totally great for python development.  And it just works.

Second, I have played for many hours trying to install hoomd on Debian and with my mild Linux skills it is damn near impossible to install.  I have given up on this.

Third, I installed LAMMPS (hoomd competitor) on Debian in about 30 seconds: apt-get install lammps, and that just worked first time perfectly.

Fourth, 2nite I tried to get ArchLinux installed, and it is worse than hoomd to install.  I have given up on this also.

Fifth, believe it or not, I am really pleased to see hoomd and anaconda together !!! I am trying to install hoomd now using the conda installer.

Sixth, did it work......?  Dunno yet, still waiting....... I'll let you know in the morning.

Good night.


Resonanz

unread,
Nov 19, 2015, 6:48:51 AM11/19/15
to hoomd-users, linu...@gmail.com
I have a Mac but prefer to run Debian in a virtual machine on the Mac as it is really lightweight and fast.  At home I have Windows 10 and VMWare Workstation 12 Player and run Debian on that and it is really nice and clean and fast.  Both have Anaconda installed.

Joshua Anderson

unread,
Nov 19, 2015, 6:59:40 AM11/19/15
to hoomd...@googlegroups.com, Jens Thomas
Thanks for the feedback. I don't see a useful version of hoomd in the main linux distro package management systems any time soon. 1) It would need to be CUDA disabled because the mainline distros don't include CUDA packages and frown on embedding closed-source binaries. 2) The available version would lag way behind development. Using anaconda allows me to provide the most up to date builds.

Regarding the illegal instruction: Michael is correct. I build these binaries for sandybridge or newer CPUs with AVX instructions. I thought this was a safe assumption as we retired all of our pre-sandybridge chips more than a year ago. Are many still running on systems that old? I could rebuild with only SSE4, with the loss of 20-40% performance in a few key routines that I have optimized for AVX. Put another way, how much do people care about raw performance in the anaconda builds?

- Josh

On Thu, Nov 19, 2015 at 5:00 AM, Resonanz <rob.w...@gmail.com> wrote:
I have a Mac but prefer to run Debian in a virtual machine on the Mac as it is really lightweight and fast.  At home I have Windows 10 and VMWare Workstation 12 Player and run Debian on that and it is really nice and clean and fast.  Both have Anaconda installed.

--
You received this message because you are subscribed to the Google Groups "hoomd-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to hoomd-users...@googlegroups.com.
To post to this group, send email to hoomd...@googlegroups.com.



--
------
Joshua A. Anderson, Ph.D.
Research Area Specialist, Chemical Engineering, University of Michigan
Phone: 734-647-8244

Nathan Horst

unread,
Nov 19, 2015, 9:12:06 AM11/19/15
to hoomd-users
You are correct, I overlooked that section of the original email. I do plan to get a newer chip in the somewhat near future, perhaps I will check back at that time.

Thanks,

Nathan

Resonanz

unread,
Nov 19, 2015, 2:35:53 PM11/19/15
to hoomd-users
I appears that the anaconda installation on my minimalist Debian install which is running in a virtual machine on top of Mac OS X worked perfectly.  Well, from the command line at least.  It does not work in iPython Notebook (the hoomd text code on the website fails on the second line).  And I was not using CUDA.

So a great job thanks Joshua.  Simple install.  Just works. 

On the CUDA front, many of us may not care too much about CUDA for doing the basic stuff.  For the hoomd test code, my setup above runs about 7000 iterations per second which is fine for doing basic stuff and learning how to use hoomd.

Resonanz

unread,
Nov 19, 2015, 2:37:47 PM11/19/15
to hoomd-users
By the way, FWIW I am running Python 3.4.3 64 bit in the virtual machine, so that all seems good.

Joshua Anderson

unread,
Nov 19, 2015, 2:41:15 PM11/19/15
to hoomd...@googlegroups.com
In ipython, you need `context.initialize("")` (note the ""). This overrides the argument parsing logic and prevents hoomd from trying to interpret ipython command line args. Better ipython support and documentation will come.

- Josh

On Thu, Nov 19, 2015 at 2:37 PM, Resonanz <rob.w...@gmail.com> wrote:
By the way, FWIW I am running Python 3.4.3 64 bit in the virtual machine, so that all seems good.

--
You received this message because you are subscribed to the Google Groups "hoomd-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to hoomd-users...@googlegroups.com.
To post to this group, send email to hoomd...@googlegroups.com.
Visit this group at http://groups.google.com/group/hoomd-users.
For more options, visit https://groups.google.com/d/optout.

Joshua Anderson

unread,
Nov 24, 2015, 8:49:59 AM11/24/15
to hoomd...@googlegroups.com
Thanks for the feedback on the conda builds. They are working well and there is a large interest in them. I will continue to support these, and they are now documented on the download page: https://codeblue.umich.edu/hoomd-blue/download.html . HOOMD-blue v1.3 will reference them in the documentation.

Miniconda bumped to python 3.5 in their latest build, so I added a python 3.5 conda build of hoomd to the glotzer channel.

Let the mailing list know if you have any problems. I hope that the conda builds will be easy to maintain and use going forward.

Åsmund Ervik

unread,
Nov 25, 2015, 3:52:01 AM11/25/15
to hoomd-users
FYI, Resonanz, I'm the maintainer of the HOOMD-blue package on ArchLinux. I use it myself and it's pretty seamless. Did you have a problem with that package specifically? Or with installing Arch in general (which can be frustrating the first time, I know)?

Resonanz

unread,
Nov 26, 2015, 12:22:25 AM11/26/15
to hoomd-users
Hi Asmund, the problems I had were with installing Arch Linux.  I could probably have persevered and installed it but to be honest it is too difficult and time consuming.  Debian by contrast is small and a breeze to install, and I am not generally a Linux user.

Resonanz

unread,
Nov 26, 2015, 2:21:03 AM11/26/15
to hoomd-users
Two of us just tried to install on Windows.  We got the following:


C:\Users\Resonanz\Anaconda3>conda install hoomd
Fetching package metadata: ......
Error: No packages found in current win-64 channels matching: hoomd

You can search for this package on anaconda.org with

    anaconda search -t conda hoomd

C:\Users\Resonanz\Anaconda3>


Out of curiosity, is there a fundamental problem running on Windows?  Or is this just something small that could be sorted out?

osmanfb1

unread,
Nov 28, 2015, 3:24:40 PM11/28/15
to hoomd-users


On Friday, October 23, 2015 at 9:04:57 AM UTC-4, Joshua A. Anderson wrote:
Would you like to install binary builds of hoomd in an easy to set up environment with a powerful package manager and access to all the popular python packages?

Hello Josh,
I have ubuntu 14.04 with intel i7-4790K CPU and GTX 970. I tried phython3 version of miniconda install. Install process worked but hoomd is not working:
 osman@osman-desktop:~/hoomd/examples$ hoomd   -x  analyze_imd
Traceback (most recent call last):
  File "analyze_imd", line 6, in <module>
    from hoomd_script import *
  File "/home/osman/miniconda3/lib/python3.5/site-packages/hoomd_script/__init__.py", line 60, in <module>
    import hoomd;
ImportError: /usr/lib/x86_64-linux-gnu/libstdc++.so.6: version `GLIBCXX_3.4.20' not found (required by /home/osman/miniconda3/lib/python3.5/site-packages/hoomd.so)
osman@osman-desktop:~/hoomd/examples$ which hoomd
/home/osman/miniconda3/bin/hoomd

Looks like hoomd.so needs a newer glibc.
I'll try python2.7 version next.
-osman

Joshua Anderson

unread,
Nov 30, 2015, 10:56:24 AM11/30/15
to hoomd...@googlegroups.com
HOOMD does not compile on windows.

------
Joshua A. Anderson, Ph.D.
Research Area Specialist, Chemical Engineering, University of Michigan
Phone: 734-647-8244
http://www-personal.umich.edu/~joaander/

--
Reply all
Reply to author
Forward
0 new messages