Skip to main content

dlg-nifty-components

codecov CI Code style: black

dlg-nifty-components contains a collection of cpu and gpu nifty gridding/degridding implementations for radio interferometry datasets.

Installation

There are multiple options for the installation, depending on how you are intending to run the DALiuGE engine, directly in a virtual environment (host) or inside a docker container. You can also install it either from PyPI (latest released version).

Install it from PyPI

Prerequisites

The following packages are required before installation such that dlg-nifty-components can compile it's dependencies:

  • g++
  • python3-dev
  • numpy
  • cuda-libraries-dev

DALiuGE Engine Python App in Docker Container

For development purposes it is preferable to install and run dlg-nifty-components as a python app for fast recompilation of dynamically linked binaries. To do this you must first install a cuda version in daliuge-common or daliuge-engine followed by python-dev, numpy and g++. daliuge-nifty-components will then compile and install wagg for cuda acceleration.

daliuge-common/Dockerfile.dev

RUN apt install -y wget gnupg2 software-properties-common
RUN mkdir -p /code && cd /code && \
    wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2004/x86_64/cuda-ubuntu2004.pin && \
    mv cuda-ubuntu2004.pin /etc/apt/preferences.d/cuda-repository-pin-600 && \
    apt-key adv --fetch-keys https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2004/x86_64/7fa2af80.pub && \
    add-apt-repository "deb https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2004/x86_64/ /" && \
    apt update

RUN DEBIAN_FRONTEND=noninteractive apt -y --no-install-recommends install \
    cuda-minimal-build-11-2 cuda-libraries-11-2 cuda-libraries-dev-11-2 && \
    ln -s /usr/local/cuda-11.2 /usr/local/cuda && \
    ln -s /usr/local/cuda/targets/x86_64-linux/lib /usr/local/cuda/lib && \
    ln -s /usr/local/cuda/targets/x86_64-linux/include /usr/local/cuda/include

daliuge-engine/Dockerfile.dev

RUN apt install -y python3-dev g++

run_engine.sh

# append configured nvidia-docker arguments here, e.g.
DOCKER_OPTS=$DOCKER_OPTS --gpus=all --privileged

dlg-nifty-components may be installed before or after DALiuGE engine is running:

docker exec -t daliuge-engine bash -c 'pip install --prefix=$DLG_ROOT/code dlg_nifty_components'

EAGLE Palette

An EAGLE .palette file can be conveniently generated locally using command:

bash ./build_palatte.sh

Usage

Python

For example the MS2DirtyApp component will be available to the engine when you specify

from daliuge_component_nifty import MS2DirtyApp

MS2DirtyApp('a','a')

in the AppClass field of a Python Branch component. The EAGLE palette associated with these components are also generated and can be loaded directly into EAGLE. In that case all the fields are correctly populated for the respective components.

DALiuGE Docker App

Optionallyb uild the container image for use as a daliuge docker app:

docker build -t dlg-nifty-components -f ./Containerfile .

Metadata

Release files for dlg-nifty-components 1.1.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for dlg-nifty-components 1.1.0
File Size Uploaded Provenance Actions
dlg_nifty_components-1.1.0.tar.gz 10.1 kB Without provenance Details for dlg_nifty_components-1.1.0.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for dlg-nifty-components 1.1.0
File Interpreter ABI Platform Actions
dlg_nifty_components-1.1.0-py3-none-any.whl Python 3 none any Details for dlg_nifty_components-1.1.0-py3-none-any.whl

Total release size: 21.1 kB

Release files / dlg_nifty_components-1.1.0.tar.gz

Download URL dlg_nifty_components-1.1.0.tar.gz
Size 10.1 kB
Tags Source
SHA-256 checksum
How to use checksums
fd2dad0f24781018b38117cd35bf1bdc06e8a4233f467cf741169f1ac791ad4a
BLAKE2b-256 checksum
How to use checksums
a84811682f143b08946da3eff12ccf8b4ec45a54692f49b555878007f4082297
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.0 CPython/3.9.12

Release files / dlg_nifty_components-1.1.0-py3-none-any.whl

Download URL dlg_nifty_components-1.1.0-py3-none-any.whl
Size 10.9 kB
Tags Python 3
SHA-256 checksum
How to use checksums
9bd78218a246bf50bddd861f241eed4e28e78566d75088132ff05ceca1ab4371
BLAKE2b-256 checksum
How to use checksums
6dde336980f161c12e5b020668827b965a9efe71e408330a17349135d3ac46a4
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.0 CPython/3.9.12

Security for dlg-nifty-components 1.1.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page