Skip to content

XLS backend#1343

Open
Girjoaba wants to merge 24 commits intofastmachinelearning:mainfrom
Girjoaba:xls_backend
Open

XLS backend#1343
Girjoaba wants to merge 24 commits intofastmachinelearning:mainfrom
Girjoaba:xls_backend

Conversation

@Girjoaba
Copy link
Copy Markdown

Description

📝 The implementation of a new backend based on the High-Level Synthesis (HLS) toolchain XLS from Google. The purpose of this addition is to increase vendor availability and benefit from the developments that XLS brings to HLS field. XLS is an open-source project, being suitable with the no license requirements of hls4ml.

The changes include the addition of all components required of a new backend: an inherited xls_backend class, an xls_writer and corresponding optimization passes.

Dependencies:

For the XLS backend to work, the original XLS project must be built as described here under Install Latest Release. Afterwards, in the hls4ml config object the path to the installed bazel-bin must be specified as follows:

config['xls_bazel_bin_path'] = '$HOME/xls/bazel-bin'

Type of change

  • Bug fix (non-breaking change that fixes an issue)
  • Documentation update
  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to not work as expected)
  • A new research paper code implementation
  • Other (Specify)

Tests

Currently, the backend was included in 2 pytests: test_keras_api.py and test_activations.py.

The ELU function in test_keras_api.py was changed to a RELU for now. The original tests will be reverted back and the backend will be included in all required tests.

Test Configuration:

Checklist

  • I have read the guidelines for contributing.
  • I have commented my code, particularly in hard-to-understand areas.
  • I have made corresponding changes to the documentation.
  • My changes generate no new warnings.
  • I have installed and run pre-commit on the files I edited or added.
  • I have added tests that prove my fix is effective or that my feature works.

@JanFSchulte JanFSchulte added this to the v1.3.0 milestone Nov 5, 2025
@bo3z bo3z added the feature New hls4ml feature label Jan 30, 2026
@bo3z bo3z removed this from the v1.3.0 milestone Mar 13, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

feature New hls4ml feature

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants