Skip to main content

Profiling and trace analysis SDK

Project description

nCompass Python SDK

PyPI Downloads License Python

Profiling and trace analysis SDK. Built by nCompass Technologies.

Features

  • 📊 Advanced Profiling - Built-in performance monitoring and health metrics
  • 🤖 AI-Powered Analysis - Intelligent trace analysis and bottleneck identification
  • 🔄 Iterative Optimization - Progressive profiling workflow for targeted improvements
  • 🎯 AST-Level Instrumentation - Automatic code instrumentation without manual changes
  • ⚡ Production-Ready - Separate development and production configurations

Installation

Install via pip:

pip install ncompass

Examples

Refer to our open source GitHub repo for examples.

Documentation

Online Resources

Why nCompass?

  • AI assisted bottleneck identification
  • Intelligent profiling marker suggestions
  • Progressive optimization guidance

Requirements

  • Python 3.9 or higher
  • PyTorch 2.0+ (optional, for torch profiling features)
  • CUDA-capable GPU (optional, for GPU profiling)

Examples

See the examples directory for complete working examples:

Development

Coverage & Quality Tools

All development and coverage tools are in the tools/ directory:

# Install development dependencies
pip install -e ".[dev]"

# Run coverage checks (from tools/ directory)
cd tools
make all-checks         # Run all checks
make coverage           # Unit test coverage
make docstring-coverage # Docstring coverage
make type-stats         # Type hint coverage
make lint               # Run linters
make format             # Auto-format code

See tools/COVERAGE.md for comprehensive documentation.

Project Structure

ncompass/
├── pyproject.toml      # Project config (only root file)
├── ncompass/           # Main package
├── tests/              # Test suite
├── examples/           # Usage examples
├── docs/               # Documentation
└── tools/              # All development tools
    ├── Makefile
    ├── COVERAGE.md
    ├── pyrightconfig.json
    └── .coveragerc

License

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

Support

About nCompass Technologies

We are building tools that allow GPU kernel developers save hours of dev time every week. Write code that runs twice as fast, twice as quickly.

Learn more at ncompass.tech.


Made with ⚡ by nCompass Technologies

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

ncompass-0.1.8.tar.gz (27.6 MB view details)

Uploaded Source

Built Distribution

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

ncompass-0.1.8-py3-none-any.whl (76.1 kB view details)

Uploaded Python 3

File details

Details for the file ncompass-0.1.8.tar.gz.

File metadata

  • Download URL: ncompass-0.1.8.tar.gz
  • Upload date:
  • Size: 27.6 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.14

File hashes

Hashes for ncompass-0.1.8.tar.gz
Algorithm Hash digest
SHA256 a47c206c8c294cc7be41f288e4775a2056789685cf96b3a38778d44a60f469fa
MD5 2a484ff7b16f34c672c0a06a2db6a2e8
BLAKE2b-256 71f76d5f3928e3e2538ed0b5295aa57349a63795ba1a1cb8427fbd39f86e3d22

See more details on using hashes here.

File details

Details for the file ncompass-0.1.8-py3-none-any.whl.

File metadata

  • Download URL: ncompass-0.1.8-py3-none-any.whl
  • Upload date:
  • Size: 76.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.14

File hashes

Hashes for ncompass-0.1.8-py3-none-any.whl
Algorithm Hash digest
SHA256 b216c80d633fa2de2792ed60bb44753e336e45911501c1fce0e4c2ecfb447c57
MD5 c5bb033ff11b3fe73bb92f2ccbb2d82d
BLAKE2b-256 46c709a0d402fb36a9eaf2882d753342055ea34f1da5cacdc5d18c2d8d5376eb

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