Skip to content

feat: use OSS ICICLE for GPU acceleration (version v3.2.2)#1451

Merged
ivokub merged 3 commits intomasterfrom
feat/oss-icicle
Apr 6, 2025
Merged

feat: use OSS ICICLE for GPU acceleration (version v3.2.2)#1451
ivokub merged 3 commits intomasterfrom
feat/oss-icicle

Conversation

@ivokub
Copy link
Copy Markdown
Collaborator

@ivokub ivokub commented Mar 24, 2025

Description

Link against the OSS version of ICICLE. Also update some changed APIs

Type of change

  • New feature (non-breaking change which adds functionality)

How has this been tested?

Tested an example ECDSA circuit locally. It is not committed as we don't have GPU accelerated CI anyway and it requires a setup.

Checklist:

  • I have performed a self-review of my code
  • I have commented my code, particularly in hard-to-understand areas
  • I have made corresponding changes to the documentation
  • I have added tests that prove my fix is effective or that my feature works
  • I did not modify files generated from templates
  • golangci-lint does not output errors locally
  • New and existing unit tests pass locally with my changes
  • Any dependent changes have been merged and published in downstream modules

@ivokub ivokub added the type: consolidate strengthen an existing feature label Mar 24, 2025
@ivokub ivokub requested review from Copilot and gbotrel March 24, 2025 14:46
@ivokub ivokub self-assigned this Mar 24, 2025
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull Request Overview

This PR updates the project to link against the OSS version of ICICLE (v3.2.2) for GPU acceleration. Key changes include updating the import paths from icicle/v3 to icicle-gnark/v3, modifying the device warmup logic to create and use a stream, and updating documentation links accordingly.

Reviewed Changes

Copilot reviewed 6 out of 7 changed files in this pull request and generated no comments.

Show a summary per file
File Description
backend/groth16/bn254/icicle/icicle.go Updated ICICLE import paths to the new OSS repo
backend/groth16/bn254/icicle/device.go Modified device warmup logic to incorporate stream creation
backend/backend.go Updated documentation links to reflect new repo
README.md Revised repository link for prerequisites
backend/groth16/bn254/icicle/provingkey.go Updated core import path to use icicle-gnark
Files not reviewed (1)
  • go.mod: Language not supported

Copy link
Copy Markdown
Collaborator

@gbotrel gbotrel left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

lgtm 👍

@ivokub ivokub merged commit 60aade6 into master Apr 6, 2025
5 checks passed
@ivokub ivokub deleted the feat/oss-icicle branch April 6, 2025 10:08
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

type: consolidate strengthen an existing feature

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants