Archspec (Python bindings)
Archspec aims at providing a standard set of human-understandable labels for various aspects of a system architecture like CPU, network fabrics, etc. and APIs to detect, query and compare them.
This project grew out of Spack and is currently under active development. At present it supports APIs to detect and model compatibility relationships among different CPU microarchitectures.
Getting started with development
The archspec Python package needs poetry to
be installed from VCS sources. The preferred method to install it is via
its custom installer outside of any virtual environment:
curl -sSL https://install.python-poetry.org | python3 -
You can refer to Poetry's documentation
for further details or for other methods to install this tool. You'll also need tox
to run unit test:
pip install --user tox
Finally, you'll need to clone the repository:
git clone --recursive https://github.com/archspec/archspec.git
Running unit tests
Once you have your environment ready you can run archspec unit tests
using tox from the root of the repository:
$ tox
[ ... ]
py27: commands succeeded
py35: commands succeeded
py36: commands succeeded
py37: commands succeeded
py38: commands succeeded
pylint: commands succeeded
flake8: commands succeeded
black: commands succeeded
congratulations :)
Citing Archspec
If you are referencing archspec in a publication, please cite the following
paper:
- Massimiliano Culpo, Gregory Becker, Carlos Eduardo Arango Gutierrez, Kenneth
Hoste, and Todd Gamblin.
archspec: A library for detecting, labeling, and reasoning about microarchitectures. In 2nd International Workshop on Containers and New Orchestration Paradigms for Isolated Environments in HPC (CANOPIE-HPC'20), Online Event, November 12, 2020.
License
Archspec is distributed under the terms of both the MIT license and the Apache License (Version 2.0). Users may choose either license, at their option.
All new contributions must be made under both the MIT and Apache-2.0 licenses.
See LICENSE-MIT, LICENSE-APACHE, COPYRIGHT, and NOTICE for details.
SPDX-License-Identifier: (Apache-2.0 OR MIT)
LLNL-CODE-811653
Metadata
Release files for archspec 0.2.7
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| archspec-0.2.7.tar.gz | 60.5 kB | Without provenance | Details for archspec-0.2.7.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| archspec-0.2.7-py3-none-any.whl | Python 3 | none | any | Details for archspec-0.2.7-py3-none-any.whl |
Total release size: 147.9 kB
Release files / archspec-0.2.7.tar.gz
| Download URL | archspec-0.2.7.tar.gz |
|---|---|
| Size | 60.5 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
87bd0f5664e641333c8878352987a7e7fadd225252279ac9f37c0ca185de3147
|
|
BLAKE2b-256 checksum How to use checksums |
3e1e5be538cbaf66d14b276efd536ca76cefdff82eab95c1b7078792a24aaa86
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
poetry/1.8.4 CPython/3.8.10 Linux/5.15.0-139-generic
|
Release files / archspec-0.2.7-py3-none-any.whl
| Download URL | archspec-0.2.7-py3-none-any.whl |
|---|---|
| Size | 87.3 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
b6d97c2d840d8538d3f63b70c7c45ace2d26b3d9591d7c93d5fb33e50b1bc592
|
|
BLAKE2b-256 checksum How to use checksums |
8a51ef383bb83ed9018413d3a9259c3d0535c9fb2c05ebce13a7ada259b20a0b
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
poetry/1.8.4 CPython/3.8.10 Linux/5.15.0-139-generic
|
Security for archspec 0.2.7
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.