Skip to main content

NLCPy is a package for accelerating performance of Python scripts using NumPy on SX-Aurora TSUBASA.

Project description

NLCPy_banner

NLCPy : NumPy-like API accelerated with SX-Aurora TSUBASA

GitHub license Downloads Python Versions

NLCPy is a library for accelerating performance of Python scripts using NumPy on SX-Aurora TSUBASA. Python programmers can use this library on Linux/x86 of SX-Aurora TSUBASA. NLCPy's API is designed based on NumPy's one. The current version provides a subset of NumPy's API.

Requirements

Before the installation, the following components are required to be installed on your x86 Node of SX-Aurora TSUBASA.

  • NEC SDK

    • required NEC C/C++ compiler version: >= 5.0.0
    • required NLC version: >= 3.0.0
  • Alternative VE Offloading (AVEO)

    • required version: >= 3.0.2

    • If you install NLCPy from wheel, the runtime packages of Alternative VE Offloading(AVEO) are required.

      # yum install veoffload-aveo veoffload-aveorun-ve1 veoffload-aveorun-ve3
      
    • If you install NLCPy from source, the development packages of Alternative VE Offloading(AVEO) are required.

      # yum install veoffload-aveo-devel veoffload-aveorun-ve1-devel veoffload-aveorun-ve3-devel
      
  • veosinfo3

    # yum install veosinfo3
    
  • Python - required version: 3.6, 3.7, or 3.8

  • NumPy - required version: >= v1.17

Install from wheel

You can install NLCPy by executing either of following commands.

  • Install from PyPI

    $ pip install nlcpy
    
  • Install from your local computer

    1. Download the wheel package from GitHub.

    2. Put the wheel package to your any directory.

    3. Install the local wheel package via pip command.

      $ pip install <path_to_wheel>
      

The shared objects for Vector Engine, which are included in the wheel package, are tested by using NEC C/C++ Compiler Version 5.0.0 and NumPy v1.19.5.

Install from source (with building)

Before building source files, please install following packages.

$ pip install numpy cython wheel
$ sudo yum install veosinfo3-devel
$ sudo yum install veoffload-aveo-devel veoffload-aveorun-ve1-devel veoffload-aveorun-ve3-devel

And, entering these commands in the environment where gcc and ncc commands are available.

$ git clone https://github.com/SX-Aurora/nlcpy.git
$ cd nlcpy
$ python3 setup.py build_ext --targ ve1,ve3,vh
$ python3 setup.py intall --targ ve1,ve3,vh

Documentation

License

The BSD-3-Clause license (see LICENSE file).

NLCPy is derived from NumPy, CuPy, PyVEO, and numpydoc (see LICENSE_DETAIL/LICENSE_DETAIL file).

Project details


Download files

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

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

nlcpy-3.0.0-cp38-cp38-manylinux1_x86_64.whl (12.0 MB view details)

Uploaded CPython 3.8

nlcpy-3.0.0-cp37-cp37m-manylinux1_x86_64.whl (10.9 MB view details)

Uploaded CPython 3.7m

nlcpy-3.0.0-cp36-cp36m-manylinux1_x86_64.whl (11.0 MB view details)

Uploaded CPython 3.6m

File details

Details for the file nlcpy-3.0.0-cp38-cp38-manylinux1_x86_64.whl.

File metadata

  • Download URL: nlcpy-3.0.0-cp38-cp38-manylinux1_x86_64.whl
  • Upload date:
  • Size: 12.0 MB
  • Tags: CPython 3.8
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.8.2 readme-renderer/34.0 requests/2.26.0 requests-toolbelt/0.9.1 urllib3/1.26.7 tqdm/4.62.3 importlib-metadata/4.11.3 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.9.7

File hashes

Hashes for nlcpy-3.0.0-cp38-cp38-manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 0eced4575adb20fa7d406da5da7ed15fc68099fcb8afe6a67f6b660dbb4776e6
MD5 a32e2c8cb753cc47839b51fb085004cf
BLAKE2b-256 9f1092f6da63b8ed8cb0ff013f34ff2f1ed1fb786840cba00fa2f0eb13d4f235

See more details on using hashes here.

File details

Details for the file nlcpy-3.0.0-cp37-cp37m-manylinux1_x86_64.whl.

File metadata

  • Download URL: nlcpy-3.0.0-cp37-cp37m-manylinux1_x86_64.whl
  • Upload date:
  • Size: 10.9 MB
  • Tags: CPython 3.7m
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.8.2 readme-renderer/34.0 requests/2.26.0 requests-toolbelt/0.9.1 urllib3/1.26.7 tqdm/4.62.3 importlib-metadata/4.11.3 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.9.7

File hashes

Hashes for nlcpy-3.0.0-cp37-cp37m-manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 758401d2e03412f4ad31076c9420244e17a6f96654a25c4e07df0612bec32059
MD5 5f1a35ac9a305c3c309cf37bb8c2865d
BLAKE2b-256 4d45c987538e700a9f83b6d8249d1e73242b0457586cf1f5ed776d1e6fe00f21

See more details on using hashes here.

File details

Details for the file nlcpy-3.0.0-cp36-cp36m-manylinux1_x86_64.whl.

File metadata

  • Download URL: nlcpy-3.0.0-cp36-cp36m-manylinux1_x86_64.whl
  • Upload date:
  • Size: 11.0 MB
  • Tags: CPython 3.6m
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.8.2 readme-renderer/34.0 requests/2.26.0 requests-toolbelt/0.9.1 urllib3/1.26.7 tqdm/4.62.3 importlib-metadata/4.11.3 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.9.7

File hashes

Hashes for nlcpy-3.0.0-cp36-cp36m-manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 bc1d08118bf502ca628c49a17593aeb8b0e4b088ed614013c6cf1e8906ed8371
MD5 e6d1c988249bc6975606522cc1811b16
BLAKE2b-256 d9aafc8d77f8b4a41c13672c95bf0f74b605984a3fb0bba1e2927ffbd708cbc2

See more details on using hashes here.

Supported by

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