Skip to content

intel/code-base-investigator

Code Base Investigator

DOI OpenSSF Best Practices

Code Base Investigator (CBI) is an analysis tool that provides insight into the portability and maintainability of an application's source code.

  • Measure code divergence to understand how much code is specialized for different compilers, operating systems, hardware micro-architectures and more.

  • Visualize the distance between the code paths used to support different compilation targets.

  • Identify stale, legacy, code paths that are unused by any compilation target.

  • Export metrics and code path information required for P3 analysis using other tools.

Table of Contents

Dependencies

  • jsonschema
  • Matplotlib
  • NumPy
  • pathspec
  • Python 3
  • PyYAML
  • SciPy

Installation

The latest release of CBI is version 1.2.0. To download and install this release, run the following:

git clone --branch 1.2.0 https://github.com/intel/code-base-investigator.git
cd code-base-investigator
pip install .

We strongly recommend installing CBI within a virtual environment.

Getting Started

After installation, run codebasin -h to see a complete list of options.

A full tutorial can be found in the online documentation.

Contribute

Contributions to CBI are welcome in the form of issues and pull requests.

See CONTRIBUTING for more information.

License

BSD 3-Clause

Security

See SECURITY for more information.

The main branch of CBI is the development branch, and should not be used in production. Tagged releases are available here.

Code of Conduct

Intel has adopted the Contributor Covenant as the Code of Conduct for all of its open source projects. See CODE OF CONDUCT for more information.

Citations

If your use of CBI results in a research publication, please consider citing the software and/or the papers that inspired its functionality (as appropriate). See CITATION for more information.