Python binding for the PAPI library
Project description
PyPAPI is a Python binding for the PAPI (Performance Application Programming Interface) library. PyPAPI implements the whole PAPI High Level API and partially the Low Level API.
Documentation:
Installing PyPAPI
See this page of the documentation:
Hacking
Building PyPAPI For Local Development
To work on PyPAPI, you first have to clone this repositiory and initialize and update submodules:
git clone https://github.com/flozz/pypapi.git cd pypapi git submodule init git submodule update
Then you have to build both PAPI and the C library inside the pypapi module. This can be done with the following commands:
python setup.py build python pypapi/papi_build.py
Linting and Code formatting
To build lint the code, you first need to install Nox:
pip install nox
Then, run the following command:
nox -s lint
To automatically coding style issues, run:
nox -s black_fix
Generating Documentation
To build the Sphinx documentation, you first need to install Nox:
pip install nox
Then, run the following command:
nox -s gendoc
Support this project
Want to support this project?
Changelog
[NEXT] (changes on master, but not released yet):
Nothing yet :)
v5.5.1.6:
chore: Added code linting with Flake8 (@flozz)
chore: Added code formatter and reformatted all files with Black (@flozz)
chore: Added Nox to run code linting, code formatting, doc building tasks (@flozz)
chore: Updated dev dependnecies (@flozz)
chore: Automatically build and publish sdist package and wheels for Linux (@flozz, #39)
docs: Updated documentation (@flozz)
v5.5.1.5:
fix: Fixed issue with module named types.py (@mcopik, #19)
v5.5.1.4:
chore: Fixed compilation with GCC 8 and newer (@maresmar, #18)
chore!: PyPAPI is no more compatible with GCC < 7.0
v5.5.1.3:
chore: Removed .o, .lo and other generated objects from the package
v5.5.1.2:
feat: Partial bindings for the low level API
v5.5.1.1:
chore: Added missing files to build PAPI
v5.5.1.0:
feat: Initial release (binding for papy 5.5.1)
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distributions
Hashes for python_papi-5.5.1.6-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 729cae6fdcf1f1624ce9b3f87c8995d3f890e472327ed144380ad3f6e09fb4fc |
|
MD5 | 6ce4f4adb18f109b69aa9a751d242ab9 |
|
BLAKE2b-256 | b9e0d0e066dc7d2b50bfc5b8ab1a9c1235f32be0d80ba42cdc6d245fb5802566 |
Hashes for python_papi-5.5.1.6-pp310-pypy310_pp73-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 1992fa1cad0e653c523779cd2a1a6d3ef643dc4e952d88b7884618ea974c09a4 |
|
MD5 | 6ff478c1185e2666a0539d16c16097e7 |
|
BLAKE2b-256 | eaa0d9885d68f11c87e4a157734a9c47f78f3f38e5e67a3dea44b8632a607151 |
Hashes for python_papi-5.5.1.6-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | a47b5f3978f6fd5b679ac3c0878582b50ead3fcb35553ffa4a3a5824118dc78d |
|
MD5 | b077315de28138e3bccab6fb050b5c10 |
|
BLAKE2b-256 | ed6edd30cbf51760fe3cbb35aa7d6d43192db6779db778ff37ea62adc683a3bb |
Hashes for python_papi-5.5.1.6-pp39-pypy39_pp73-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 530f4b4bc0eef67d89df464f3a87ffdc58a5c841da3a9357065f29dd6ac7a04d |
|
MD5 | 86b52e4ca2c1888d6a79fc41c128df5c |
|
BLAKE2b-256 | f08c9fb537255204542953d3faa24cc9fa1eac9d8e1d4e2aa40ac5faf2691764 |
Hashes for python_papi-5.5.1.6-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | eadc043faf347f14ed37123201cd7f2703bc05f6b586e5425667e32cb7b4ffa5 |
|
MD5 | 849d9ed9d969c3707b2336623690b894 |
|
BLAKE2b-256 | c5133f969b442a96dc44dd6c54a301c6d424ee437c8e8fb0530bd70a5085afe3 |
Hashes for python_papi-5.5.1.6-pp38-pypy38_pp73-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | d25a95434d5e122830ef9505758e483b4461990141634e8a0498c789d0143655 |
|
MD5 | 6617891d86bc195ac368053e23f858d7 |
|
BLAKE2b-256 | 53b39362a399a929b82b18e3ee7a7d5c4ab1d983acf19ad02c0198e36aa80ba1 |
Hashes for python_papi-5.5.1.6-pp37-pypy37_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 13514eb839ffe9d206ec9fb02547ca266d3d6c2bc4ea1c4a3bd4e9198488fa27 |
|
MD5 | fd7e52724e0f79ab5d82606d73a8c940 |
|
BLAKE2b-256 | c9c7aeb566a6c5918e21dcc960d751b5209993bc8fa777515f9d9ae8a1bed24c |
Hashes for python_papi-5.5.1.6-pp37-pypy37_pp73-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 315bba70679d42592bc6841467efa224c9c8d308a20d48459e78460d6b250bd7 |
|
MD5 | ccb1f3aa2346abe73e63e0a6b24f7e6e |
|
BLAKE2b-256 | c117eab701ade4035b97bcb49d0b27c16097828ec618f224fd9b91d9a43d48cd |
Hashes for python_papi-5.5.1.6-cp312-cp312-musllinux_1_1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | b5d2bff35d6dc96cdf71cc7057e1e85bb7a829177aa4714541770664536deb1b |
|
MD5 | 7d885052ffea70107924b2b5c71af2b5 |
|
BLAKE2b-256 | c10684604e9f1d25f54219462455fef5eba400ad52f184872226139e18eefb3a |
Hashes for python_papi-5.5.1.6-cp312-cp312-musllinux_1_1_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | fae4c6d3a421f8792fb9ddd3b718f0948fee9d58183da1e89eee076288f960bb |
|
MD5 | 4dee032be0a308933668ef9fcb0b8635 |
|
BLAKE2b-256 | b9d1d8e300c31c45c61806036a04f770caa77f9ae2292bbf07772df04899b05f |
Hashes for python_papi-5.5.1.6-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | c2e7a542ceccf4346bb7474643fdd58f833a4c3018f81e10bc482d99663b9d79 |
|
MD5 | 4814a1621982779ccefc3ff8cf64b37c |
|
BLAKE2b-256 | 065045c7d185dd0c873e75825e3125201d3da835b42fd01bb9d947e34fd2bbd0 |
Hashes for python_papi-5.5.1.6-cp312-cp312-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 749dde0c5bd5cb679ff0e11d2a24eac58044e16c13845d2f49a105e7e26ca1f8 |
|
MD5 | 120efa5ef67462427d8471acfdf1aa21 |
|
BLAKE2b-256 | 6b062faceede024b4d85d90b25439fbf996446236cc756eae549b8f23270a250 |
Hashes for python_papi-5.5.1.6-cp311-cp311-musllinux_1_1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 8ef47494b1d9a543005159363f7ab235ac30cc16ae32f495d84abad058c60beb |
|
MD5 | a1c1cf9b7d386f1ebe565fe048bea6e7 |
|
BLAKE2b-256 | e672493ae74d5be603e2c104bc3f9bb35db5e5491bb2df2b325be5a4494f60da |
Hashes for python_papi-5.5.1.6-cp311-cp311-musllinux_1_1_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 27e6fd447d70731ed1b36d6f2d1c010f61ef2b6b8d4582f4c389891d3345d824 |
|
MD5 | be44059cd02ba23e33c08994d24c089d |
|
BLAKE2b-256 | db4571cbdde5c353da8b60222c6166d38bb3d27ff7e707e1cc1b0d3fd77a2ecf |
Hashes for python_papi-5.5.1.6-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 1d2911b7483f351ada3ea610a0739f7b09185b14ce5118df6966df3459a29263 |
|
MD5 | 8b93e30a7030bfac152e200ef6e0eacc |
|
BLAKE2b-256 | cdbc8bfabd0144462b0a81460ed049f9e4c65d1868744d364ee38629f441e1fa |
Hashes for python_papi-5.5.1.6-cp311-cp311-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 188fb33b926d8194c4203846ab34f54a85634c2aa87ea3ccccc1a4f4114c70c0 |
|
MD5 | 7b748ad43eaf429eef46c0ac058bb592 |
|
BLAKE2b-256 | 5dbdcbfc847bd0afa4eaecc09ac5c86acdf50c2cd73f8b3a4f138f500252891c |
Hashes for python_papi-5.5.1.6-cp310-cp310-musllinux_1_1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5b65d3aa24410f2dd030a406b2109642629bd92ca5def72b55ae3ce571d0fb87 |
|
MD5 | 73590971026038c14728d5364c6cfa6e |
|
BLAKE2b-256 | 9da58705bc61406d5cae1eecf7e63fd062f66d503265bd8230c4b96820a0a707 |
Hashes for python_papi-5.5.1.6-cp310-cp310-musllinux_1_1_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 8e564320227a8c2bffd5a6211f6f9c087188545a0992e731d4355e02582c661d |
|
MD5 | 89e68f92c973d25dce0d14f5b2943565 |
|
BLAKE2b-256 | f57277bc271bb8e4ef91e129dcc1aead3c5af092f9c6565c22479051590b0eb0 |
Hashes for python_papi-5.5.1.6-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 596b31df379cf899dea33fc7230dc273f737a533286e659f25da9ca71cae8841 |
|
MD5 | 9104aa072cd4bc2d1c407ff6dffe9691 |
|
BLAKE2b-256 | 51bbbad1e44cc7f6c3c125a3ac69f8038dfe91f1dc8f8e3c012f6a0a838d0ed1 |
Hashes for python_papi-5.5.1.6-cp310-cp310-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | abe41a4ea1d6224b465da805f8720b0ad3fdb35ba818e642e4cc3543a4931c5c |
|
MD5 | 772be46abdf97c12f4323af623028b78 |
|
BLAKE2b-256 | ea1aaae5f920e98b5fb70ec6e8c954cd5633694e2379870bef0e6780bf3011a0 |
Hashes for python_papi-5.5.1.6-cp39-cp39-musllinux_1_1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 789af00f8d0de04d08abddf05b1da88eceb7bc1b6838dd488dfd77df3d999618 |
|
MD5 | 1a8c779d9e34a5f00b381935f77b8d3d |
|
BLAKE2b-256 | b66471c92d82174e0e3f5da418de0148552416a8d4e9713c9d9df70763a693b0 |
Hashes for python_papi-5.5.1.6-cp39-cp39-musllinux_1_1_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | aac56e4bea59899acd98d6d4ba580a7c51b7a13f2e634d84559ed446cefff240 |
|
MD5 | 706941a7c712cb123ab9e32ecaa0f0f8 |
|
BLAKE2b-256 | 73164622dfaa9efb8e1ed3d84243c11b6b15aa542cdbca23a23e2c450395f63a |
Hashes for python_papi-5.5.1.6-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 848b6dcefc62dd6120ec603e8ae047b171036dc1448dd4826beec854723f8c69 |
|
MD5 | 8930cfe5000dedc58e6c6c425a626815 |
|
BLAKE2b-256 | 7518305a9ea5b6fba0f67aef5b101440aa45814bdbae807d1e1d6571a06714c0 |
Hashes for python_papi-5.5.1.6-cp39-cp39-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | dce7e938371d8c95aad4b5e30242a44fb3e9419dcb56ee31b45252085928bbec |
|
MD5 | b948135054a8adfcdaf44cf6e45fa6ce |
|
BLAKE2b-256 | d7673fd22c89a8d5ced430890ca7051a040afc98f184fd1a0934ef54cef19d1b |
Hashes for python_papi-5.5.1.6-cp38-cp38-musllinux_1_1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 99d15c64e7e0191108f6abaec0f71cc5fc962bfe29dc5df72246b8b429f84c1c |
|
MD5 | fac98303340dd951b06d432907ce94e2 |
|
BLAKE2b-256 | d0a3602ac5866e94054bec0e59c0b444583617fe24489f127a54f5d94b90f706 |
Hashes for python_papi-5.5.1.6-cp38-cp38-musllinux_1_1_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 1bcaafb7ab963480e0391a9dc24f4ccfa8854715704d2bdcc2cb3a17f58bbe74 |
|
MD5 | 2115819b25958d07d1fc18a9b3dfcb21 |
|
BLAKE2b-256 | 6b5fee72091d1863c2ba55d435d87dbd22555c4db5e9a65b82a6262914e28d7b |
Hashes for python_papi-5.5.1.6-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 3176be8d40b14f274c71df916ef781139cc3dd2155962c1097ec283d93d07fef |
|
MD5 | a41e9c199d20b250a8f8f0cb27c6d22e |
|
BLAKE2b-256 | bdc2d7de64f62aac69fd8cc9c6625673c91fbd7f0787174dd3bdcaebf7f4de89 |
Hashes for python_papi-5.5.1.6-cp38-cp38-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 36f01bc821787a659a2c443758422b53e81ed4e2f2b840c07393d0c4bfd60e21 |
|
MD5 | e2e15a277ed103f19d61fc8d0585cec8 |
|
BLAKE2b-256 | 2b29e897655f2b740e62ea96efc29516e61cf646d3a619361ddd06191f3d91ec |
Hashes for python_papi-5.5.1.6-cp37-cp37m-musllinux_1_1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6f139979edac70e7d5aa58cc82a3f365a353b0eb79278bc18d9382fe069b05a2 |
|
MD5 | 1c1d99ddb790a6c3b0c2cad5e0672265 |
|
BLAKE2b-256 | bb57d2b164d65d5e5335764c73d14822ee99b165597d86d7c470d164c131ab3c |
Hashes for python_papi-5.5.1.6-cp37-cp37m-musllinux_1_1_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 793c7220f283207df9b7c3a190d658684ac62be47df4e61f7eb779422e62f097 |
|
MD5 | 4fc246a90ad5d22fc852cec3abdd775c |
|
BLAKE2b-256 | c21f64ed2a135684e42447d65c73797e2acbaafff7e74f0d7effcb246ab8bae3 |
Hashes for python_papi-5.5.1.6-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 8a8c06f6d56eeb8b0d78de72ae0426a4acdf1c2eb13ae26ef427c16e15d5f232 |
|
MD5 | 544c96ad30c477b36cde2d8a088968f4 |
|
BLAKE2b-256 | 91010c6611b7df0c3cad4c82d33b699218060c2d57e79ed8d7ed8c780281449d |
Hashes for python_papi-5.5.1.6-cp37-cp37m-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | c1c8940db41688983fc2448b8df174d3021bbdf9b554582c331e1f8b0dcd91e7 |
|
MD5 | ef130241ea3e04e9bbfb6a881cc97bb7 |
|
BLAKE2b-256 | 3f8bf5fbcc1022d7e6c9f8e2d18080fa9f3cceb091f3d245a289946941ad2981 |
Hashes for python_papi-5.5.1.6-cp36-cp36m-musllinux_1_1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 9d4fb82bb0c91586422423db3150f1017ce1f911f0f045a2cdbff31ffb6d4250 |
|
MD5 | f6007293ec2fc401baba4267931a0bb7 |
|
BLAKE2b-256 | b2f91a33576996a137f304404ce5e2bdf4965aa7ebac32764eab29ea1b73f6a3 |
Hashes for python_papi-5.5.1.6-cp36-cp36m-musllinux_1_1_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | c20e789c0bd08e211ef406ad78f0fb49a83f36d9bd39f22bbf6c9ac899ef7c89 |
|
MD5 | d16f05527186563f5be3ea192c647401 |
|
BLAKE2b-256 | d1a5d2ded0f2870682e63eb9b013ce2ef4c5083c8a36b41ebe4cd7e9e5091e63 |
Hashes for python_papi-5.5.1.6-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 26015d2d098ae174d5c3c49f9d6c3a97f45ffe546c74a0baed2bd45a1056e2e6 |
|
MD5 | 986b5096300badad410b70931d3bbb77 |
|
BLAKE2b-256 | 4dbf76393ff0eb1d94da28988d7661e62389dcae170bf03263075e11f3e12393 |
Hashes for python_papi-5.5.1.6-cp36-cp36m-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 9318fc1672cd0d99c0dc4225f8df788f00bbc2dcd3bf765e7522a05b4911a89b |
|
MD5 | 649ae27feb5bc6d5e1c5c3a8206f56ae |
|
BLAKE2b-256 | f15107f8b49c4d12d7223467eba45dfff8df625135d6ea93a57acb2ee7268b9a |