ingonyama-zk / icicle

A hardware acceleration library for compute intensive cryptography :ice_cube:
https://dev.ingonyama.com/icicle/overview
MIT License
329 stars 97 forks source link

[FEAT]: golang device slice ranges #463

Closed jeremyfelder closed 6 months ago

jeremyfelder commented 6 months ago

Describe the changes

This PR adds the capability to slice a DeviceSlice, allowing portions of data that are already on the device to be reused.

Additionally, this PR removes the need for a HostSlice underlying type to implement a Size function and uses unsafe.Sizeof instead. This together with #407 will allow direct usage of gnark-crypto types with HostSlice without the need for converting to ICICLE types