aboutsummaryrefslogtreecommitdiffstats
path: root/docs/design/024-batch-executor.md
diff options
context:
space:
mode:
authoreunhhu <[email protected]>2026-10-05 23:27:43 +0100
committereunhhu <[email protected]>2026-10-05 23:27:43 +0100
commit1b64ab89710a637e66604ece15d83f40ba314586 (patch)
tree973d0a8ee41379ff87cee24f2524c8460dca04b2 /docs/design/024-batch-executor.md
parentfffe01904984aebd10b237e400859b5ff86f0729 (diff)
downloadpure-1b64ab89710a637e66604ece15d83f40ba314586.tar.gz
pure-1b64ab89710a637e66604ece15d83f40ba314586.zip
024, 126, 127: the lanes are 24 buffers (stage 2), about 200 KB a thread; stage 2 under ASan and UBSan (139 programs, the executor's output)
Diffstat (limited to 'docs/design/024-batch-executor.md')
-rw-r--r--docs/design/024-batch-executor.md5
1 files changed, 3 insertions, 2 deletions
diff --git a/docs/design/024-batch-executor.md b/docs/design/024-batch-executor.md
index 6a59f7d..b1f8b3a 100644
--- a/docs/design/024-batch-executor.md
+++ b/docs/design/024-batch-executor.md
@@ -108,8 +108,9 @@ C의 3–300배에서 1.92배로 줄였지만([125](../research/125-tier-first-s
레인 레지스터 16개 × 256 × 8바이트 = 32 KB를 이벤트 스레드 하나가 쓴다(L1 64 KB 안). 펼친 레인(BFS의 간선)도 256씩 끊어 같은
자리를 쓴다. 묶음 프로그램은 루프마다 연산 수십 개 × 32바이트다. 실행 가능한 페이지도, 코드 캐시도 없다.
-1단계는 묶음을 1024 레인으로 했다(126). 묶음마다 명령을 해석하는 고정 값(약 500 ns)을 나누기 위해서다. 그래서 레인 버퍼가 16개 ×
-1024 × 8바이트 = 약 134 KB다. 스레드의 정적 TLS에 있고, 묶음을 도는 스레드만 그 페이지를 쓴다.
+1단계는 묶음을 1024 레인으로 했다(126). 묶음마다 명령을 해석하는 고정 값(약 500 ns)을 나누기 위해서다. 2단계에서 레인 버퍼를
+24개로 늘렸다(중첩 루프의 상태와 모으기가 버퍼를 쥔다). 그래서 레인 자리가 24개 × (1024 + 24) × 8바이트 = 약 200 KB다. 스레드의
+정적 TLS에 있고, 묶음을 도는 스레드만 그 페이지를 쓴다.
### JIT와의 관계