Closed amisk closed 5 years ago
With version 1.10 HDF5 became a lot stricter regarding file locks, especially strictly only one read/write lock (but multiple read-only locks are allowed).
Are you using a recent version of DPPP? They updated it in one commit by opening them as read-only for applycal steps. Otherwise maybe you need to compile HDF5 to allow parallel access (I compile mine with --enable-fortran --enable-cxx --enable-threadsfafe --enable-unsupported
and that seems to work, but I use 1.8 still).
I installed hdf5 directly through the package manager of ubuntu. I can probably just revert to an earlier version. Would that be enough or would I need to recompile casacore and the Lofar Trunk in which NDPPP is in?
Ok, the ubuntu repository only has 1.10..
Hmm, yeah I install HDF5 manually (old system). I do know NDPPP has recently (after LOFAR 3.2.4 I think?) been split off to a standalone version and is no longer (supported) in the LOFAR trunk: https://github.com/lofar-astron/DP3 I have run prefactor succesfully with it, so it might be worth a try, if you don't mind compiling it yourself.
I installed hdf5 1.8.18, but when I try to compile the trunk it keeps telling me that it does not find HDF5. "Could NOT find HDF5 (missing: HDF5_INCLUDE_DIRS)"
I tried suppling it with -HDF5_ROOT_DIR=/usr/local/HDF_Group/HDF5/1.8.18 and some variations on it.
OT: On the other hand, I would like to use the new DP3. But this does not include genericpipeline.py which I need for prefactor. Somebody wrote somewhere (sorry, bad memory) that DP3 and the beam library would be enough for prefactor, but where do I get genericpipeline.py from if I go that route? (Also, in this git it says in the requirements that the full lofar software would be necessary?)
I set
export CMAKE_PREFIX_PATH=/path/to/hdf5
export LD_LIBRARY_PATH=/path/to/hdf5/lib/:$LD_LIBRARY_PATH
before compiling the LOFAR software.
but where do I get genericpipeline.py from if I go that route? (Also, in this git it says in the requirements that the full lofar software would be necessary?)
Same problem here. A standalone genericpipeline would be super awesome. You don't need the full LOFAR software in my experience though, I compile a bare minimum of -DBUILD_PACKAGES="MS pystationresponse ParmDB pyparmdb Pipeline"
to get the genericpipeline and some other stuff, but that's all I install. DP3 and beam library I get from their respective github repositories, and it all seems to work fine for me. The only thing you need is ln -s /path/to/DPPP/bin/DPPP /path/to/lofar/install/bin/NDPPP
, because the pipeline will still look for them in the LOFAR install directory.
This does not work ... cmake finds hdf5, but I get
CMake Error: The following variables are used in this project, but they are set to NOTFOUND.
Please set them or make sure they are set and tested correctly in the CMake files:
HDF5_hdf5_LIBRARY_DEBUG (ADVANCED)
linked by target "common" in directory /opt/soft/lofar-stuff/BuildDir/lofarsoft/LOFAR/LCS/Common/src
linked by target "logperf" in directory /opt/soft/lofar-stuff/BuildDir/lofarsoft/LOFAR/LCS/Common/src
linked by target "versioncommon" in directory /opt/soft/lofar-stuff/BuildDir/lofarsoft/LOFAR/LCS/Common/src
with much more "linked by target" entries...
Hmm, maybe some hdf5 things are missing like libhdf5-dev
or something?
I think so. Though I don't see the option to get this if I download the source for 1.8
Ah you're installing HDF5 manually? This is my install line:
mkdir -p $INSTALLDIR/hdf5
cd $INSTALLDIR/hdf5 && wget https://support.hdfgroup.org/ftp/HDF5/releases/hdf5-1.8/hdf5-1.8.21/src/hdf5-1.8.21.tar.gz && tar xf hdf5*.tar.gz
cd hdf5* && ./configure --prefix=$INSTALLDIR/hdf5 --enable-fortran --enable-cxx --enable-threadsfafe --enable-unsupported && $make -j $J && make install
We're on CentOS 7 though, so I don't know if Ubuntu may be a bit different.
Ok, compilation appears to have been succesfull... lets see.
when starting the genericpipeline it complains that the module "executable_args" is not found. I added lofarroot/lib/python2.7/site-packages/lofarpipe/recipes/nodes/ and lofarroot/lib/python2.7/site-packages/lofarpipe/recipes/master/ to PYTHONPATH, but is still will not find it ...
What if you just add lofarroot/lib/python2.7/site-packages
to the PYTHONPATH (then you should have everything, instead of manually specifying all subfolders).
Is it really not finding "exectuable_args" or is it not finding the executable it's supposed to launch?
Just giving sitepackages is not enough. It previously complained about not finding PipelineStep_createMapfile.py, and when I set pythonpath to lofarroot/lib/python2.7/site-packages/lofarpipe/recipes/plugins/ the pipeline found it.
This looks to me like it just does not find the appriopriate module.
2019-03-04 19:40:44 INFO genericpipeline: Beginning step check_Ateam_separation
2019-03-04 19:40:45 INFO genericpipeline: Running task: pythonplugin
2019-03-04 19:40:45 ERROR genericpipeline: Exception caught: No module named executable_args
Traceback (most recent call last):
File "/opt/soft/lofar-stuff/lib/python2.7/site-packages/lofarpipe/cuisine/cook.py", line 32, in __init__
module_details = imp.find_module(task.lower(), recipe_path)
ImportError: No module named executable_args
2019-03-04 19:40:45 WARNING genericpipeline: pythonplugin reports failure (using executable_args recipe)
2019-03-04 19:40:45 ERROR genericpipeline: *******************************************
2019-03-04 19:40:45 ERROR genericpipeline: Failed pipeline run: Pre-Facet-Calibrator
2019-03-04 19:40:45 ERROR genericpipeline: Detailed exception information:
2019-03-04 19:40:45 ERROR genericpipeline: <class 'lofarpipe.support.lofarexceptions.PipelineRecipeFailed'>
2019-03-04 19:40:45 ERROR genericpipeline: pythonplugin failed
2019-03-04 19:40:45 ERROR genericpipeline: *******************************************
2019-03-04 19:40:45 ERROR genericpipeline: LOFAR Pipeline finished unsuccesfully.
2019-03-04 19:40:45 WARNING genericpipeline: recipe genericpipeline completed with errors
It previously complained about not finding PipelineStep_createMapfile.py
That's usually a sign of the pipeline.cfg
missing some information (e.g. for the recipes_directories).
Oh indeed. the pythonpath in the pipeline pointed at lofarroot/lib64. This was always present, but not now... (because for some reason I forgot to install python-casacore. Stupid)
Ok, next one. Sorry, for the questions which by now are unrelated to the first one :) Instead of the "offline" installation I used yours. But now NDPPP is missing. I installed DP3 which creates DPPP. I guess its the same? Can I just symlink it?
It seems that prefactor is hardcoded to use NDPPP.
No worries, I know the pain :P Yeah the pipeline is hardcoded to search for lofar/bin/NDPPP
as far as a I know, so like you say I just symlinked it to the DPPP
executable that DP3 gives.
Ok. It runs. Althoug I get this message
2019-03-05 10:47:47 WARNING node.slurm17.executable_args.L643651_SB014_uv.MS: /opt/soft/lofar-stuff/bin/NDPPP stderr:
*** WARNING: the following parset keywords were not used ***
maybe they are misspelled
[aoflag.keepstatistics,aoflag.memoryperc,aoflag.type,demix.demixfreqstep,demix.demixtimestep,demix.freqstep,demix.ignoretarget,demix.instrumentmodel,demix.ntimechunk,demix.skymodel,demix.subtractsources,demix.targetsource,demix.timest
ep,demix.type,flagedge.chan,flagedge.type]
I guess that was something that NDPPP had but is no longer in DPPP.
That's normal. It's just warning you that those steps are not in the steps
parameter. Those options are enabled/disabled depending on what's given near the top of the parset:
since demix_step
is turned off and initial_flagging
is set to default_flagging
, the aoflag
, flagedge
and demix
sub-steps are skipped.
Thanks. Again forgot to change the open file limit .. but now it appears to be still running :)
If this is working for the calibrator and the target later, I assume that the installation succeed and I could happily provide an install script for the latest software for Ubuntu based systems, in case somebody is interested.
@amisk This would be pretty helpul. We could provide such an installation instruction in the prefactor documentation.
Hi,
I am running prefactor now from a fresh install, and in the calibrator pipeline at one point I get
Never mind the numbers before every line, they are from "less".
Any suggestions?
and why are the files called H5FD...