Skip to main content

C++ IO and Preprocessing package for sparse neutrino data, with H5 for IO and python bindings.

Reason this release was yanked:

Broken - missing new files.

Project description

Build Status license

LArCV (Version 3)

Software framework for image(2D)/volumetric(3D) data processing with APIs to interface deep neural network open-source softwares, written in C++ with extensive Python supports. Originally developed for analyzing data from time-projection-chamber (TPC). It is now converted to be a generic tool to handle 2D-projected images and 3D-voxelized data. LArCV is particularly suitable for sparse data processing.

Installation

You can install larcv through pypi: pip install larcv and it should work. You can also build from source:

git clone https://github.com/DeepLearnPhysics/larcv3.git
cd larcv3
git submodule update --init  # Pulls pybind11 subpackage
python setup.py build [-j 12] # Optional parallel build for faster compilation
python setup.py install [--user | -prefix ${INSTALLATION_DIR} ] 

To verify your larcv installation, after install has completed:

cd larcv3/tests
py.test .

Dependencies

  • Python
  • Numpy
  • HDF5 (for IO)
  • cmake (for building)
  • scikit-build (for installation)
  • pytest (for continuous integration)

HDF5 and cmake can all be installed by package managers. Conda will also work.

For compilation, a gcc > 4.8 is required. GCC versions 5 to 8 are all known to work, as is clang on MacOS.

To install requirements on ubuntu, you can do: sudo apt-get install cmake libhdf5-serial-dev python-dev pip install numpy scikit-build pytest

To install requirements on mac, you can do: sudo port install cmake hdf5 pip install numpy scikit-build pytest

To install in a generic system, you can try conda or a virtual environment. It has been shown to work on many linux distributions.

Compatibility

larcv3 works on mac and many flavors of linux. It has never been tested on windows as far as I know. If you try to install and need help, please open an Issue.

Use Cases

Larcv is predominantly used as an IO framework and data preprocessing tool for machine learning and deep learning. It has run on many systems and in many scenarios. Larcv has a suite of test cases available that test the serialization, read back, threaded IO tools, and distributed IO tools.

Larcv has run on some of the biggest systems in the world, including Summit (ORNL) and Theta (ANL). It has been used for distributed io of sparse, non-uniform data up to hundreds of CPUs/GPUs, and had good performance.

If you would like to use larcv for your application and want to benchmark the performance, you are welcome to use the larcv3 open dataset (more info on deeplearnphysics.org) and if you would like help, open an issue or contact the authors directly.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

larcv-3.4.0.tar.gz (808.3 kB view details)

Uploaded Source

File details

Details for the file larcv-3.4.0.tar.gz.

File metadata

  • Download URL: larcv-3.4.0.tar.gz
  • Upload date:
  • Size: 808.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.6.4 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.2 CPython/3.8.6

File hashes

Hashes for larcv-3.4.0.tar.gz
Algorithm Hash digest
SHA256 db673a7ba61a694884eb22552b0d288014864518eb3b19d8b0bf57c03113f6ef
MD5 6c52e4e66c7870ad1ecab10d58a02207
BLAKE2b-256 0497eabec5e942d8b254313e4c700e14f059c8c740f681090eb53f201f2a055c

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page