Skip to content

FTPVL is a library for simplifying the data collection and visualization process for Symbiflow development.

License

Notifications You must be signed in to change notification settings

SymbiFlow/FPGA-Tool-Performance-Visualization-Library

 
 

Repository files navigation

FPGA Tool Performance Visualization Library (FTPVL)

Python application

Single Table Visualization

FTPVL is a library for simplifying the data collection and visualization process for Symbiflow development. Although it was made with Symbiflow in mind, it is highly extensible for future integration with other software.

Example Usage

Take a look at the notebooks below to demonstrate the functionality of FTPVL.

  1. Using HydraFetcher and Processors
  2. Styling tables with SingleTableVisualizer
  3. Comparing two Evaluations using the internal dataframe
  4. Filtering and Aggregating an Evaluation
  5. Comparing multiple Evaluations

Documentation

Extensive documentation, including a Getting Started guide, is available on ReadTheDocs.

Documentation of this library is generated in the docs/ folder by reading the docstrings from the source code. The website is generated using Sphinx using the Read the Docs theme.

pip install -r requirements.txt
cd docs
make html

Dependencies

  • pandas: for data management and processing (website)
  • seaborn: for colormap generation (website)
  • jinja2: for visualization generation (website)
  • scipy: for support of built-in aggregators(website)

Development Dependencies

  • requests-mock: for mocking request object for testing fetchers (website)
  • pylint: for linting (website)
  • pytest: testrunner (website)
  • coverage: for coverage testing (website)
  • sphinx: for documentation generation (website)
  • sphinx-rtd-theme: for documentation generation (theme) (website)

Changes

0.2.1

  • Add support for fetching using the absolute evaluation number instead of relative
  • Add support for handling legacy Icebreaker processors

0.2.0

  • Added evaluation concatenation and CompareToFirst processors for relative comparisons between evaluations.
  • Fixed HydraFetcher issues when fetching an older evaluation that contains more than one build artifact.

0.1.6

  • Added support for filter and aggregator processors, fixes #9

0.1.5

  • Added support for custom projects and jobsets in HydraFetcher.

0.1.4

  • Added RelativeDiff processor.
  • Updated some internal docstrings

About

FTPVL is a library for simplifying the data collection and visualization process for Symbiflow development.

Resources

License

Code of conduct

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Python 100.0%