> For the complete documentation index, see [llms.txt](https://docs.rome.builders/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.rome.builders/ko/canton-zk-evm/measurements.md).

# 측정

기록된 증명 및 정산 측정값과 그 날짜, 하드웨어, 제한 사항.

프로버 벤치마크와 Ostia에서의 실행은 서로 다른 게스트와 워크로드를 측정했다. 벤치마크는 수정되지 않은 업스트림 reth 게스트를 사용했다. Ostia 실행은 이 저장소의 게스트에 체인 규칙 검사와 게이트웨이를 사용했다.

이 페이지는 커밋에 대해 설명합니다 `a84e84e439a5cc669c0ae61facf7c8c995d9d564`. 전체 내용을 읽어보세요 [메트릭스 보고서](https://github.com/rome-protocol/canton-zk-evm/blob/a84e84e439a5cc669c0ae61facf7c8c995d9d564/docs/METRICS.md) 및 [데모 결과](https://github.com/rome-protocol/canton-zk-evm/blob/a84e84e439a5cc669c0ae61facf7c8c995d9d564/demo/README.md#results).

## 하드웨어

두 세트 모두 NVIDIA RTX PRO 6000 Blackwell Server Edition GPU 하나를 사용했다. Ostia 데모에서는 GPU와 드라이버만 기록했다.

| 항목             | 프로버 벤치마크, 2026-10-03                         | Ostia 실행, 2026-10-05 |
| -------------- | -------------------------------------------- | -------------------- |
| CPU            | AMD EPYC 9B45, 48 vCPU; 소켓 1개, 코어당 2 스레드     | 기록되지 않음              |
| 호스트 RAM        | 호스트가 보고한 176 GiB                             | 기록되지 않음              |
| GPU 메모리        | 97,887 MiB, 96 GB로 표기됨; PCIe 5세대 x16         | 용량은 기록되지 않음          |
| 드라이버           | 580.178.04                                   | 580.178.04           |
| CUDA           | 드라이버 수준에서 13.0; 사전 빌드된 GPU 바이너리, CUDA 툴킷 미설치 | 기록되지 않음              |
| 운영 체제 및 디스크    | Ubuntu 22.04.5, 500 GB 부팅 디스크                | 기록되지 않음              |
| Node 및 snarkjs | 20.18.0 및 0.7.6                              | 기록되지 않음              |

## 고정된 버전

이는 메트릭스 보고서에 나열된 저장소의 버전이며 [PINS](https://github.com/rome-protocol/canton-zk-evm/blob/a84e84e439a5cc669c0ae61facf7c8c995d9d564/PINS). 위의 벤치마크 호스트의 Node 버전은 프로버의 고정 버전과 다르다.

| 구성 요소                | 버전                                                             |
| -------------------- | -------------------------------------------------------------- |
| ZisK                 | 1.3.1-alpha                                                    |
| 업스트림 게스트 소스          | 0.13.1                                                         |
| reth                 | 2.5.2                                                          |
| Canton               | 3.6.0-snapshot.20260930.20337.0.ve610bc8f                      |
| 외부 호출용 Daml SDK      | 3.5.13-snapshot.20261001.145.0.v852bdd82                       |
| Daml 컴파일러            | 3.6.0-snapshot.20260915.14804.0.v53478765, Daml-LF 2.4를 대상으로 함 |
| Script 테스트용 Daml SDK | 3.5.12, Daml-LF 2.1을 대상으로 함                                    |
| Java                 | 21                                                             |
| Rust                 | 1.94.1                                                         |
| 빌더 및 데모용 Python      | 3.12 이상                                                        |
| 프로버 Node 및 snarkjs   | 20.20.2 및 0.7.6                                                |
| 익스플로러 Node           | 로컬에서는 22.18 이상; 컨테이너와 CI에서는 24                                 |
| 테스트 토큰 Solidity 컴파일러 | 0.8.28                                                         |

## 프로버 벤치마크: 2026-10-03

표는 각 블록 크기마다 3회의 워밍 실행에서 얻은 중앙값 시간을 초 단위로 제시한다. 각 블록에는 단순 전송만 포함되었다. 모든 증명은 통과했다 `cargo-zisk verify`. 원시 벤치마크 로그는 저장소에 없다.

| 블록                  | 래핑 없는 증명, 새 프로세스 | 래핑만, 새 프로세스 | 래핑이 있는 증명, 새 프로세스 | 전체 새 프로세스 | 실행 중인 프로버: 래핑된 증명으로의 입력 | 실행 중인 프로버: 검증된 증명으로의 입력 |
| ------------------- | ---------------- | ----------- | ----------------- | --------- | ----------------------- | ----------------------- |
| 전송 1개, 21 kgas      | 4.6              | 2.4         | 7.4               | 21.1      | 6.7                     | 7.0                     |
| 전송 1,000개, 21 Mgas  | 6.9              | 2.4         | 9.6               | 24.5      | 9.0                     | 9.3                     |
| 전송 5,000개, 105 Mgas | 17.9             | 2.4         | 20.8              | 34.9      | 21.2                    | 21.5                    |

실행 중인 프로버는 코디네이터, 워커 및 키를 로드한 상태를 유지했다. 새 프로세스 총시간에는 프로버의 시작과 종료가 포함된다. 입력-증명 시간은 기존 witness 파일로 시작하며, witness 구축은 측정하지 않는다. 105 Mgas 사례는 Ostia 블록이 아니라 업스트림 게스트의 벤치마크였다. Ostia의 고정 블록 가스 한도는 30,000,000이다.

| 증명 측정                  | 래핑된 PLONK       | 래핑되지 않은 STARK       |
| ---------------------- | --------------- | ------------------- |
| 증명 파일 크기               | 2,942\~2,944바이트 | 415,232\~415,234바이트 |
| `cargo-zisk verify` 시간 | 0.29\~0.30초     | 0.03초               |
| 와이어 크기                 | 1,344바이트        | 측정하지 않음             |

래핑된 증명을 검증하려면 snarkjs를 실행하기 위해 Node를 시작해야 한다. 이는 사이드카의 네이티브 검증기를 측정한 것이 아니다. 1,344바이트 와이어 형식에는 768바이트의 증명, 32바이트의 프로그램 키, 32바이트의 재귀 루트, 512바이트의 공개 값이 포함된다.

## 시작 및 메모리

이 측정치는 ZisK 1.3.1-alpha를 사용한 동일한 2026-10-03 벤치마크에서 나온 것이다.

| 측정                                                       | 결과                              |
| -------------------------------------------------------- | ------------------------------- |
| ZisK의 캐시를 삭제하고 페이지 캐시를 내린 뒤의 첫 1전송 실행, 증명 키는 여전히 디스크에 있음 | 총 123초; 증명 작업은 14.5초가 걸렸다       |
| 게스트의 컴파일된 캐시가 이미 있는 상태에서 실행 중인 프로버 시작                    | 키를 7.0초에 로드한 뒤, 프로그램 등록에 9.5초   |
| 그 시작 이후의 첫 증명 요청                                         | 6.56초                           |
| 에 의해 보고된 GPU 최대 메모리 `nvidia-smi`                         | 93.2 GiB                        |
| 새 프로세스 증명 중 호스트 RAM 증가                                   | 27\~29 GiB, 그리고 공유 메모리 22.9 GiB |
| 실행 중인 프로버가 요청을 처리하는 동안의 호스트 RAM 증가                       | 3 GiB, 그리고 공유 메모리 22.9 GiB      |
| PLONK 래핑만에 대해 보고된 GPU 메모리                                | 30,054,767,337바이트, 약 28.0 GiB   |

프로버는 큰 GPU 버퍼를 카드에 맞게 할당한다. 피크 사용량은 가장 작은 벤치마크 블록과 가장 큰 벤치마크 블록에서 거의 같았다. 이는 프로버 전체에 필요한 최소 GPU 메모리를 확정하지는 않는다.

## Ostia 데모: 2026-10-05

각 사례는 로컬 Canton 네트워크에서, 프로버가 이미 실행 중인 상태로, 커밋에서 한 번씩 실행되었다 `6b445073163832e9023850f53678617d90dfc808`. 이는 개별 테스트 결과이다. The [결과 폴더](https://github.com/rome-protocol/canton-zk-evm/tree/a84e84e439a5cc669c0ae61facf7c8c995d9d564/demo/results) 기록을 보유한다. [개요](/ko/canton-zk-evm/canton-zk-evm.md#what-the-demo-showed) 다섯 가지 결과를 설명한다.

| 사례     | 블록 및 사용된 가스                                              | 증명                                  | 완료된 증명 파일에서 빌더 종료까지 | 전체 빌더 실행           |
| ------ | -------------------------------------------------------- | ----------------------------------- | ------------------- | ------------------ |
| 스모크    | 블록 1, 비어 있음; 가스 0                                        | 6.31초                               | 0.49초               | 155.20초            |
| 설정     | 블록 2, 트랜잭션 2개; 가스는 기록되지 않음                               | 6.71초                               | 기록되지 않음             | 8.00초              |
| 예치     | 블록 3, 트랜잭션 1개; 122,308 가스                                | 6.72초                               | 0.66초               | 8.14초              |
| 지급     | 블록 4, 트랜잭션 3개; 185,307 가스                                | 6.72초                               | 0.42초               | 7.87초              |
| 출금     | 블록 5, 트랜잭션 1개; 90,345 가스                                 | 6.72초                               | 0.58초               | 8.02초              |
| 할당 회수  | 블록 6은 거부되었고, 이후 트랜잭션 1개와 legs 없음으로 다시 빌드되었다; 가스는 기록되지 않음 | 거부된 빌드는 6.75초; 두 번째 증명은 별도로 측정하지 않음 | 거부된 제출은 시간 측정하지 않음  | 거부 8.09초; 커밋 8.04초 |
| 변조된 증명 | 블록 7은 거부됨; 가스는 기록되지 않음                                   | 변조 전 6.74초                          | 거부된 제출은 시간 측정하지 않음  | 7.57초              |

각 증명은 1,344바이트였다. 완료된 증명 파일부터 빌더 종료까지의 구간에는 게이트웨이의 계정 및 스토리지 증명을 가져오는 작업이 포함된다, `선지급`, 양쪽 확인 참여자에서 커밋하고 reth가 블록을 최종으로 표시하는 작업도 포함된다. 이는 Canton의 커밋 단독보다 더 길다. legs를 Canton 계약과 맞추는 작업은 증명 전에 이루어지며 그 구간 밖이다.

스모크 테스트의 전체 실행에는 witness 및 입력 준비와 프로버의 게스트 프로그램 초기 설정이 포함된다. 입력 도구를 빌드하는 작업도 포함될 수 있다. 해당 단계들의 별도 시간은 기록되지 않았다.

## 기타 기록된 검사

2026-10-04에는 첫 전송 증명이 실행 중인 체인이 아니라 genesis의 임시 복사본에서 블록 1을 다루었다: 21,000 가스 전송 1개와 385,277개의 게스트 단계. 세 번의 증명은 6.33, 6.75, 6.69초가 걸렸다. ZisK의 검증기와 저장소의 verifier crate가 증명을 확인했다. 입력의 chain id를 1로 바꾸자 게스트는 증명 없이 이를 거부했다.

빈 빌드 폴더에서 게스트를 빌드하는 데는 종속성 다운로드를 포함해 125초가 걸렸다. 두 번의 새 체크아웃은 각각 133초와 126초가 걸렸고 서로 같은 ELF와 programVK를 생성했다. 프로버의 첫 프로그램 설정에는 43초가 걸렸다. 이 수치는 메트릭스 보고서와 [게스트 README](https://github.com/rome-protocol/canton-zk-evm/blob/a84e84e439a5cc669c0ae61facf7c8c995d9d564/guest/README.md).

2026-10-05 데모 이후, 익스플로러의 블록 3 브라우저 검사는 13ms에 통과했다. 클릭부터 응답까지 약 0.35초가 걸렸다. 이는 브라우저 검사 1회일 뿐 벤치마크가 아니며, ...에 기록되지 않았다 `demo/results/`.

WebAssembly 검사는 CI 러너의 Node에서 8\~32ms가 걸렸다. 그 테스트는 증명을 검증한 뒤 불일치하는 헤더를 거부했다. 이는 성공한 전체 블록 검사도 아니고 브라우저 측정도 아니며; ...를 보라 [verifier README](https://github.com/rome-protocol/canton-zk-evm/blob/a84e84e439a5cc669c0ae61facf7c8c995d9d564/explorer/verify/README.md).

## 이 측정치가 입증하지 않는 것

계약 호출이나 precompile, 105 Mgas를 넘는 블록, 또는 Ostia의 게스트를 사용한 벤치마크의 블록 크기에 대한 체계적인 벤치마크는 없다. 여러 GPU나 동시에 진행 중인 여러 블록에 대한 측정도 없다.

워밍 호스트에서의 witness 구축, 네이티브 사이드카 검증, 대형 블록에 대한 Canton의 커밋은 각각 별도로 시간 측정되지 않았다. 데모는 최대 3개의 트랜잭션과 1개의 leg가 있는 블록들을 커밋했다. 각 사례는 한 번만 실행되었으므로, 결과는 실행 간 시간 변동이 얼마나 되는지 보여주지 않는다.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation by asking a question.

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://docs.rome.builders/ko/canton-zk-evm/measurements.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
