Closed heather999 closed 8 years ago
For Twinkles, @SimonKrughoff is better placed to comment than I am. Ideally, that release should contain any needed development in obs_lsstSim such that we don't have to build it from a dev branch. There were some data butler issues as well, e.g., butler.subset
seemed to be broken.
Depending on what you need, I have adopted the policy of releasing a development version of lsst_apps tagged 'sims' every time I update the sims stack.
Which is to say
eups distrib install lsst_apps -t sims
will get you a version of the DM stack that is consistent with their last tagged weekly build, if that is helpful.
Since we would like the ability to run comparisons between sims outputs and DM outputs, the sims tagged ones are probably the ones we will need in Twinkles.
@jchiang87 Could someone file a DM JIRA ticket for the butler.subset
breakage you mentioned? I'm not aware of any particular problems, and I don't see anything related in the existing tickets.
sure. will do
For what it is worth:
There is now a sims-compatible conda install of lsst_apps
You just need to start a conda environment, add the dev channel with
conda config --add channels http://eupsforge.net/conda/dev
and then run
conda install lsst-apps
and you should get lsst-apps in binary form. Let me know if any of those statement prove to be untrue.
Thanks, @danielsf, I'll give that a try.
I gave it a try at SLAC on RHEL6-64, using Anaconda Python 2.3 (python 2.7.10) and hit a little snag (I would not rule out pilot error, and I will try it again on my own laptop - perhaps with a newer Anaconda). Any suggestions @danielsf? Here is the ultimate error, with the rest of the output following: Error: ERROR: placeholder '/home/ilan/minonda/envs/_build_placehold_placehold_placehold_placehold_placehold' too short in: swig-3.0.2-0
The following packages will be downloaded:
package | build |
---|---|
libgcc-4.8.5 | 1 922 KB |
mkl-11.3.1 | 0 121.2 MB |
nomkl-1.0 | 0 402 B |
openssl-1.0.2g | 0 3.2 MB |
pcre-8.31 | 0 534 KB |
pixman-0.32.6 | 0 2.4 MB |
sqlite-3.9.2 | 0 3.9 MB |
freetype-2.5.5 | 0 2.2 MB |
swig-3.0.2 | 0 1.9 MB |
fontconfig-2.11.1 | 5 402 KB |
cairo-1.12.18 | 6 594 KB |
qt-4.8.7 | 1 36.4 MB |
eups-2.0.2 | 0 669 KB |
lsst-cfitsio-3360.4 | 0 3.4 MB |
lsst-doxygen-1.8.5.1 | 0 3.0 MB |
lsst-eigen-3.2.5.1 | 70497dd_0 438 KB |
lsst-fftw-3.3.4.2 | 0 1.8 MB |
lsst-gsl-1.16.3 | 0 6.9 MB |
lsst-mariadbclient-0.10.1.11.2 | 0 27.3 MB |
lsst-minuit2-5.28.00.2.1 | dae2fb7_0 7.7 MB |
lsst-python-d2to1-0.2.12.1 | 0 44 KB |
lsst-xpa-2.1.15.3 | 0 616 KB |
lsst-stsci-distutils-0.3.7.1.post1 | b22a065_0 41 KB |
lsst-wcslib-5.13.1 | 0 3.2 MB |
lsst-astrometry-net-data-0.10.0.post68 | 0 1.7 MB |
lsst-display-ds9-w.2016.15 | 0 2.1 MB |
lsst-geom-w.2016.15 | 0 183 KB |
lsst-product-configs-1.0.1925 | 0 7 KB |
lsst-astrometry-net-0.50.2.post6 | 0 25.6 MB |
lsst-boost-1.59.5 | 0 13.5 MB |
lsst-base-w.2016.15 | 0 4.2 MB |
lsst-pex-exceptions-w.2016.15 | 0 5.3 MB |
lsst-mysqlpython-1.2.3.1.1.post6 | 120147b_0 103 KB |
lsst-pex-logging-w.2016.15 | 0 6.4 MB |
lsst-psfex-w.2016.15 | 0 2.4 MB |
lsst-pyfits-3.4.0.post2 | 0 2.0 MB |
lsst-scons-2.3.5 | 0 753 KB |
lsst-sconsutils-w.2016.15 | 0 211 KB |
lsst-utils-w.2016.15 | 0 5.4 MB |
lsst-daf-base-w.2016.15 | 0 7.9 MB |
lsst-pex-policy-w.2016.15 | 0 7.7 MB |
lsst-daf-persistence-w.2016.15 | 0 41.2 MB |
lsst-pex-config-w.2016.15 | 0 2.8 MB |
lsst-skypix-w.2016.15 | 0 145 KB |
lsst-daf-butlerutils-w.2016.15 | 0 27.9 MB |
numpy-1.11.0 | py27_0 6.2 MB |
lsst-coadd-chisquared-w.2016.15 | 0 3.6 MB |
lsst-esutil-0.5.3 | 0 1.2 MB |
lsst-ndarray-w.2016.15 | 0 10.8 MB |
lsst-afw-w.2016.15 | 0 162.4 MB |
lsst-obs-test-w.2016.15 | 0 38.9 MB |
lsst-shapelet-w.2016.15 | 0 17.2 MB |
lsst-skymap-w.2016.15 | 0 252 KB |
lsst-pipe-base-w.2016.15 | 0 294 KB |
lsst-coadd-utils-w.2016.15 | 0 4.5 MB |
lsst-meas-base-w.2016.15 | 0 18.6 MB |
lsst-meas-algorithms-w.2016.15 | 0 26.4 MB |
lsst-ip-isr-w.2016.15 | 0 5.1 MB |
lsst-meas-extensions-psfex-w.2016.15 | 0 5.7 MB |
lsst-meas-astrom-w.2016.15 | 0 27.3 MB |
lsst-meas-deblender-w.2016.15 | 0 7.8 MB |
lsst-ip-diffim-w.2016.15 | 0 17.9 MB |
lsst-obs-lsstsim-w.2016.15 | 0 21.1 MB |
lsst-obs-sdss-w.2016.15 | 0 4.9 MB |
lsst-pipe-tasks-w.2016.15 | 0 9.9 MB |
lsst-apps-w.2016.15 | 0 20 KB |
lsst-meas-modelfit-w.2016.15 | 0 23.4 MB |
pycairo-1.10.0 | py27_0 81 KB |
python-2.7.11 | 0 12.0 MB |
pytz-2016.3 | py27_0 178 KB |
setuptools-20.6.7 | py27_0 452 KB |
sip-4.16.9 | py27_0 247 KB |
six-1.10.0 | py27_0 16 KB |
wheel-0.29.0 | py27_0 81 KB |
cycler-0.10.0 | py27_0 11 KB |
pip-8.1.1 | py27_1 1.5 MB |
pyqt-4.11.4 | py27_1 3.5 MB |
python-dateutil-2.5.2 | py27_0 236 KB |
matplotlib-1.5.1 | np111py27_0 8.2 MB |
------------------------------------------------------------
Total: 826.2 MB
The following NEW packages will be INSTALLED:
cairo: 1.12.18-6
cycler: 0.10.0-py27_0
eups: 2.0.2-0
fontconfig: 2.11.1-5
freetype: 2.5.5-0
libgcc: 4.8.5-1
libpng: 1.6.17-0
libxml2: 2.9.2-0
lsst-afw: w.2016.15-0
lsst-apps: w.2016.15-0
lsst-astrometry-net: 0.50.2.post6-0
lsst-astrometry-net-data: 0.10.0.post68-0
lsst-base: w.2016.15-0
lsst-boost: 1.59.5-0
lsst-cfitsio: 3360.4-0
lsst-coadd-chisquared: w.2016.15-0
lsst-coadd-utils: w.2016.15-0
lsst-daf-base: w.2016.15-0
lsst-daf-butlerutils: w.2016.15-0
lsst-daf-persistence: w.2016.15-0
lsst-display-ds9: w.2016.15-0
lsst-doxygen: 1.8.5.1-0
lsst-eigen: 3.2.5.1-70497dd_0
lsst-esutil: 0.5.3-0
lsst-fftw: 3.3.4.2-0
lsst-geom: w.2016.15-0
lsst-gsl: 1.16.3-0
lsst-ip-diffim: w.2016.15-0
lsst-ip-isr: w.2016.15-0
lsst-mariadbclient: 0.10.1.11.2-0
lsst-meas-algorithms: w.2016.15-0
lsst-meas-astrom: w.2016.15-0
lsst-meas-base: w.2016.15-0
lsst-meas-deblender: w.2016.15-0
lsst-meas-extensions-psfex: w.2016.15-0
lsst-meas-modelfit: w.2016.15-0
lsst-minuit2: 5.28.00.2.1-dae2fb7_0
lsst-mysqlpython: 1.2.3.1.1.post6-120147b_0
lsst-ndarray: w.2016.15-0
lsst-obs-lsstsim: w.2016.15-0
lsst-obs-sdss: w.2016.15-0
lsst-obs-test: w.2016.15-0
lsst-pex-config: w.2016.15-0
lsst-pex-exceptions: w.2016.15-0
lsst-pex-logging: w.2016.15-0
lsst-pex-policy: w.2016.15-0
lsst-pipe-base: w.2016.15-0
lsst-pipe-tasks: w.2016.15-0
lsst-product-configs: 1.0.1925-0
lsst-psfex: w.2016.15-0
lsst-pyfits: 3.4.0.post2-0
lsst-python-d2to1: 0.2.12.1-0
lsst-scons: 2.3.5-0
lsst-sconsutils: w.2016.15-0
lsst-shapelet: w.2016.15-0
lsst-skymap: w.2016.15-0
lsst-skypix: w.2016.15-0
lsst-stsci-distutils: 0.3.7.1.post1-b22a065_0
lsst-utils: w.2016.15-0
lsst-wcslib: 5.13.1-0
lsst-xpa: 2.1.15.3-0
matplotlib: 1.5.1-np111py27_0
mkl: 11.3.1-0
nomkl: 1.0-0
numpy: 1.11.0-py27_0
openssl: 1.0.2g-0
pcre: 8.31-0
pip: 8.1.1-py27_1
pixman: 0.32.6-0
pycairo: 1.10.0-py27_0
pyparsing: 2.0.3-py27_0
pyqt: 4.11.4-py27_1
python: 2.7.11-0
python-dateutil: 2.5.2-py27_0
pytz: 2016.3-py27_0
pyyaml: 3.11-py27_1
qt: 4.8.7-1
readline: 6.2-2
setuptools: 20.6.7-py27_0
sip: 4.16.9-py27_0
six: 1.10.0-py27_0
sqlite: 3.9.2-0
swig: 3.0.2-0
tk: 8.5.18-0
wheel: 0.29.0-py27_0
yaml: 0.1.6-0
zlib: 1.2.8-0
Proceed ([y]/n)? y
Fetching packages ... libgcc-4.8.5-1 100% |################################| Time: 0:00:00 1.26 MB/s mkl-11.3.1-0.t 100% |################################| Time: 0:00:07 17.56 MB/s nomkl-1.0-0.ta 100% |################################| Time: 0:00:00 17.99 kB/s openssl-1.0.2g 100% |################################| Time: 0:00:01 2.65 MB/s pcre-8.31-0.ta 100% |################################| Time: 0:00:00 789.68 kB/s pixman-0.32.6- 100% |################################| Time: 0:00:01 1.86 MB/s sqlite-3.9.2-0 100% |################################| Time: 0:00:01 2.23 MB/s freetype-2.5.5 100% |################################| Time: 0:00:01 1.53 MB/s swig-3.0.2-0.t 100% |################################| Time: 0:00:01 1.55 MB/s fontconfig-2.1 100% |################################| Time: 0:00:00 757.91 kB/s cairo-1.12.18- 100% |################################| Time: 0:00:00 883.74 kB/s qt-4.8.7-1.tar 100% |################################| Time: 0:00:03 9.94 MB/s eups-2.0.2-0.t 100% |################################| Time: 0:00:00 838.71 kB/s lsst-cfitsio-3 100% |################################| Time: 0:00:01 2.19 MB/s lsst-doxygen-1 100% |################################| Time: 0:00:01 2.09 MB/s lsst-eigen-3.2 100% |################################| Time: 0:00:00 872.49 kB/s lsst-fftw-3.3. 100% |################################| Time: 0:00:01 1.57 MB/s lsst-gsl-1.16. 100% |################################| Time: 0:00:02 3.49 MB/s lsst-mariadbcl 100% |################################| Time: 0:00:04 6.71 MB/s lsst-minuit2-5 100% |################################| Time: 0:00:02 3.32 MB/s lsst-python-d2 100% |################################| Time: 0:00:00 382.96 kB/s lsst-xpa-2.1.1 100% |################################| Time: 0:00:00 779.39 kB/s lsst-stsci-dis 100% |################################| Time: 0:00:00 377.92 kB/s lsst-wcslib-5. 100% |################################| Time: 0:00:01 2.08 MB/s lsst-astrometr 100% |################################| Time: 0:00:01 1.41 MB/s lsst-display-d 100% |################################| Time: 0:00:01 1.64 MB/s lsst-geom-w.20 100% |################################| Time: 0:00:00 449.54 kB/s lsst-product-c 100% |################################| Time: 0:00:00 382.14 kB/s lsst-astrometr 100% |################################| Time: 0:00:04 6.31 MB/s lsst-boost-1.5 100% |################################| Time: 0:00:02 4.93 MB/s lsst-base-w.20 100% |################################| Time: 0:00:01 2.72 MB/s lsst-pex-excep 100% |################################| Time: 0:00:02 2.64 MB/s lsst-mysqlpyth 100% |################################| Time: 0:00:00 407.89 kB/s lsst-pex-loggi 100% |################################| Time: 0:00:02 3.18 MB/s lsst-psfex-w.2 100% |################################| Time: 0:00:01 1.68 MB/s lsst-pyfits-3. 100% |################################| Time: 0:00:01 1.96 MB/s lsst-scons-2.3 100% |################################| Time: 0:00:00 886.89 kB/s lsst-sconsutil 100% |################################| Time: 0:00:00 521.96 kB/s lsst-utils-w.2 100% |################################| Time: 0:00:02 2.68 MB/s lsst-daf-base- 100% |################################| Time: 0:00:02 3.77 MB/s lsst-pex-polic 100% |################################| Time: 0:00:02 3.81 MB/s lsst-daf-persi 100% |################################| Time: 0:00:06 6.81 MB/s lsst-pex-confi 100% |################################| Time: 0:00:01 1.84 MB/s lsst-skypix-w. 100% |################################| Time: 0:00:00 576.65 kB/s lsst-daf-butle 100% |################################| Time: 0:00:04 5.99 MB/s numpy-1.11.0-p 100% |################################| Time: 0:00:01 3.70 MB/s lsst-coadd-chi 100% |################################| Time: 0:00:01 2.25 MB/s lsst-esutil-0. 100% |################################| Time: 0:00:01 1.16 MB/s lsst-ndarray-w 100% |################################| Time: 0:00:02 4.39 MB/s lsst-afw-w.201 100% |################################| Time: 0:00:21 8.10 MB/s lsst-obs-test- 100% |################################| Time: 0:00:06 6.69 MB/s lsst-shapelet- 100% |################################| Time: 0:00:03 5.74 MB/s lsst-skymap-w. 100% |################################| Time: 0:00:00 509.11 kB/s lsst-pipe-base 100% |################################| Time: 0:00:00 591.90 kB/s lsst-coadd-uti 100% |################################| Time: 0:00:01 2.47 MB/s lsst-meas-base 100% |################################| Time: 0:00:03 5.43 MB/s lsst-meas-algo 100% |################################| Time: 0:00:04 6.22 MB/s lsst-ip-isr-w. 100% |################################| Time: 0:00:01 2.83 MB/s lsst-meas-exte 100% |################################| Time: 0:00:01 3.12 MB/s lsst-meas-astr 100% |################################| Time: 0:00:04 6.18 MB/s lsst-meas-debl 100% |################################| Time: 0:00:02 3.41 MB/s lsst-ip-diffim 100% |################################| Time: 0:00:03 5.25 MB/s lsst-obs-lssts 100% |################################| Time: 0:00:03 5.63 MB/s lsst-obs-sdss- 100% |################################| Time: 0:00:01 2.77 MB/s lsst-pipe-task 100% |################################| Time: 0:00:02 3.76 MB/s lsst-apps-w.20 100% |################################| Time: 0:00:00 337.85 kB/s lsst-meas-mode 100% |################################| Time: 0:00:04 6.07 MB/s pycairo-1.10.0 100% |################################| Time: 0:00:00 389.48 kB/s python-2.7.11- 100% |################################| Time: 0:00:03 3.67 MB/s pytz-2016.3-py 100% |################################| Time: 0:00:00 426.10 kB/s setuptools-20. 100% |################################| Time: 0:00:00 849.02 kB/s sip-4.16.9-py2 100% |################################| Time: 0:00:00 449.63 kB/s six-1.10.0-py2 100% |################################| Time: 0:00:00 209.58 kB/s wheel-0.29.0-p 100% |################################| Time: 0:00:00 396.75 kB/s cycler-0.10.0- 100% |################################| Time: 0:00:00 489.99 kB/s pip-8.1.1-py27 100% |################################| Time: 0:00:01 1.31 MB/s pyqt-4.11.4-py 100% |################################| Time: 0:00:01 3.15 MB/s python-dateuti 100% |################################| Time: 0:00:00 453.08 kB/s matplotlib-1.5 100% |################################| Time: 0:00:02 3.58 MB/s Extracting packages ... [lsst-astrometry-net-da############## | 29% [ COMPLETE ]|###################################################| 100% Linking packages ... Error: ERROR: placeholder '/home/ilan/minonda/envs/_build_placehold_placehold_placehold_placehold_placehold' too short in: swig-3.0.2-0
I have never seen that error before (and it's rare enough that stackoverflow doesn't seem to have any answers). Did it work with the newer anaconda? I would try updating anaconda on the SLAC machine and see if that fixes it.
An update.. I installed anaconda 2.5 and did "conda update conda" before trying again. It failed the same way. I did find a GitHub issue, which seems to imply that the problem stems from my path being longer than the one used by conda as a placeholder. I can try doing this in another directory with a shorter path to see if that takes care of it: https://github.com/rtfd/readthedocs.org/issues/1902 Ultimately though, I will be hoping to do this at NERSC, and that path length may also present trouble.
@mjuric Is this something we can easily change within conda-lsst (give the packages larger place-holder names so people installing into environments with ridiculously large directory structures don't have a problem)?
and just to confirm.. using a less than ridiculously large directory path worked, please note some of us have little control over this! :) I haven't tested the installation yet, but it completed successfully.
Thanks, @heather999 we will try to fix the conda build to be more accommodating. Sorry this is a problem.
Thank you @danielsf for the conda install and the help!
@heather999 This is a generic issue when one tries to make binaries relocatable w/o changing their source code.
The way conda
does relocation is that it patches the binary files by looking for placeholder strings and replacing them with the directories into which the code is being installed. This is easy to do in text files, but not so in binary files. If the placeholder is too short, there'll be no room to replace it with the destination path. This is the error that you're seeing.
This is an upstream issue with anaconda -- it's be better if they uses longer placeholders in their builds. I've reported a very similar issue once before -- https://github.com/ContinuumIO/anaconda-issues/issues/623 -- and they fixed it quickly (in that case the placeholder was abnormally short). I know they've discussed increasing the length of placeholder once before, but it seems no action was taken. I think it'd be good to open an issue with them so they know this is a problem; could you do that?
@danielsf I was able to install lsst-apps and lsst-sims on cori in my user directory. The installation seemed to succeed, but when I try to use the code I get this:
[cori11] module load python/2.7-anaconda
[cori11] source '/global/homes/j/jchiang8/.conda/envs/my_root/bin/eups-setups.sh'
[cori11] setup lsst_apps
[cori11] python
Python 2.7.11 |Anaconda 2.3.0 (64-bit)| (default, Dec 6 2015, 18:08:32)
[GCC 4.4.7 20120313 (Red Hat 4.4.7-1)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
Anaconda is brought to you by Continuum Analytics.
Please check out: http://continuum.io/thanks and https://anaconda.org
>>> import lsst.afw.image
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/global/homes/j/jchiang8/.conda/envs/my_root/opt/lsst/afw/python/lsst/afw/image/__init__.py", line 26, in <module>
from .imageLib import *
File "/global/homes/j/jchiang8/.conda/envs/my_root/opt/lsst/afw/python/lsst/afw/image/imageLib.py", line 34, in <module>
_imageLib = swig_import_helper()
File "/global/homes/j/jchiang8/.conda/envs/my_root/opt/lsst/afw/python/lsst/afw/image/imageLib.py", line 30, in swig_import_helper
_mod = imp.load_module('_imageLib', fp, pathname, description)
File "/global/homes/j/jchiang8/.conda/envs/my_root/opt/lsst/base/python/lsstimport.py", line 102, in imp_load_module
module = orig_imp_load_module(name, *args)
ImportError: libssl.so.10: cannot open shared object file: No such file or directory
>>>
Any suggestions?
@jchiang87 Is openssl installed on Cori (and if so, could you check the version)? Also, what is the version of the OS? @danielsf Where do you build your binaries?
Looks like openssl is there: heatherk@cori10:~> which openssl /usr/bin/openssl heatherk@cori10:~> ls /usr/lib/ssl /usr/lib/libssl.so.0.9.8 /usr/lib/libssl.so.1.0.0 /usr/lib/libssl3.so heatherk@cori10:~> but wrong version?
The OS on Cori is a (cray modified?) version of open suse.
@mjuric Here is the info I could find on the openssl I'm using:
(my_root)[cori11] ls -l libssl*
lrwxrwxrwx 1 jchiang8 jchiang8 75 Apr 12 10:54 libssl.a -> /usr/common/software/python/2.7-anaconda/pkgs/openssl-1.0.2g-0/lib/libssl.a
lrwxrwxrwx 1 jchiang8 jchiang8 15 Apr 12 10:54 libssl.so -> libssl.so.1.0.0*
lrwxrwxrwx 1 jchiang8 jchiang8 82 Apr 12 10:54 libssl.so.1.0.0 -> /usr/common/software/python/2.7-anaconda/pkgs/openssl-1.0.2g-0/lib/libssl.so.1.0.0*
(my_root)[cori11]
As Chris notes, the OS is based on a version of SuSE Linux Enterprise Server distribution.
@heather999, @jchiang87 -- try creating a link to /usr/lib/libssl.so.1.0.0
named libssl.so.10
, and place it somewhere onto the LD_LIBRARY_PATH
where the code can see it. The issue is that RHEL installs the openssl library as libssl.so.10
, rather than libssl.so.1.0.0
( e.g., see an analogous issue at http://askubuntu.com/questions/339364/libssl-so-10-cannot-open-shared-object-file-no-such-file-or-directory). See if that will help.
Also, could you open an issue on http://github.com/mjuric/conda-lsst (the right way to fix this is to link packages requiring OpenSSL against the version distributed with Anaconda)?
OK FWIW I have done this and it works... but for a previous version.
Jim I think maybe the way you are calling it is wrong. Don't do the module setup.
Just do something like this:
set path = (/global/u1/c/cwalter/LSST-Conda/bin $path) ource /global/u1/c/cwalter/LSST-Conda/bin/eups-setups.csh
then which which python you are using and just try python then you can try a setup pipe_tasks or something to make sure you can import things.
Just to be even more explicit: Don't use cori's anaconda setup. First do the anaconda installation yourself. The, install lsat-sims as part of that installation. Use that closed system.
@cwwalter I've been going back and forth wondering if we wanted to install our own shared anaconda at NERSC - but the convenience factor of using theirs had won out in my recent experiments. So.. are you suggesting we should go with our own shared Anaconda python installation if setting up a shared stack install at NERSC? I'm not advocating one way or the other.. just wondering..
Thanks, Chris. I followed the procedure as best I could ascertain it from reading the NERSC documentation on using Anaconda. I'll give your suggestion a try.
@mjuric That symlink got past the openssl linkage problem, but now I see:
ImportError: libcrypto.so.10: cannot open shared object file: No such file or directory
@cwwalter I've been going back and forth wondering if we wanted to install our own shared anaconda at NERSC - but the convenience factor of using theirs had won out in my recent experiments. So.. are you suggesting we should go with our own shared Anaconda python installation if setting up a shared stack install at NERSC?
Hmm... That's how I did it. I would actually be surprised if it worked using the cori shared distribution. Scott built the lsst-sims using his installed anaconda python. You are going to want to use the same system I think. Actually, I don't quite even understand how you installed the lsst-sims packages in your own area using their setup.
In terms of convenience I don't really think there is much of a difference. You just have to do the binary anaconda distribution before you add the channel and do the 'conda install lsst-sim'.
This worked fine for me before. I am using it now. Not promising this will fix the openssl problem with the new version though! :)
For the record, setting a similar symlink for libcrypto.so.10 gets me to the point where the Twinkles unit tests pass. I'll do more tests, but I suspect the cori anaconda can actually work for this.
I think the other reason for having our own contained system is that we may need particular versions of anaconda for our versions of the stack/sims. We can't really control what happens to the cori anaconda. So things might either break from under us, or not be up-to-date enough for a new version we need.
@jchiang87 where does your libcrypto.so.10 point to? Never mind I found it. For fun I installed the conda version at: /project/projectdirs/lsst/lsstDM/Cori/LSST_STACK-conda-2016-04-12 so if you do: source activate /project/projectdirs/lsst/lsstDM/Cori/LSST_STACK-conda-2016-04-12 others could try it out
I do see your point @cwwalter and I don't know yet how often we'll want different or more up to date versions of anaconda. In a conda environment we could potentially install whatever we want... so use the local NERSC anaconda install, but we have our own playground so to speak. I'm certainly open to doing a few different installs to see what we prefer.
@cwwalter -- I think the LSST conda binaries should pull the correct versions of everything they need into the conda environment (if they don't, it's a bug and we need to fix it). So (in theory), there should not be a significant gain from having your own install of anaconda [*].
[*] The only time you may need to do that is if you're using packages that can only be installed into the root environment, and I believe that's only conda-build
, which you don't want to be using anyway :-).
@jchiang87, @heather999 Good to know that the symlinks worked! Could you still open a bug on conda-lsst, so we don't forget to solve this going forward?
sure, will do.
@cwwalter -- I think the LSST conda binaries should pull the correct versions of everything they need into the conda environment (if they don't, it's a bug and we need to fix it). So (in theory), there should not be a significant gain from having your own install of anaconda [*].
Hmm... so how does this actually work? You declare your own environment and it installs everything it needs there? Somehow if you didn't explicitly install it (including through dependencies) it can fall back on the other environment on cori?
@jchiang87 I'm sure it's documented somewhere .. can you point me to how one runs the Twinkles unit tests?
@heather999 We're still sorting out the documentation on setting up the environment (#189).
This is what I did (after setting up lsst_apps):
cd <Twinkles repo>
eups declare -r . Twinkles $USER
setup Twinkles
nosetests
It will skip the db tests if you don't have a mysql server running, but that is by design.
@cwwalter: I think it's a matter of passing the --prefix
flag to conda create
to create an environment in a directory that's writable to you. Here's an example (run on my mac, but should apply everywhere):
[mjuric@D-69-91-143-158 ~]$ conda create --prefix $HOME/foo lsst-galsim
Fetching package metadata: ........
Solving package specifications: .........
Package plan for installation in environment /Users/mjuric/foo:
The following NEW packages will be INSTALLED:
eups: 2.0.2-0
lsst-boost: 1.59.5-0
lsst-fftw: 3.3.4.2-0
lsst-galsim: 1.3.2-0
lsst-product-configs: 1.0.1925-0
lsst-pyfits: 3.4.0.post2-0
lsst-python-d2to1: 0.2.12.1-0
lsst-scons: 2.3.5-1
lsst-stsci-distutils: 0.3.7.1.post1-b22a065_0
lsst-tmv: 0.72.4-0
nomkl: 1.0-0
numpy: 1.11.0-py27_nomkl_0 [nomkl]
openssl: 1.0.2g-0
pip: 8.1.1-py27_1
python: 2.7.11-0
readline: 6.2-2
setuptools: 20.6.7-py27_0
sqlite: 3.9.2-0
tk: 8.5.18-0
wheel: 0.29.0-py27_0
zlib: 1.2.8-0
Proceed ([y]/n)? y
Linking packages ...
[ COMPLETE ]|##########################################################################################| 100%
#
# To activate this environment, use:
# $ source activate /Users/mjuric/foo
#
# To deactivate this environment, use:
# $ source deactivate
#
[mjuric@D-69-91-143-158 ~]$ source activate /Users/mjuric/foo
discarding /Users/mjuric/projects/lsst_packaging_conda/miniconda/bin from PATH
prepending /Users/mjuric/foo/bin to PATH
(/Users/mjuric/foo)[mjuric@D-69-91-143-158 ~]$ source '/Users/mjuric/foo/bin/eups-setups.sh'
(/Users/mjuric/foo)[mjuric@D-69-91-143-158 ~]$ setup galsim
(/Users/mjuric/foo)[mjuric@D-69-91-143-158 ~]$ python
Python 2.7.11 |Continuum Analytics, Inc.| (default, Dec 6 2015, 18:57:58)
[GCC 4.2.1 (Apple Inc. build 5577)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
Anaconda is brought to you by Continuum Analytics.
Please check out: http://continuum.io/thanks and https://anaconda.org
>>> import galsim
>>>
Note how it pulled in python
, numpy
, etc.., including setting up the nomkl
versions.
@heather999 I'm getting this:
[cori11] source /project/projectdirs/lsst/lsstDM/Cori/LSST_STACK-conda-2016-04-12/bin/eups-setups.sh
[cori11] setup lsst_apps
Unable to find an acceptable version of lsst_apps
[cori11] setup lsst-apps
Unable to find an acceptable version of lsst-apps
[cori11] eups list lsst_apps
eups list: [Errno 13] Permission denied: '/project/projectdirs/lsst/lsstDM/Cori/LSST_STACK-conda-2016-04-12/var/opt/eups/ups_db/cfitsio/b2003.chain'
[cori11]
@mjuric Ah I see. So really the only thing you are using is the hosts 'conda' executable itself. Anything you need needs to be put in your new environment anyway right? It can't access the "default" environment anymore.
@mjuric One more slightly off-topic question.. I went to add lsst-sims to the conda environment I already installed lsst-apps, it did warn me about pulling in a different tag of numpy:
numpy: 1.11.0-py27_0 --> 1.11.0-py27_nomkl_0
Is there any reason to be concerned if lsst-apps and lsst-sims are looking for different versions of numpy? even if only slightly different..
Thanks for trying @jchiang87 I'm poking around the group permissions..
@jchiang87 this might be why: ls -l /project/projectdirs/lsst/lsstDM/Cori/LSST_STACK-conda-2016-04-12/var/opt/eups/ups_db/cfitsio/ total 128 -rw-rw-r-- 1 heatherk lsst 411 Apr 12 13:01 3360.lsst4.version lrwxrwxrwx 1 heatherk lsst 104 Apr 12 13:01 b2003.chain -> /global/homes/h/heatherk/.conda/envs/.pkgs/lsst-cfitsio-3360.4-0/var/opt/eups/ups_db/cfitsio/b2003.chain lrwxrwxrwx 1 heatherk lsst 104 Apr 12 13:01 conda.chain -> /global/homes/h/heatherk/.conda/envs/.pkgs/lsst-cfitsio-3360.4-0/var/opt/eups/ups_db/cfitsio/conda.chain lrwxrwxrwx 1 heatherk lsst 106 Apr 12 13:01 current.chain -> /global/homes/h/heatherk/.conda/envs/.pkgs/lsst-cfitsio-3360.4-0/var/opt/eups/ups_db/cfitsio/current.chain
I think this is related to a question I had for @mjuric back some weeks ago about setting up a shared conda installation in a new environment - it appeared that some bits were in my home directory... so.. hmm.. this might be demonstrating the limits of my "conda install" knowledge.. Is there something I should be doing beyond a naive: conda create -m -c http://eupsforge.net/conda/dev -p /project/projectdirs/lsst/lsstDM/Cori/LSST_STACK-conda-2016-04-12 lsst-apps
@mjuric The OSX binaries are built on my laptop; the Linux binaries are built on lsst-dev
@heather999 -- the numpy
changes you're seeing are unfortunate but tough to avoid -- Continuum rebuilt numpy & co. with a MKL backend. MKL provides an (incomplete) implementation of BLAS and FFTW, and that implementation uses exactly the same symbols (function names) as do the regular ones. So once our code (that's been built against FFTW proper) gets loaded into the same address space with numpy (which loads the MKL implementation of BLAS, FFTW, etc), all sorts of symbol collisions and nasty things begin happening, resulting in a crash. So right now you have to acquiesce to 'nomkl' variants of all packages to be able to run (or even build) the stack :(
P.S.: Pure Python code is unaffected by any of this.
@heather999 And lsst-sims
will also pick up the nomkl
versions from now on, so there should be no need to worry.
In general, we're striving for conda install lsst-XXX
to always does the Right Thing (tm) so there's no need to futz around with anything else.
Thanks, @mjuric - that helps a lot. I guess I'm wondering.. why didn't that version of numpy (1.11.0-py27_nomkl_0) get pulled in when I installed lsst-apps initially? To be more clear.. initially I created the conda environment and installed lsst-apps (which installed numpy: 1.11.0-py27_0) .. then I went to install lsst-sims, and I was prompted that numpy would be updated. Wouldn't they both be looking for the same "nomkl"? Maybe I need to read the links you kindly provided! I'll take a peek.
I'm guessing the lsst-apps
build that you had installed is an old one (which channel did they come from?). Those don't get updated regularly, unfortunately (it's a resource issue -- we need a person to make those builds, and everyone's busy with other things right now). In this particular case, I suspect that w/o the nomkl
versions that older code may not even run any more. If you get a chance, try python -c 'import lsst.afw.image
(in an environ that doesn't have the nomkl
feature turned on); I think that used to crash it.
Because of that, conda
releases are primarily sims focused -- @danielsf is doing a great job putting them out whenever there's a new sims release. I'm poking around for resources to see if we can put out all of lsst-distrib
at the same time as well.
I'm using the same dev channel for both apps and sims, so i thought i was getting a fairly new lsst-apps. http://eupsforge.net/conda/dev
No complaints from me! Maintaining binary installations is no small task and it's greatly appreciated.
the lsst_apps installed on the dev channel should have come from the same build as lsst_sims (we have recently decided that, to facilitate use by DESC, we would release a version of lsst_apps tagged as 'sims' and built against the same basic libraries as lsst_sims whenever we release lsst_sims). If one pulls in nomkl and the other does not, that is odd.
the lsst_apps installed on the dev channel should have come from the same build as lsst_sims (we have recently decided that, to facilitate use by DESC, we would release a version of lsst_apps tagged as 'sims'
Awesome!!
If one pulls in nomkl and the other does not, that is odd.
Yup. I can't reproduce this on lsst-dev
, though:
[mjuric@lsst-dev ~]$ conda create --prefix foo --channel http://eupsforge.net/conda/dev lsst-apps
Fetching package metadata: ......
Solving package specifications: ...........
Package plan for installation in environment /nfs/home/mjuric/foo:
The following packages will be downloaded:
package | build
---------------------------|-----------------
nomkl-1.0 | 0 402 B
pixman-0.32.6 | 0 2.4 MB
openblas-0.2.14 | 4 3.6 MB
eups-2.0.2 | 0 669 KB
numpy-1.11.0 | py27_nomkl_0 6.2 MB
pytz-2016.3 | py27_0 178 KB
setuptools-20.6.7 | py27_0 452 KB
cairo-1.12.18 | 6 594 KB
cycler-0.10.0 | py27_0 11 KB
lsst-cfitsio-3360.4 | 0 3.4 MB
lsst-doxygen-1.8.5.1 | 0 3.0 MB
lsst-eigen-3.2.5.1 | 70497dd_0 438 KB
lsst-fftw-3.3.4.2 | 0 1.8 MB
lsst-gsl-1.16.3 | 0 6.9 MB
lsst-mariadbclient-0.10.1.11.2| 0 27.3 MB
lsst-minuit2-5.28.00.2.1 | dae2fb7_0 7.7 MB
lsst-product-configs-1.0.1925| 0 7 KB
lsst-python-d2to1-0.2.12.1 | 0 44 KB
lsst-xpa-2.1.15.3 | 0 616 KB
pip-8.1.1 | py27_1 1.5 MB
python-dateutil-2.5.2 | py27_0 236 KB
lsst-boost-1.59.5 | 0 13.5 MB
lsst-esutil-0.5.3 | 0 1.2 MB
lsst-mysqlpython-1.2.3.1.1.post6| 120147b_0 103 KB
lsst-scons-2.3.5 | 0 753 KB
lsst-stsci-distutils-0.3.7.1.post1| b22a065_0 41 KB
lsst-wcslib-5.13.1 | 0 3.2 MB
pycairo-1.10.0 | py27_0 81 KB
pyqt-4.11.4 | py27_1 3.5 MB
lsst-astrometry-net-0.50.2.post6| 0 25.6 MB
lsst-pyfits-3.4.0.post2 | 0 2.0 MB
lsst-sconsutils-w.2016.15 | 0 211 KB
matplotlib-1.5.1 | np111py27_0 8.2 MB
lsst-astrometry-net-data-0.10.0.post68| 0 1.7 MB
lsst-base-w.2016.15 | 0 4.2 MB
lsst-geom-w.2016.15 | 0 183 KB
lsst-psfex-w.2016.15 | 0 2.4 MB
lsst-ndarray-w.2016.15 | 0 10.8 MB
lsst-pex-exceptions-w.2016.15| 0 5.3 MB
lsst-utils-w.2016.15 | 0 5.4 MB
lsst-daf-base-w.2016.15 | 0 7.9 MB
lsst-pex-logging-w.2016.15 | 0 6.4 MB
lsst-pex-policy-w.2016.15 | 0 7.7 MB
lsst-daf-persistence-w.2016.15| 0 41.2 MB
lsst-pex-config-w.2016.15 | 0 2.8 MB
lsst-afw-w.2016.15 | 0 162.4 MB
lsst-display-ds9-w.2016.15 | 0 2.1 MB
lsst-shapelet-w.2016.15 | 0 17.2 MB
lsst-skymap-w.2016.15 | 0 252 KB
lsst-skypix-w.2016.15 | 0 145 KB
lsst-daf-butlerutils-w.2016.15| 0 27.9 MB
lsst-obs-test-w.2016.15 | 0 38.9 MB
lsst-pipe-base-w.2016.15 | 0 294 KB
lsst-coadd-utils-w.2016.15 | 0 4.5 MB
lsst-coadd-chisquared-w.2016.15| 0 3.6 MB
lsst-meas-base-w.2016.15 | 0 18.6 MB
lsst-meas-algorithms-w.2016.15| 0 26.4 MB
lsst-ip-isr-w.2016.15 | 0 5.1 MB
lsst-meas-astrom-w.2016.15 | 0 27.3 MB
lsst-meas-deblender-w.2016.15| 0 7.8 MB
lsst-meas-extensions-psfex-w.2016.15| 0 5.7 MB
lsst-ip-diffim-w.2016.15 | 0 17.9 MB
lsst-pipe-tasks-w.2016.15 | 0 9.9 MB
lsst-meas-modelfit-w.2016.15| 0 23.4 MB
lsst-obs-lsstsim-w.2016.15 | 0 21.1 MB
lsst-obs-sdss-w.2016.15 | 0 4.9 MB
lsst-apps-w.2016.15 | 0 20 KB
------------------------------------------------------------
Total: 647.0 MB
The following NEW packages will be INSTALLED:
cairo: 1.12.18-6
cycler: 0.10.0-py27_0
eups: 2.0.2-0
fontconfig: 2.11.1-5
freetype: 2.5.5-0
libgcc: 4.8.5-1
libgfortran: 3.0-0
libpng: 1.6.17-0
libxml2: 2.9.2-0
lsst-afw: w.2016.15-0
lsst-apps: w.2016.15-0
lsst-astrometry-net: 0.50.2.post6-0
lsst-astrometry-net-data: 0.10.0.post68-0
lsst-base: w.2016.15-0
lsst-boost: 1.59.5-0
lsst-cfitsio: 3360.4-0
lsst-coadd-chisquared: w.2016.15-0
lsst-coadd-utils: w.2016.15-0
lsst-daf-base: w.2016.15-0
lsst-daf-butlerutils: w.2016.15-0
lsst-daf-persistence: w.2016.15-0
lsst-display-ds9: w.2016.15-0
lsst-doxygen: 1.8.5.1-0
lsst-eigen: 3.2.5.1-70497dd_0
lsst-esutil: 0.5.3-0
lsst-fftw: 3.3.4.2-0
lsst-geom: w.2016.15-0
lsst-gsl: 1.16.3-0
lsst-ip-diffim: w.2016.15-0
lsst-ip-isr: w.2016.15-0
lsst-mariadbclient: 0.10.1.11.2-0
lsst-meas-algorithms: w.2016.15-0
lsst-meas-astrom: w.2016.15-0
lsst-meas-base: w.2016.15-0
lsst-meas-deblender: w.2016.15-0
lsst-meas-extensions-psfex: w.2016.15-0
lsst-meas-modelfit: w.2016.15-0
lsst-minuit2: 5.28.00.2.1-dae2fb7_0
lsst-mysqlpython: 1.2.3.1.1.post6-120147b_0
lsst-ndarray: w.2016.15-0
lsst-obs-lsstsim: w.2016.15-0
lsst-obs-sdss: w.2016.15-0
lsst-obs-test: w.2016.15-0
lsst-pex-config: w.2016.15-0
lsst-pex-exceptions: w.2016.15-0
lsst-pex-logging: w.2016.15-0
lsst-pex-policy: w.2016.15-0
lsst-pipe-base: w.2016.15-0
lsst-pipe-tasks: w.2016.15-0
lsst-product-configs: 1.0.1925-0
lsst-psfex: w.2016.15-0
lsst-pyfits: 3.4.0.post2-0
lsst-python-d2to1: 0.2.12.1-0
lsst-scons: 2.3.5-0
lsst-sconsutils: w.2016.15-0
lsst-shapelet: w.2016.15-0
lsst-skymap: w.2016.15-0
lsst-skypix: w.2016.15-0
lsst-stsci-distutils: 0.3.7.1.post1-b22a065_0
lsst-utils: w.2016.15-0
lsst-wcslib: 5.13.1-0
lsst-xpa: 2.1.15.3-0
matplotlib: 1.5.1-np111py27_0
nomkl: 1.0-0
numpy: 1.11.0-py27_nomkl_0 [nomkl]
openblas: 0.2.14-4
openssl: 1.0.2g-0
pcre: 8.31-0
pip: 8.1.1-py27_1
pixman: 0.32.6-0
pycairo: 1.10.0-py27_0
pyparsing: 2.0.3-py27_0
pyqt: 4.11.4-py27_1
python: 2.7.11-0
python-dateutil: 2.5.2-py27_0
pytz: 2016.3-py27_0
pyyaml: 3.11-py27_1
qt: 4.8.7-1
readline: 6.2-2
setuptools: 20.6.7-py27_0
sip: 4.16.9-py27_0
six: 1.10.0-py27_0
sqlite: 3.9.2-0
swig: 3.0.2-0
tk: 8.5.18-0
wheel: 0.29.0-py27_0
yaml: 0.1.6-0
zlib: 1.2.8-0
Proceed ([y]/n)?
@heather999 -- is it reproducible on cori?
I was wondering when the next DMstack release would come along. Do we have any guidance or requests to offer @jchiang87? Anyone else? https://community.lsst.org/t/do-we-know-when-winter2016-will-be-released/655