Skip to main content
PyPI PyPI - Wheel PyPI - Python Version GitHub Workflow Status

We should forget about small efficiencies, say about 97% of the time: premature optimization is the root of all evil [1].

numpy-api-bench is a small Python package comparing speed differences between NumPy’s Python and C APIs that also serves as an example project for writing C extension modules that make use of the NumPy C API [2].

Installation

From source

Linux, Mac, and Windows binary wheels have been built from source on Github Actions runners using the excellent cibuildwheel tool, which eases the process of building binary wheels from compiled code for different platforms. cibuildwheel especially helps with building manylinux wheels.

To build locally, you will need numpy>=1.19 and the latest setuptools [3] installed. Your C compiler should be appropriate for your platform, ex. GCC for Linux, MSVC for Windows, but let setuptools do the work.

First, use git clone or download + unzip to get the repo source code and install the requirements with [4]

pip3 install -r install_requires.txt

After you cd into the repository root, you can build the C extensions in-place and install the package files with

make inplace && pip3 install .

If you don’t have or don’t wish to use make, you may instead use

python3 setup.py build_ext --inplace && pip3 install .

From PyPI

64-bit Python 3.6-3.9 binary wheels for Windows, MacOS, manylinux1, and manylinux2010 can be installed from PyPI, with 32-bit wheels for Windows (x86) and Linux (i686) also available. Install with

pip3 install numpy-api-bench

Package contents

The numpy-api-bench package contains a pure Python module and several C extension modules. The pure Python module is npapibench.pyimpl, containing one function that centers and scales to unit variance a numpy.ndarray that is implemented with only one line of numpy-enabled Python code. It is the “benchmark” for the C extension module npapibench.cimpl, which implements a near-identical function by using the NumPy C API. The other C extension modules are part of the npapibench.functimer subpackage, which provides a callable API for timing the execution of a function with optional arguments in a timeit-like fashion [5].

On installation, setuptools will also create an entry point titled npapibench to access the benchmarking code. Just typing the name of the entry point in the terminal should produce the timeit-like output

numpy.ndarray shape (40, 5, 10, 10, 20, 5), size 2000000
pyimpl.stdscale -- 10 loops, best of 5: 31.9 msec per loop
 cimpl.stdscale -- 50 loops, best of 5: 13.6 msec per loop

For usage details, try npapibench --help.

Unit tests

Testing internal functions

The unit testing requirements for a C extension module are rather unique. Although one is writing C code, the resulting shared object built by setuptools is loaded by the Python interpreter, so it easier to test Python-accessible functions by using Python unit testing tools. However, it is likely that the C extension module, which by convention is a single file with all members static except the module initialization function, may contain some internal functions that cannot be accessed directly from Python. So far, there does not seem to be a widely accepted approach to unit testing code in Python C extensions, especially these internal C functions.

For this project, in separate C extension modules, I wrote Python wrappers for the internal functions I wanted to test, providing a C API for other extension modules by using the header file and PyCapsule method described in the official tutorial on writing Python C extensions. Then, I wrote unit tests in Python using the pytest API and simply invoked pytest to collect and run all unit tests, as it produces far better unit test output compared to most C unit testing frameworks and is aware of Python objects. If there were any segmentation faults or need to more closely debug, I would just then invoke gdb on the Python interpreter running pytest [6] with

gdb --args python3 -m pytest

Together, pytest and gdb allowed me to hammer out a significant number of bugs.

For users

To run the unit tests in the package, pytest>=6.0.1 must be installed. If installing the wheel from PyPI, you can install pytest as an optional dependency alongside the package code with

pip3 install numpy-api-bench[tests]

The unit tests are located in npapibench.tests and npapibench.functimer.tests and can be run with

pytest --pyargs npapibench.tests && pytest --pyargs npapibench.functimer.tests

Other desired flags can be passed to pytest before the --pyargs flag.

If building from source, follow the steps in From source but replace the final pip3 install . with

pip3 install .[tests]

The unit tests can be run after cding to the repository root by simply calling pytest.

Metadata

Release files for numpy-api-bench 0.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 numpy-api-bench 0.1.0
File Size Uploaded Provenance Actions
numpy-api-bench-0.1.0.tar.gz 34.0 kB Without provenance Details for numpy-api-bench-0.1.0.tar.gz

Built distributions (wheels)

Table of built distributions (wheels) for numpy-api-bench 0.1.0
File Actions
numpy_api_bench-0.1.0-cp39-cp39-win_amd64.whl CPython 3.9 CPython 3.9 Windows x86-64 Details for numpy_api_bench-0.1.0-cp39-cp39-win_amd64.whl
numpy_api_bench-0.1.0-cp39-cp39-win32.whl CPython 3.9 CPython 3.9 Windows x86-32 Details for numpy_api_bench-0.1.0-cp39-cp39-win32.whl
numpy_api_bench-0.1.0-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.whl CPython 3.9 CPython 3.9 Linux glibc 2.5+ x86-64 Details for numpy_api_bench-0.1.0-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.whl
numpy_api_bench-0.1.0-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl CPython 3.9 CPython 3.9 Linux glibc 2.12+ x86-64, Linux glibc 2.5+ x86-64 Details for numpy_api_bench-0.1.0-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl
numpy_api_bench-0.1.0-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.whl CPython 3.9 CPython 3.9 Linux glibc 2.5+ x86-32 Details for numpy_api_bench-0.1.0-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.whl
numpy_api_bench-0.1.0-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl CPython 3.9 CPython 3.9 Linux glibc 2.12+ x86-32, Linux glibc 2.5+ x86-32 Details for numpy_api_bench-0.1.0-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl
numpy_api_bench-0.1.0-cp39-cp39-macosx_10_9_x86_64.whl CPython 3.9 CPython 3.9 macOS 10.9+ x86-64 Details for numpy_api_bench-0.1.0-cp39-cp39-macosx_10_9_x86_64.whl
numpy_api_bench-0.1.0-cp38-cp38-win_amd64.whl CPython 3.8 CPython 3.8 Windows x86-64 Details for numpy_api_bench-0.1.0-cp38-cp38-win_amd64.whl
numpy_api_bench-0.1.0-cp38-cp38-win32.whl CPython 3.8 CPython 3.8 Windows x86-32 Details for numpy_api_bench-0.1.0-cp38-cp38-win32.whl
numpy_api_bench-0.1.0-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.whl CPython 3.8 CPython 3.8 Linux glibc 2.5+ x86-64 Details for numpy_api_bench-0.1.0-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.whl
numpy_api_bench-0.1.0-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl CPython 3.8 CPython 3.8 Linux glibc 2.5+ x86-64, Linux glibc 2.12+ x86-64 Details for numpy_api_bench-0.1.0-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl
numpy_api_bench-0.1.0-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.whl CPython 3.8 CPython 3.8 Linux glibc 2.5+ x86-32 Details for numpy_api_bench-0.1.0-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.whl
numpy_api_bench-0.1.0-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl CPython 3.8 CPython 3.8 Linux glibc 2.12+ x86-32, Linux glibc 2.5+ x86-32 Details for numpy_api_bench-0.1.0-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl
numpy_api_bench-0.1.0-cp38-cp38-macosx_10_9_x86_64.whl CPython 3.8 CPython 3.8 macOS 10.9+ x86-64 Details for numpy_api_bench-0.1.0-cp38-cp38-macosx_10_9_x86_64.whl
numpy_api_bench-0.1.0-cp37-cp37m-win_amd64.whl CPython 3.7 CPython 3.7 pymalloc Windows x86-64 Details for numpy_api_bench-0.1.0-cp37-cp37m-win_amd64.whl
numpy_api_bench-0.1.0-cp37-cp37m-win32.whl CPython 3.7 CPython 3.7 pymalloc Windows x86-32 Details for numpy_api_bench-0.1.0-cp37-cp37m-win32.whl
numpy_api_bench-0.1.0-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.whl CPython 3.7 CPython 3.7 pymalloc Linux glibc 2.5+ x86-64 Details for numpy_api_bench-0.1.0-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.whl
numpy_api_bench-0.1.0-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl CPython 3.7 CPython 3.7 pymalloc Linux glibc 2.12+ x86-64, Linux glibc 2.5+ x86-64 Details for numpy_api_bench-0.1.0-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl
numpy_api_bench-0.1.0-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.whl CPython 3.7 CPython 3.7 pymalloc Linux glibc 2.5+ x86-32 Details for numpy_api_bench-0.1.0-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.whl
numpy_api_bench-0.1.0-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl CPython 3.7 CPython 3.7 pymalloc Linux glibc 2.12+ x86-32, Linux glibc 2.5+ x86-32 Details for numpy_api_bench-0.1.0-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl
numpy_api_bench-0.1.0-cp37-cp37m-macosx_10_9_x86_64.whl CPython 3.7 CPython 3.7 pymalloc macOS 10.9+ x86-64 Details for numpy_api_bench-0.1.0-cp37-cp37m-macosx_10_9_x86_64.whl
numpy_api_bench-0.1.0-cp36-cp36m-win_amd64.whl CPython 3.6 CPython 3.6 pymalloc Windows x86-64 Details for numpy_api_bench-0.1.0-cp36-cp36m-win_amd64.whl
numpy_api_bench-0.1.0-cp36-cp36m-win32.whl CPython 3.6 CPython 3.6 pymalloc Windows x86-32 Details for numpy_api_bench-0.1.0-cp36-cp36m-win32.whl
numpy_api_bench-0.1.0-cp36-cp36m-manylinux_2_5_x86_64.manylinux1_x86_64.whl CPython 3.6 CPython 3.6 pymalloc Linux glibc 2.5+ x86-64 Details for numpy_api_bench-0.1.0-cp36-cp36m-manylinux_2_5_x86_64.manylinux1_x86_64.whl
numpy_api_bench-0.1.0-cp36-cp36m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl CPython 3.6 CPython 3.6 pymalloc Linux glibc 2.5+ x86-64, Linux glibc 2.12+ x86-64 Details for numpy_api_bench-0.1.0-cp36-cp36m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl
numpy_api_bench-0.1.0-cp36-cp36m-manylinux_2_5_i686.manylinux1_i686.whl CPython 3.6 CPython 3.6 pymalloc Linux glibc 2.5+ x86-32 Details for numpy_api_bench-0.1.0-cp36-cp36m-manylinux_2_5_i686.manylinux1_i686.whl
numpy_api_bench-0.1.0-cp36-cp36m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl CPython 3.6 CPython 3.6 pymalloc Linux glibc 2.12+ x86-32, Linux glibc 2.5+ x86-32 Details for numpy_api_bench-0.1.0-cp36-cp36m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl
numpy_api_bench-0.1.0-cp36-cp36m-macosx_10_9_x86_64.whl CPython 3.6 CPython 3.6 pymalloc macOS 10.9+ x86-64 Details for numpy_api_bench-0.1.0-cp36-cp36m-macosx_10_9_x86_64.whl

Total release size: 2.1 MB

Release files / numpy-api-bench-0.1.0.tar.gz

Download URL numpy-api-bench-0.1.0.tar.gz
Size 34.0 kB
Tags Source
SHA-256 checksum
How to use checksums
d49c2f77619423b449d2c3d084577f6e0fa694d306352b432fb1c63124ac4a10
BLAKE2b-256 checksum
How to use checksums
df65184391a08412f42c9132d886dd812150dba96e99db149534ef4a3e51ec60
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.4.2 importlib_metadata/4.6.3 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.0 CPython/3.8.11

Release files / numpy_api_bench-0.1.0-cp39-cp39-win_amd64.whl

Download URL numpy_api_bench-0.1.0-cp39-cp39-win_amd64.whl
Size 49.4 kB
Tags CPython 3.9 Windows x86-64
SHA-256 checksum
How to use checksums
b7ccb0c6bfc70c67434093d7aae38a693a0a01499c5b704155e971656fd1e3bb
BLAKE2b-256 checksum
How to use checksums
bbb25622380567f71f09402ef65afca4a39c6118dcc2a1ddc99a78f380217bf2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.4.2 importlib_metadata/4.6.3 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.0 CPython/3.8.11

Release files / numpy_api_bench-0.1.0-cp39-cp39-win32.whl

Download URL numpy_api_bench-0.1.0-cp39-cp39-win32.whl
Size 46.8 kB
Tags CPython 3.9 Windows x86-32
SHA-256 checksum
How to use checksums
4e746578a80e41e150ec185c3babd7034ea6a38735eaea7ae4ee8deab0d6c8ef
BLAKE2b-256 checksum
How to use checksums
ec1ca8472d66c175a4335bc911cb3879f21f40a6523042181f6742301efce483
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.4.2 importlib_metadata/4.6.3 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.0 CPython/3.8.11

Release files / numpy_api_bench-0.1.0-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.whl

Download URL numpy_api_bench-0.1.0-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.whl
Size 82.8 kB
Tags CPython 3.9 Linux glibc 2.5+ x86-64
SHA-256 checksum
How to use checksums
802810b747c2df92e570e1b7a0c2d9e2099be4e818b88b773835c5937086de2a
BLAKE2b-256 checksum
How to use checksums
8b799c402f54a88edbb3a784e702f127615200ba91dab3f931b9e16068a9f4f4
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.4.2 importlib_metadata/4.6.3 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.0 CPython/3.8.11

Release files / numpy_api_bench-0.1.0-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl

Download URL numpy_api_bench-0.1.0-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl
Size 107.0 kB
Tags CPython 3.9 Linux glibc 2.12+ x86-64 Linux glibc 2.5+ x86-64
SHA-256 checksum
How to use checksums
f24b75f31fe23d6c07dd2dfb4c73e4d2321c3343f2b71071622e867646ba6ba9
BLAKE2b-256 checksum
How to use checksums
05fd63383ea7b982d23748fc5b062bbb8c1c32ca9e83a335f11238bf418bb713
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.4.2 importlib_metadata/4.6.3 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.0 CPython/3.8.11

Release files / numpy_api_bench-0.1.0-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.whl

Download URL numpy_api_bench-0.1.0-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.whl
Size 80.0 kB
Tags CPython 3.9 Linux glibc 2.5+ x86-32
SHA-256 checksum
How to use checksums
dc83d59f37d63b3840719611f89152272633a7d5e546bfc096d661de95b8c9ae
BLAKE2b-256 checksum
How to use checksums
3dfe0f1f0890516d7d085e0978f9d01dbc3fcd20d5b73fca7bb294777d83f230
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.4.2 importlib_metadata/4.6.3 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.0 CPython/3.8.11

Release files / numpy_api_bench-0.1.0-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl

Download URL numpy_api_bench-0.1.0-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl
Size 103.9 kB
Tags CPython 3.9 Linux glibc 2.12+ x86-32 Linux glibc 2.5+ x86-32
SHA-256 checksum
How to use checksums
0d95a30f984e88cebba8c3323990d474ed5a5e6e658ec4ee0ef283612a9481d3
BLAKE2b-256 checksum
How to use checksums
58bbabce0645be687b780f4f045b30db0af1adc375fdcc86169924be160f0bcc
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.4.2 importlib_metadata/4.6.3 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.0 CPython/3.8.11

Release files / numpy_api_bench-0.1.0-cp39-cp39-macosx_10_9_x86_64.whl

Download URL numpy_api_bench-0.1.0-cp39-cp39-macosx_10_9_x86_64.whl
Size 36.3 kB
Tags CPython 3.9 macOS 10.9+ x86-64
SHA-256 checksum
How to use checksums
758766bd9b8a4cc1b59b4cf5e291c3d70747f8dd8a0f22f69ee55b85f64632c5
BLAKE2b-256 checksum
How to use checksums
1b0ac199dfae416d7750cef97903bd194d3463dc386e8b61a824ee152ef5c3a0
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.4.2 importlib_metadata/4.6.3 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.0 CPython/3.8.11

Release files / numpy_api_bench-0.1.0-cp38-cp38-win_amd64.whl

Download URL numpy_api_bench-0.1.0-cp38-cp38-win_amd64.whl
Size 49.3 kB
Tags CPython 3.8 Windows x86-64
SHA-256 checksum
How to use checksums
447b81d0175c81128104f72e19f08e8b885aecb8470b15d15b22b24ea63fbdc0
BLAKE2b-256 checksum
How to use checksums
345326f3aab59dabee91ca2687a678bdf263b50f2e93bbabaafd2dbaaed5d639
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.4.2 importlib_metadata/4.6.3 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.0 CPython/3.8.11

Release files / numpy_api_bench-0.1.0-cp38-cp38-win32.whl

Download URL numpy_api_bench-0.1.0-cp38-cp38-win32.whl
Size 46.8 kB
Tags CPython 3.8 Windows x86-32
SHA-256 checksum
How to use checksums
319eced3f0f596cec178ef648a6a46a47eee3d6a40b56c259fb4b206a6a128b4
BLAKE2b-256 checksum
How to use checksums
0617056f8e114507e236ab4c751473d374765df2b3f8441042f0dae9e54fd63a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.4.2 importlib_metadata/4.6.3 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.0 CPython/3.8.11

Release files / numpy_api_bench-0.1.0-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.whl

Download URL numpy_api_bench-0.1.0-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.whl
Size 85.8 kB
Tags CPython 3.8 Linux glibc 2.5+ x86-64
SHA-256 checksum
How to use checksums
49f94cf68f0ae74a33a4ea13dfe51ef8ae06c3fd3d869e826fa62d2114a57c50
BLAKE2b-256 checksum
How to use checksums
2504d53816a501b69f40fb358ef2b225f61d573a2d71d42db5d982453dfbc2ef
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.4.2 importlib_metadata/4.6.3 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.0 CPython/3.8.11

Release files / numpy_api_bench-0.1.0-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl

Download URL numpy_api_bench-0.1.0-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl
Size 111.2 kB
Tags CPython 3.8 Linux glibc 2.12+ x86-64 Linux glibc 2.5+ x86-64
SHA-256 checksum
How to use checksums
d895371ebf2a2f462df56e7be194a53679ee9c360310afd3e0601b75b1e6c846
BLAKE2b-256 checksum
How to use checksums
dccdb708e2d2458e0cd49fba6ccd8f7e2a4fab0622b1b99d65e2cb9c6e756b39
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.4.2 importlib_metadata/4.6.3 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.0 CPython/3.8.11

Release files / numpy_api_bench-0.1.0-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.whl

Download URL numpy_api_bench-0.1.0-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.whl
Size 82.8 kB
Tags CPython 3.8 Linux glibc 2.5+ x86-32
SHA-256 checksum
How to use checksums
cacbab3991850b8bb10d5188e7141e46f8b766b6f48cfda50390dd1afc61e16b
BLAKE2b-256 checksum
How to use checksums
86757dec1c33fed42079c756df7dca692e5e636abcce86ac9937335153ea12e9
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.4.2 importlib_metadata/4.6.3 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.0 CPython/3.8.11

Release files / numpy_api_bench-0.1.0-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl

Download URL numpy_api_bench-0.1.0-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl
Size 107.6 kB
Tags CPython 3.8 Linux glibc 2.12+ x86-32 Linux glibc 2.5+ x86-32
SHA-256 checksum
How to use checksums
7863dc43eb56a227f768edfc83e5d5a2daa683f58953b664a2c873e77b9f546d
BLAKE2b-256 checksum
How to use checksums
9126d59ec0801b2170b12cedb4f161f655b8545f5591b5e3696e72217e4e4a78
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.4.2 importlib_metadata/4.6.3 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.0 CPython/3.8.11

Release files / numpy_api_bench-0.1.0-cp38-cp38-macosx_10_9_x86_64.whl

Download URL numpy_api_bench-0.1.0-cp38-cp38-macosx_10_9_x86_64.whl
Size 36.3 kB
Tags CPython 3.8 macOS 10.9+ x86-64
SHA-256 checksum
How to use checksums
15e0b59b85859ea9d232447b7eaaf671caea478fb56517893725677b08ecb875
BLAKE2b-256 checksum
How to use checksums
970bb1dbf3646ade8f0f03c293768e4fcbc79bf47c83e8859b2262b52eb5fcd4
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.4.2 importlib_metadata/4.6.3 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.0 CPython/3.8.11

Release files / numpy_api_bench-0.1.0-cp37-cp37m-win_amd64.whl

Download URL numpy_api_bench-0.1.0-cp37-cp37m-win_amd64.whl
Size 49.0 kB
Tags CPython 3.7 CPython 3.7 pymalloc Windows x86-64
SHA-256 checksum
How to use checksums
d157e452b7938e4117fbcea246522a07581009df2ee955bcfd6d4b18e5afb0fc
BLAKE2b-256 checksum
How to use checksums
16685be10e932cad30fb8f65efb407a9cd389e4bbe5e18144f436db40f38ea7f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.4.2 importlib_metadata/4.6.3 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.0 CPython/3.8.11

Release files / numpy_api_bench-0.1.0-cp37-cp37m-win32.whl

Download URL numpy_api_bench-0.1.0-cp37-cp37m-win32.whl
Size 46.2 kB
Tags CPython 3.7 CPython 3.7 pymalloc Windows x86-32
SHA-256 checksum
How to use checksums
30e94300b8b87e2b278104c6c44c425dd3e2d719a3713f1606b4098fcd9bd48b
BLAKE2b-256 checksum
How to use checksums
cc08f07c679ea80e52d15bf3714914a55714db26c051d9fb0bc4ed0cb6811b02
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.4.2 importlib_metadata/4.6.3 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.0 CPython/3.8.11

Release files / numpy_api_bench-0.1.0-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.whl

Download URL numpy_api_bench-0.1.0-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.whl
Size 81.8 kB
Tags CPython 3.7 CPython 3.7 pymalloc Linux glibc 2.5+ x86-64
SHA-256 checksum
How to use checksums
4f954369b970e4db981670a9308554e1f4d04e4f57afed019eaab71352b99759
BLAKE2b-256 checksum
How to use checksums
06ac122432be0633eb3ca91e620f2c58c08b6da60745d960a977dc1573c79c6f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.4.2 importlib_metadata/4.6.3 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.0 CPython/3.8.11

Release files / numpy_api_bench-0.1.0-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl

Download URL numpy_api_bench-0.1.0-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl
Size 109.9 kB
Tags CPython 3.7 CPython 3.7 pymalloc Linux glibc 2.12+ x86-64 Linux glibc 2.5+ x86-64
SHA-256 checksum
How to use checksums
3c1bf0c37b688452b1d30f0c4667d0656b1732b3a5d4a5d095de9f9d4eca7cbf
BLAKE2b-256 checksum
How to use checksums
b5054b99b7862976c84c0d83060ed3b504358e76c21529cc98d65d9c516ff6ce
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.4.2 importlib_metadata/4.6.3 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.0 CPython/3.8.11

Release files / numpy_api_bench-0.1.0-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.whl

Download URL numpy_api_bench-0.1.0-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.whl
Size 79.0 kB
Tags CPython 3.7 CPython 3.7 pymalloc Linux glibc 2.5+ x86-32
SHA-256 checksum
How to use checksums
71ce3891e00c5670db1ddc3fcb386cc1dde2cd9b9e48b10143c91390bcd2f189
BLAKE2b-256 checksum
How to use checksums
ca69421fcb97209bc286caa97cf8938fc92ed1ba4e7bc2b4a541e0cdaa78cb00
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.4.2 importlib_metadata/4.6.3 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.0 CPython/3.8.11

Release files / numpy_api_bench-0.1.0-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl

Download URL numpy_api_bench-0.1.0-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl
Size 106.5 kB
Tags CPython 3.7 CPython 3.7 pymalloc Linux glibc 2.12+ x86-32 Linux glibc 2.5+ x86-32
SHA-256 checksum
How to use checksums
c9caddd7a5efc0edf07f0740537c594e991eea808c6cddb3416c93435c9913d6
BLAKE2b-256 checksum
How to use checksums
c3c79ad8c1daa642925b37c5840531001a0ab142a7c525ae90087316f1c68ebf
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.4.2 importlib_metadata/4.6.3 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.0 CPython/3.8.11

Release files / numpy_api_bench-0.1.0-cp37-cp37m-macosx_10_9_x86_64.whl

Download URL numpy_api_bench-0.1.0-cp37-cp37m-macosx_10_9_x86_64.whl
Size 36.1 kB
Tags CPython 3.7 CPython 3.7 pymalloc macOS 10.9+ x86-64
SHA-256 checksum
How to use checksums
94975c4f9d2c9cdde99cee31c59ca2b76bf6a22a51d7ecfb3c47eb0ef3bf341b
BLAKE2b-256 checksum
How to use checksums
609ac0e6ad60c230f1372e0c5199b656dbf7435560ec38b01a25baffe53bae57
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.4.2 importlib_metadata/4.6.3 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.0 CPython/3.8.11

Release files / numpy_api_bench-0.1.0-cp36-cp36m-win_amd64.whl

Download URL numpy_api_bench-0.1.0-cp36-cp36m-win_amd64.whl
Size 49.0 kB
Tags CPython 3.6 CPython 3.6 pymalloc Windows x86-64
SHA-256 checksum
How to use checksums
66f3bc0c360d4afd9cbd60261e118da360fdf3a95db9ef9666911f932e7f59f2
BLAKE2b-256 checksum
How to use checksums
6f4fa7d496a4f4d5e4150979008e64904f7203d1f8648667edab1da7823bd1c8
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.4.2 importlib_metadata/4.6.3 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.0 CPython/3.8.11

Release files / numpy_api_bench-0.1.0-cp36-cp36m-win32.whl

Download URL numpy_api_bench-0.1.0-cp36-cp36m-win32.whl
Size 46.2 kB
Tags CPython 3.6 CPython 3.6 pymalloc Windows x86-32
SHA-256 checksum
How to use checksums
1a613f604818993606427e679d24a31871c49b54ae0906f968ca758b7263662e
BLAKE2b-256 checksum
How to use checksums
fd59c6c1648dd6df2126c0f11135fac0f0d6f3bd42922e903ba540ba4ebc5f4c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.4.2 importlib_metadata/4.6.3 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.0 CPython/3.8.11

Release files / numpy_api_bench-0.1.0-cp36-cp36m-manylinux_2_5_x86_64.manylinux1_x86_64.whl

Download URL numpy_api_bench-0.1.0-cp36-cp36m-manylinux_2_5_x86_64.manylinux1_x86_64.whl
Size 81.8 kB
Tags CPython 3.6 CPython 3.6 pymalloc Linux glibc 2.5+ x86-64
SHA-256 checksum
How to use checksums
b5d49e73ae3bececb147bc316e2039241ab190705410c7d866b39e3d97b42fce
BLAKE2b-256 checksum
How to use checksums
ca04e475f0959f6bfcaafa086bc67220f8524cc54d1c1c573865d02371163fbc
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.4.2 importlib_metadata/4.6.3 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.0 CPython/3.8.11

Release files / numpy_api_bench-0.1.0-cp36-cp36m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl

Download URL numpy_api_bench-0.1.0-cp36-cp36m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl
Size 106.1 kB
Tags CPython 3.6 CPython 3.6 pymalloc Linux glibc 2.12+ x86-64 Linux glibc 2.5+ x86-64
SHA-256 checksum
How to use checksums
0cadc6e7d570f81e4d2d6db9d6c918f5f488506a1d5d6b3021f273e21138a1a5
BLAKE2b-256 checksum
How to use checksums
9917c610ea689315ee719d13e9fb78f2b7b233d5615d4abb0486a410a805568e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.4.2 importlib_metadata/4.6.3 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.0 CPython/3.8.11

Release files / numpy_api_bench-0.1.0-cp36-cp36m-manylinux_2_5_i686.manylinux1_i686.whl

Download URL numpy_api_bench-0.1.0-cp36-cp36m-manylinux_2_5_i686.manylinux1_i686.whl
Size 78.9 kB
Tags CPython 3.6 CPython 3.6 pymalloc Linux glibc 2.5+ x86-32
SHA-256 checksum
How to use checksums
89d209dd61579aa00355baefb6fae031683b94cb0323c107df4359c39ee30b57
BLAKE2b-256 checksum
How to use checksums
480f5db0a6380f13f99aabbc68e728de7b123a1857b329039f7ca97cdaecf8b2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.4.2 importlib_metadata/4.6.3 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.0 CPython/3.8.11

Release files / numpy_api_bench-0.1.0-cp36-cp36m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl

Download URL numpy_api_bench-0.1.0-cp36-cp36m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl
Size 102.8 kB
Tags CPython 3.6 CPython 3.6 pymalloc Linux glibc 2.12+ x86-32 Linux glibc 2.5+ x86-32
SHA-256 checksum
How to use checksums
f22f0a4db18940c3fff8a979cb1eec832935a97cc946003ee6473236c722c399
BLAKE2b-256 checksum
How to use checksums
c61e1352da80a70e40946fc89054818db2d8ef710282a71bd0e1b80301fe178f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.4.2 importlib_metadata/4.6.3 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.0 CPython/3.8.11

Release files / numpy_api_bench-0.1.0-cp36-cp36m-macosx_10_9_x86_64.whl

Download URL numpy_api_bench-0.1.0-cp36-cp36m-macosx_10_9_x86_64.whl
Size 36.1 kB
Tags CPython 3.6 CPython 3.6 pymalloc macOS 10.9+ x86-64
SHA-256 checksum
How to use checksums
52c808a8db4bff2fe57c521b73e0a526cf746cd06aeaae4fe6fc8d27551e82ab
BLAKE2b-256 checksum
How to use checksums
3548ff71fc063665f4c8cf5ba201dfcf4e8db7a7c0fd4ec762ac780f7d579874
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.4.2 importlib_metadata/4.6.3 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.0 CPython/3.8.11

Security for numpy-api-bench 0.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