Skip to content

Shankara/picus backend#1

Open
shankarapailoor wants to merge 180 commits intomainfrom
shankara/picus-backend
Open

Shankara/picus backend#1
shankarapailoor wants to merge 180 commits intomainfrom
shankara/picus-backend

Conversation

@shankarapailoor
Copy link
Copy Markdown
Collaborator

Preliminary version of the Picus backend for Ziren

  • Includes an implementation of AirBuilder called PicusBuilder to build Picus programs
  • Added a data structure called PicusInfo which tracks the inputs, outpts and selectors for a Chip.
  • Extended the chip interface to include a picus_info function which produces a PicusInfo structure for that Chip. Currently this function is implemented manually but we can create a macro to generate this automatically.

weilzkm and others added 30 commits September 26, 2025 00:14
* modify go runtime module name and fix max memory

* add test for max memory
* remove unused LookupKind

* add check for next_next_pc

* remove unused core/machine/runtime

* Update shape, temply close vk check

Co-authored-by: Jingping Yin <yinjingping2022@gmail.com>

* bump version 1.2.1

---------

Co-authored-by: Jingping Yin <yinjingping2022@gmail.com>
* Add docs for memory layout of guest program

* add link for tls heap

* fix typo
* feat: add single node for network prover.

* feat: add proving time.

* feat: add comments
* chore: do not use sys feature

* fix: compilation failed after enabling the sys feature
* Update guest-program.md

* Update machine.rs
* feat: gpu sdk

* style: move files

* style: remove stdin from ZKMProofWithPublicValues

* test: gpu sdk

* chore: default server

* chore: remove useless features

* chore: more env

* fix: image name

* doc: cuda prover
* Update lib.rs

* Update compress.rs
* delete unused values in memory/global

* opt check for is_real in memory/local.rs

* remove duclicated instruction opcode in send/receive_program

* fix fmt and comments for program chip

* add bool check for offset_is_zero for memory instructions

* rename addr_offset to addr_ls_two_bits in comments

* replace index to byteopcode in byte.rs

* fix comments in build

* fix clippy

* fix reduce problem in clo_clz

* add local.syscall_id check for is_enter_unconstrained

* add bool check for is_real in syscall/chip.rs

* add bool check for syscall_code[2]/local.is_sys_linux,send_to_table for syscall instrs

* fix check and constraints in add.rs

* fix comments for is_halt_or_exit_group check

* add u8 range check for next_pc/next_next_pc when is_branching is 0 for branching instruction

* replace Baby bear to Koala bear

* divide sys_nop to direct real syscall ids

* fix fmt

* delete sys_nop, bump 1.2.2
…ns (ProjectZKM#327)

* fix unsinged_mem_val for lwl/lwr, opt cols in MemoryInstructionsColumns

* update cargo lock
* feat: map to group

* fix: x coordinate

* fix: x coordinate

* style: remove useless code

* fix: mips_costs.json

* perf: x
…n" in Docs (ProjectZKM#312)

* added verifier page to docs

* Edits to verifier docs section

* Remove .DS_Store files from repository

* added proof aggregation section

* made edits to proof aggregation section and fixed links

* Added independent evaluations section

* Moved 'Use Cases' and 'Independent Evaluations' Section to 'Introduction' Page

* Removed independent evaluations
* optimize execute state

* optimize execute state

* optimize execute state

* optimize execute state

* optimize execute state

* optimize execute state

* optimize execute state

* optimize execute state

* return post state

* return post state

* return post state

* return post state

* return post state

* return post state

* return post state

* return post state

* return post state

* return post state

* return post state

* return post state

* return post state

* merge is_rw_a and is_memory in cpuchip and send/receive_instruction

* return post state

* return post state

* return post state

* return post state

* return post state

* split mov_cond from misc

* fix bugs

* return post state

* split wsbh from misc to mov_cond

* udpate shape

* fix merge errors

* return post state

* fix lint issues

* update small shape parameters and comments

---------

Co-authored-by: Angell Li <angell.l@zkm.io>
…roduction" in Docs " (ProjectZKM#342)

* Revert "Moved "Independent Evaluations" and "Use Cases" pages to "Introductio…"

This reverts commit f8574b3.

* docs: fix empty pages

* docs: fix empty pages
* Update cmp.rs

* Update weierstrass_decompress.rs
* fix dead link

* Update Go Example link formatting in guest-program.md
* chore: generate shapes for reth and geth

* chore: provide an option to specify the block number
* Opt: reduce MemoryInstructionsColumns

* fix fmt

Co-authored-by: weilzkm <140377101+weilzkm@users.noreply.github.com>
* chore: adjust DEFAULT_TRACE_GEN_WORKERS

* chore: adjust opts

* chore: remove sub events

* modify register read

* fix non trace mr_cpu

* fix mr read non trace

* revert checkpoint with tempfile

* revert checkpoint with tempfile

* add pre-alloc feature

* divide register from memory

* fix syscall

* cache shape height

* update commnets

* fix memory test and syscall register write

* merge global memory init and finalize events optionally

* merge global memory init and finalize events optionally

* use if/else to replace match in execution_operation

* replace add_events by add_sub_events

* reorder opcode

* opt emit_events

* opt local count accumulate

* add inline annotate

* replace add_events by add_sub_events

* code fmt

---------

Co-authored-by: Angell Li <angell.l@zkm.io>
Co-authored-by: Ubuntu <ubuntu@ip-10-0-102-174.us-west-2.compute.internal>
@shankarapailoor shankarapailoor force-pushed the shankara/picus-backend branch from 2221154 to 434b6a8 Compare March 3, 2026 23:16
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.