Skip to main content

nCompass Python SDK

PyPI Downloads License Python

The Python SDK powering our Performance Optimization IDE—bringing seamless profiling and performance analysis directly into your development workflow.

Built by nCompass Technologies.

What are we building?

We're building a Performance Optimization IDE that improves developer productivity by 100x when profiling and analyzing performance of GPU and other accelerator systems. Our IDE consists of two integrated components:

🎯 VSCode Extension

Unify your profiling workflow with seamless integration between traces and codebases:

  • No more context switching — profile, analyze, and optimize all in one place
  • Zero-copy workflow — visualize traces directly in your editor without transferring files between machines
  • Code-to-trace navigation — jump seamlessly between your codebase and performance traces
  • AI-powered insights — get intelligent suggestions for performance improvements and bottleneck identification

⚙️ SDK (this repo)

The Python SDK that powers the extension with powerful automation features:

  • Zero-instrumentation profiling — AST-level code injection means you never need to manually add profiling statements
  • Universal trace conversion — convert traces from nsys and other formats to Chrome traces for integrated visualization
  • Extensible architecture — built for customization and extension (contributions welcome!)

Installation

Install via pip:

pip install ncompass

⚠️ Troubleshooting: If you run into issues with ncompasslib or pydantic, ensure that:

  1. You are running Python 3.10+
  2. You have Pydantic>=2.0 installed

Examples

Refer to our open source GitHub repo for examples. Our examples are built to work together with the VSCode extension. For instance, with adding tracepoints to the code, you can add/remove tracepoints using the extension and then run profiling using our examples.

Online Resources

Requirements

  • Python 3.10 or higher
  • Nsight Systems CLI installed (for .nsys-rep to .json.gz conversion features)

Building without packaging

Because of Rust dependencies for the fast .nsys-rep to .json.gz converter, -e (editable) builds aren't setup. To build you have to just pip install ./ and use the package from your python env.

To run tests, run the following:

nix develop
pytest tests/ # python tests
cd ncompass_rust/trace_converters/
cargo test --target=x86_64-unknown-linux-musl # rust tests

License

This project is licensed under the Apache License 2.0 - see the LICENSE file for details.

Made with ⚡ by nCompass Technologies

Metadata

Release files for ncompass 0.1.15

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for ncompass 0.1.15
File Size Uploaded Provenance
ncompass-0.1.15.tar.gz 147.6 kB Without provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for ncompass 0.1.15
File Interpreter ABI Platform
ncompass-0.1.15-py3-none-any.whl Python 3 none any Details

Total release size: 2.5 MB

Release files / ncompass-0.1.15.tar.gz

Download URL ncompass-0.1.15.tar.gz
Size 147.6 kB
Tags Source
SHA-256 checksum
How to use checksums
89b1da58aa1199330ca4fa33c90261673151c8d7cdf776d4ebb120ac624612d4
BLAKE2b-256 checksum
How to use checksums
55413e034efe6617272564b15090155997bd7698e7c7216e544e0a908f06b320
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.10.19

Release files / ncompass-0.1.15-py3-none-any.whl

Download URL ncompass-0.1.15-py3-none-any.whl
Size 2.3 MB
Tags Python 3
SHA-256 checksum
How to use checksums
c60ce6fd4483368cf4ecad49ffec176b4633f14074a44a6cf71e78607f0e8b0e
BLAKE2b-256 checksum
How to use checksums
522d137bf25bace9ceb2fcab082dc912b8d8e7f50045e2fe4e65fa427ee35dc8
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.10.19

Security for ncompass 0.1.15

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