Skip to main content

Configurable memory allocations

Project description

Memory management in NumPy*

Binder PyPI version

*NumPy is a trademark owned by NumFOCUS.

Customize Memory Allocators

Α metaclass is used to override the internal data memory routines. The metaclass has four optional fields:

>>> import ctypes
>>> import numpy_allocator
>>> my = ctypes.CDLL('libmy.so')
>>> class my_allocator(metaclass=numpy_allocator.type):
...     _calloc_ = my.calloc_func
...     _free_ = my.free_func
...     _malloc_ = my.malloc_func
...     _realloc_ = my.realloc_func
...

An example using the allocator

>>> import numpy as np
>>> with my_allocator:
...     a = np.array([1, 2, 3])
...
>>> my_allocator.handles(a)
True

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

numpy-allocator-1.0.0.tar.gz (10.2 kB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

numpy_allocator-1.0.0-cp310-cp310-musllinux_1_1_x86_64.whl (34.6 kB view details)

Uploaded CPython 3.10musllinux: musl 1.1+ x86-64

numpy_allocator-1.0.0-cp310-cp310-musllinux_1_1_i686.whl (33.3 kB view details)

Uploaded CPython 3.10musllinux: musl 1.1+ i686

numpy_allocator-1.0.0-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl (35.5 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.12+ x86-64manylinux: glibc 2.5+ x86-64

numpy_allocator-1.0.0-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl (34.0 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.12+ i686manylinux: glibc 2.5+ i686

numpy_allocator-1.0.0-cp39-cp39-musllinux_1_1_x86_64.whl (34.1 kB view details)

Uploaded CPython 3.9musllinux: musl 1.1+ x86-64

numpy_allocator-1.0.0-cp39-cp39-musllinux_1_1_i686.whl (32.8 kB view details)

Uploaded CPython 3.9musllinux: musl 1.1+ i686

numpy_allocator-1.0.0-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl (35.0 kB view details)

Uploaded CPython 3.9manylinux: glibc 2.12+ x86-64manylinux: glibc 2.5+ x86-64

numpy_allocator-1.0.0-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl (33.6 kB view details)

Uploaded CPython 3.9manylinux: glibc 2.12+ i686manylinux: glibc 2.5+ i686

numpy_allocator-1.0.0-cp38-cp38-musllinux_1_1_x86_64.whl (35.2 kB view details)

Uploaded CPython 3.8musllinux: musl 1.1+ x86-64

numpy_allocator-1.0.0-cp38-cp38-musllinux_1_1_i686.whl (33.9 kB view details)

Uploaded CPython 3.8musllinux: musl 1.1+ i686

numpy_allocator-1.0.0-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl (36.2 kB view details)

Uploaded CPython 3.8manylinux: glibc 2.12+ x86-64manylinux: glibc 2.5+ x86-64

numpy_allocator-1.0.0-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl (34.7 kB view details)

Uploaded CPython 3.8manylinux: glibc 2.12+ i686manylinux: glibc 2.5+ i686

File details

Details for the file numpy-allocator-1.0.0.tar.gz.

File metadata

  • Download URL: numpy-allocator-1.0.0.tar.gz
  • Upload date:
  • Size: 10.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.7.1 importlib_metadata/4.10.0 pkginfo/1.8.2 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.9

File hashes

Hashes for numpy-allocator-1.0.0.tar.gz
Algorithm Hash digest
SHA256 0ceac00a33698f852cb1c1fe9fbc23c2284c9bc60cc10c9058539eda748c51ec
MD5 11c28c5296dadb65c4d9ea9465fcc337
BLAKE2b-256 73be70855e553de25574f0d6edd93c789bcc9fce0085fc70d5ddaaf06e74a72e

See more details on using hashes here.

File details

Details for the file numpy_allocator-1.0.0-cp310-cp310-musllinux_1_1_x86_64.whl.

File metadata

  • Download URL: numpy_allocator-1.0.0-cp310-cp310-musllinux_1_1_x86_64.whl
  • Upload date:
  • Size: 34.6 kB
  • Tags: CPython 3.10, musllinux: musl 1.1+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.7.1 importlib_metadata/4.10.0 pkginfo/1.8.2 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.9

File hashes

Hashes for numpy_allocator-1.0.0-cp310-cp310-musllinux_1_1_x86_64.whl
Algorithm Hash digest
SHA256 0c3d23117077456fd3d8127b3e09e7ae54c8c682911525128e2795d74f7f0b07
MD5 4954daac3d007f6712c6ac6be8a6355f
BLAKE2b-256 db0d7a0d88a99f92d36930d43fe1c16071cddb6b663389a618c2718d6eaad733

See more details on using hashes here.

File details

Details for the file numpy_allocator-1.0.0-cp310-cp310-musllinux_1_1_i686.whl.

File metadata

  • Download URL: numpy_allocator-1.0.0-cp310-cp310-musllinux_1_1_i686.whl
  • Upload date:
  • Size: 33.3 kB
  • Tags: CPython 3.10, musllinux: musl 1.1+ i686
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.7.1 importlib_metadata/4.10.0 pkginfo/1.8.2 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.9

File hashes

Hashes for numpy_allocator-1.0.0-cp310-cp310-musllinux_1_1_i686.whl
Algorithm Hash digest
SHA256 36d6d21c3356ef1c3015e3c279a1d178ec8d2722a0e061464639a234072839ea
MD5 f4322fdf03a976d558ed614be79987f7
BLAKE2b-256 deaf215b5708ad7d8ac4e01db67375f8bea2b7f2eae04ce5da88a0209361fe28

See more details on using hashes here.

File details

Details for the file numpy_allocator-1.0.0-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl.

File metadata

File hashes

Hashes for numpy_allocator-1.0.0-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl
Algorithm Hash digest
SHA256 205537d4f7040218333aee7826ae77c2044ebb3d78e43eb27cea662e478671e5
MD5 d3c6db1e41ba8649ad5ee9a4e5dd8d57
BLAKE2b-256 50169bf93fbc091fdefba6260c9cabbcbb99550f5d2f3492a5ed140a00393666

See more details on using hashes here.

File details

Details for the file numpy_allocator-1.0.0-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl.

File metadata

File hashes

Hashes for numpy_allocator-1.0.0-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl
Algorithm Hash digest
SHA256 e1231be04f38016dfd16644e54607394fd9b25e6f356a2424a38f3be2456c2fa
MD5 7e4f6c3ced068f142740a93db2e489e4
BLAKE2b-256 8b083de7fbf2a4fb8fda568e8e663b8ef78559d980c918b4904c798a1be32b64

See more details on using hashes here.

File details

Details for the file numpy_allocator-1.0.0-cp39-cp39-musllinux_1_1_x86_64.whl.

File metadata

  • Download URL: numpy_allocator-1.0.0-cp39-cp39-musllinux_1_1_x86_64.whl
  • Upload date:
  • Size: 34.1 kB
  • Tags: CPython 3.9, musllinux: musl 1.1+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.7.1 importlib_metadata/4.10.0 pkginfo/1.8.2 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.9

File hashes

Hashes for numpy_allocator-1.0.0-cp39-cp39-musllinux_1_1_x86_64.whl
Algorithm Hash digest
SHA256 0aa1ef75faa56f8e0c84381bdb761a9a28db357145b53af4ec8fac665c9ce870
MD5 915a59571fa470e85c9aa541f8ed3606
BLAKE2b-256 e65a4f157f4ab21d6afca620ec5da77687c1c05769f3ff1becd219983f54e8e5

See more details on using hashes here.

File details

Details for the file numpy_allocator-1.0.0-cp39-cp39-musllinux_1_1_i686.whl.

File metadata

  • Download URL: numpy_allocator-1.0.0-cp39-cp39-musllinux_1_1_i686.whl
  • Upload date:
  • Size: 32.8 kB
  • Tags: CPython 3.9, musllinux: musl 1.1+ i686
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.7.1 importlib_metadata/4.10.0 pkginfo/1.8.2 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.9

File hashes

Hashes for numpy_allocator-1.0.0-cp39-cp39-musllinux_1_1_i686.whl
Algorithm Hash digest
SHA256 0490dbef2a83eb0c8cb4ef0587b52d1c230e5166f5a76d332391c4755e82e7cb
MD5 bafbbaba804b4caab1be6cdd8c818b79
BLAKE2b-256 bc195f3bf8174470589cfea54045dcb6ea98a7fca8562ec3a321e595f357d4f8

See more details on using hashes here.

File details

Details for the file numpy_allocator-1.0.0-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl.

File metadata

File hashes

Hashes for numpy_allocator-1.0.0-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl
Algorithm Hash digest
SHA256 8e333b4f8d01541945100410e3fa25495814351124230ea263a24eb38b583263
MD5 5dcb12aa11612b6e9f53f293472d62bc
BLAKE2b-256 edbd1fd88ad36bd466b3721cb2e4c9b9d320e85f9946b42a927b0a8304e8ce0f

See more details on using hashes here.

File details

Details for the file numpy_allocator-1.0.0-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl.

File metadata

File hashes

Hashes for numpy_allocator-1.0.0-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl
Algorithm Hash digest
SHA256 2b38711587afbdbcdc2a3d522b0b5d41625a83bf76dc3d8a7d499128a8a133ba
MD5 49721c30bb61019ba556dae46e336b1b
BLAKE2b-256 c2ab83165358f63c9afc22f6b5a206310084bdb339a42ea50cf8d83ad94bcce1

See more details on using hashes here.

File details

Details for the file numpy_allocator-1.0.0-cp38-cp38-musllinux_1_1_x86_64.whl.

File metadata

  • Download URL: numpy_allocator-1.0.0-cp38-cp38-musllinux_1_1_x86_64.whl
  • Upload date:
  • Size: 35.2 kB
  • Tags: CPython 3.8, musllinux: musl 1.1+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.7.1 importlib_metadata/4.10.0 pkginfo/1.8.2 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.9

File hashes

Hashes for numpy_allocator-1.0.0-cp38-cp38-musllinux_1_1_x86_64.whl
Algorithm Hash digest
SHA256 70b7a5e90737cf8f6ca5e293489c1548335d4343d9d0a086ff3e0b08bcf00f9b
MD5 c5341ee3e2c43dd7acd27a4d6b74bdb7
BLAKE2b-256 6afba7bdf5dd1205abe4ebdeeebc644945c13da7240c0fb1758a9c229abd57eb

See more details on using hashes here.

File details

Details for the file numpy_allocator-1.0.0-cp38-cp38-musllinux_1_1_i686.whl.

File metadata

  • Download URL: numpy_allocator-1.0.0-cp38-cp38-musllinux_1_1_i686.whl
  • Upload date:
  • Size: 33.9 kB
  • Tags: CPython 3.8, musllinux: musl 1.1+ i686
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.7.1 importlib_metadata/4.10.0 pkginfo/1.8.2 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.9

File hashes

Hashes for numpy_allocator-1.0.0-cp38-cp38-musllinux_1_1_i686.whl
Algorithm Hash digest
SHA256 ab7d724b62a7fd29f3c22f290d75e4bff2c1a2e885de3621ec96cacd9990ec59
MD5 0fdcd3952bfb15bf2739797bae7ccc3c
BLAKE2b-256 0b27a82fde04caf276070b691c8ddaffe33c79cb7e0aa8f2097963d06d14078a

See more details on using hashes here.

File details

Details for the file numpy_allocator-1.0.0-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl.

File metadata

File hashes

Hashes for numpy_allocator-1.0.0-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl
Algorithm Hash digest
SHA256 1e5c3bcd0494b84b23d4fd36b12e7c83b0e0fcbd8d41430374ae6c2b8988f3e1
MD5 c7c59c01f2f0b5bb5c60f15ef66f7b28
BLAKE2b-256 1d0771985b5200b84e4d8d6ed597081215a12c5c1233cda28cfc7810862c8d59

See more details on using hashes here.

File details

Details for the file numpy_allocator-1.0.0-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl.

File metadata

File hashes

Hashes for numpy_allocator-1.0.0-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl
Algorithm Hash digest
SHA256 2134d13563c40775933bb691a47f331b402591783ea4b904a08c726ca0d33fde
MD5 b6beb50485b7b5ae8f4685bb7373362e
BLAKE2b-256 5bbd974fb0f37feee9bdc4b82d8ca170541db2f558b5137ab210e52f927d9308

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