Skip to content

Commit eb0710c

Browse files
committed
fix gpu tracegen bug
1 parent 5f50b0b commit eb0710c

File tree

2 files changed

+11
-21
lines changed

2 files changed

+11
-21
lines changed

extensions/native/circuit/cuda/include/native/sumcheck.cuh

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -8,14 +8,14 @@ using namespace native;
88
template <typename T> struct HeaderSpecificCols {
99
T pc;
1010
T registers[5];
11-
MemoryReadAuxCols<T> read_records[7];
11+
MemoryReadAuxCols<T> read_records[8];
1212
MemoryWriteAuxCols<T, EXT_DEG> write_records;
1313
};
1414

1515
template <typename T> struct ProdSpecificCols {
1616
T data_ptr;
1717
T p[EXT_DEG * 2];
18-
MemoryReadAuxCols<T> read_records[2];
18+
MemoryReadAuxCols<T> read_records[1];
1919
T p_evals[EXT_DEG];
2020
MemoryWriteAuxCols<T, EXT_DEG> write_record;
2121
T eval_rlc[EXT_DEG];
@@ -24,7 +24,7 @@ template <typename T> struct ProdSpecificCols {
2424
template <typename T> struct LogupSpecificCols {
2525
T data_ptr;
2626
T pq[EXT_DEG * 4];
27-
MemoryReadAuxCols<T> read_records[2];
27+
MemoryReadAuxCols<T> read_records[1];
2828
T p_evals[EXT_DEG];
2929
T q_evals[EXT_DEG];
3030
MemoryWriteAuxCols<T, EXT_DEG> write_records[2];

extensions/native/circuit/cuda/src/sumcheck.cu

Lines changed: 8 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ __device__ void fill_sumcheck_specific(RowSlice row, MemoryAuxColsFactory &mem_h
1111
uint32_t start_timestamp = row[COL_INDEX(NativeSumcheckCols, start_timestamp)].asUInt32();
1212

1313
if (row[COL_INDEX(NativeSumcheckCols, header_row)] == Fp::one()) {
14-
for (uint32_t i = 0; i < 7; ++i) {
14+
for (uint32_t i = 0; i < 8; ++i) {
1515
mem_fill_base(
1616
mem_helper,
1717
start_timestamp + i,
@@ -25,43 +25,33 @@ __device__ void fill_sumcheck_specific(RowSlice row, MemoryAuxColsFactory &mem_h
2525
specific.slice_from(COL_INDEX(HeaderSpecificCols, write_records.base))
2626
);
2727
} else if (row[COL_INDEX(NativeSumcheckCols, prod_row)] == Fp::one()) {
28-
mem_fill_base(
29-
mem_helper,
30-
start_timestamp,
31-
specific.slice_from(COL_INDEX(ProdSpecificCols, read_records[0].base))
32-
);
3328
if (row[COL_INDEX(NativeSumcheckCols, within_round_limit)] == Fp::one()) {
3429
mem_fill_base(
3530
mem_helper,
36-
start_timestamp + 1,
37-
specific.slice_from(COL_INDEX(ProdSpecificCols, read_records[1].base))
31+
start_timestamp,
32+
specific.slice_from(COL_INDEX(ProdSpecificCols, read_records[0].base))
3833
);
3934
mem_fill_base(
4035
mem_helper,
41-
start_timestamp + 2,
36+
start_timestamp + 1,
4237
specific.slice_from(COL_INDEX(ProdSpecificCols, write_record.base))
4338
);
4439
}
4540
} else if (row[COL_INDEX(NativeSumcheckCols, logup_row)] == Fp::one()) {
46-
mem_fill_base(
47-
mem_helper,
48-
start_timestamp,
49-
specific.slice_from(COL_INDEX(LogupSpecificCols, read_records[0].base))
50-
);
5141
if (row[COL_INDEX(NativeSumcheckCols, within_round_limit)] == Fp::one()) {
5242
mem_fill_base(
5343
mem_helper,
54-
start_timestamp + 1,
55-
specific.slice_from(COL_INDEX(LogupSpecificCols, read_records[1].base))
44+
start_timestamp,
45+
specific.slice_from(COL_INDEX(LogupSpecificCols, read_records[0].base))
5646
);
5747
mem_fill_base(
5848
mem_helper,
59-
start_timestamp + 2,
49+
start_timestamp + 1,
6050
specific.slice_from(COL_INDEX(LogupSpecificCols, write_records[0].base))
6151
);
6252
mem_fill_base(
6353
mem_helper,
64-
start_timestamp + 3,
54+
start_timestamp + 2,
6555
specific.slice_from(COL_INDEX(LogupSpecificCols, write_records[1].base))
6656
);
6757
}

0 commit comments

Comments
 (0)