mirror of
https://github.com/zama-ai/tfhe-rs.git
synced 2026-01-09 22:57:59 -05:00
This backend abstract communication with Hpu Fpga hardware.
It define it's proper entities to prevent circular dependencies with
tfhe-rs.
Object lifetime is handle through Arc<Mutex<T>> wrapper, and enforce
that all objects currently alive in Hpu Hw are also kept valid on the
host side.
It contains the second version of HPU instruction set (HIS_V2.0):
* DOp have following properties:
+ Template as first class citizen
+ Support of Immediate template
+ Direct parser and conversion between Asm/Hex
+ Replace deku (and it's associated endianess limitation) by
+ bitfield_struct and manual parsing
* IOp have following properties:
+ Support various number of Destination
+ Support various number of Sources
+ Support various number of Immediat values
+ Support of multiple bitwidth (Not implemented yet in the Fpga
firmware)
Details could be view in `backends/tfhe-hpu-backend/Readme.md`
37 lines
815 B
TOML
37 lines
815 B
TOML
[package]
|
|
name = "tfhe-hpu-mockup"
|
|
version = "0.1.0"
|
|
edition = "2021"
|
|
authors = ["Zama Hardware team"]
|
|
license = "BSD-3-Clause-Clear"
|
|
description = "Simulation model of HPU hardware."
|
|
readme = "README.md"
|
|
|
|
[features]
|
|
default = []
|
|
isc-order-check = []
|
|
|
|
[dependencies]
|
|
tfhe = { path = "../../tfhe", features = ["hpu", "hpu-debug"] }
|
|
|
|
ipc-channel = "0.18.3"
|
|
|
|
strum = { version = "0.26.2", features = ["derive"] }
|
|
strum_macros = "0.26.2"
|
|
bytemuck = "1.16.0"
|
|
|
|
clap = { version = "4.4.4", features = ["derive"] }
|
|
clap-num = "*"
|
|
anyhow = "1.0.82"
|
|
tracing = "0.1.40"
|
|
tracing-subscriber = { version = "0.3.18", features = ["env-filter", "json"] }
|
|
serde_json = "1.0"
|
|
rand = "0.8.5"
|
|
serde = { version = "1", features = ["derive"] }
|
|
bitflags = "2.6.0"
|
|
|
|
[[bin]]
|
|
name = "hpu_mockup"
|
|
path = "src/mockup.rs"
|
|
required-features = []
|