aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--CHECKPOINT.md2
-rw-r--r--docs/research/125-tier-first-steps.md80
-rw-r--r--research/experiments/040-against-c/2026-10-05-load.txt1
-rw-r--r--research/experiments/040-against-c/2026-10-05-suite.jsonl216
4 files changed, 298 insertions, 1 deletions
diff --git a/CHECKPOINT.md b/CHECKPOINT.md
index 5d4da83..83ad041 100644
--- a/CHECKPOINT.md
+++ b/CHECKPOINT.md
@@ -13,7 +13,7 @@
| 영역 | 확인한 것 | 근거 |
|---|---|---|
| 앱 표현 | 상태(수, `bool`, 정확한 64비트 정수 `i64`, text와 커서·마크, 레코드의 리스트와 키 있는 리스트, 인덱스), 입력(키, text, 필드 있는 메시지, 타이머), 원자적 이벤트 핸들러, 순수 보기(조건식, 표와 걸러진 표, count·sum·max·min·first), `fn`·`use` 라이브러리, text 비교, 시간(`now`, `every`, `floor`, `%`). 로드할 때 타입·스택·합류·커서와 인덱스의 소속을 모두 검증하고 이벤트의 실행량에 상한이 있다 | 008, [016](docs/design/016-bool-and-i64.md), aup `docs/design/002-dsl-direction.md`, aup `make check`(파이썬 참조 모델 대조, 진단 223건) |
-| 수명과 계산 | 값의 수명은 선언이 말한다: `state`(저장), `transient state`(앱이 도는 동안: 저장소에 쓰지 않고 다시 시작하면 초기값, SD 카드에서 쓰기 17배), `let`(이벤트 동안). 핸들러와 보기가 계산한다: 이벤트의 리스트(`let seen: list of Seen by node`), 세는 `for i in a .. b`, `break`, 8겹까지의 중첩, 그리고 `view 이름(인자) { … return … }`(스냅숏에서 돌아 소유자를 막지 않는다). 모든 반복은 시작할 때 횟수의 상한을 갖고, 모든 이벤트와 보기는 실행량 예산(정하지 않으면 2^28 명령)과 메모리 몫(2^28 바이트) 안에서 끝난다. 노드 10만·간선 100만의 BFS 한 이벤트가 HTTP로 90 ms였고(처음 397, 020 뒤 191; CPython 452, C 9.1, 123), 022 뒤 코어는 7.4 ms다(같은 프로세스의 C 9.9): 많이 찾는 저장된 리스트를 배열과 칸의 색인으로 펴고, 열을 값만큼 좁히고, 루프 묶음을 레지스터의 기계어로 돈다(리눅스 AArch64의 JIT; 다른 곳은 실행기, 답은 같다). 다만 C를 넘은 것은 미리 읽기 덕이고, 끄면 15.7 ms로 C의 1.57배다. 일곱 가지 일(실수 루프, 배낭, 정렬, 조인, 텍스트, 행렬, BFS)로 C와 견주면 지금은 3–300배 느리다. Pure의 표현과 뜻대로 손으로 쓴 바닥은 C의 0.90배이고 뜻의 검사는 끌어내면 0–3%라, 막는 것은 실행 계층이다(124). 모든 블록을 SSA로 올리는 최적화 계층이 다음이다(023). TPC-C −2.8%(기준 3% 안), 은행 질의의 명령 수는 1% 안. 같은 계산이 Pi(JIT)·WSL2·M3 Mac에서 같다. 같은 탐색을 보기로 하면 쓰기는 CPU를 나누는 만큼만 줄고(이벤트로 하면 0.2%로 멈춘다), 본문이 있는 보기는 보기의 스레드(`--view-workers`)가 계산해 연결 스레드를 막지 않는다(쓰기 최대 지연이 CPU만 나눌 때의 1.0배, 연결 스레드 하나에서 묻는 연결 둘이 1.95배) | [018](docs/design/018-lifetimes-and-computation.md), [020](docs/design/020-computing-faster.md), [117](docs/research/117-transient-states.md), [118](docs/research/118-computing-in-one-event.md), [119](docs/research/119-views-that-compute.md), [121](docs/research/121-computing-faster.md), [122](docs/research/122-views-off-the-connection-threads.md), [021](docs/design/021-past-c.md), [123](docs/research/123-past-c.md), [022](docs/design/022-arrays-and-registers.md), [124](docs/research/124-against-c.md), [023](docs/design/023-optimizing-tier.md) |
+| 수명과 계산 | 값의 수명은 선언이 말한다: `state`(저장), `transient state`(앱이 도는 동안: 저장소에 쓰지 않고 다시 시작하면 초기값, SD 카드에서 쓰기 17배), `let`(이벤트 동안). 핸들러와 보기가 계산한다: 이벤트의 리스트(`let seen: list of Seen by node`), 세는 `for i in a .. b`, `break`, 8겹까지의 중첩, 그리고 `view 이름(인자) { … return … }`(스냅숏에서 돌아 소유자를 막지 않는다). 모든 반복은 시작할 때 횟수의 상한을 갖고, 모든 이벤트와 보기는 실행량 예산(정하지 않으면 2^28 명령)과 메모리 몫(2^28 바이트) 안에서 끝난다. 노드 10만·간선 100만의 BFS 한 이벤트가 HTTP로 90 ms였고(처음 397, 020 뒤 191; CPython 452, C 9.1, 123), 022 뒤 코어는 7.4 ms다(같은 프로세스의 C 9.9): 많이 찾는 저장된 리스트를 배열과 칸의 색인으로 펴고, 열을 값만큼 좁히고, 루프 묶음을 레지스터의 기계어로 돈다(리눅스 AArch64의 JIT; 다른 곳은 실행기, 답은 같다). 다만 C를 넘은 것은 미리 읽기 덕이고, 끄면 15.7 ms로 C의 1.57배다. 일곱 가지 일(실수 루프, 배낭, 정렬, 조인, 텍스트, 행렬, BFS)로 C와 견주면 124에서는 3–300배 느렸고, 023의 계층과 표현(HASHED: 차례를 어긴 키는 해시 표의 칸에, 위치가 필요할 때 정렬)으로 지금은 1.19–5.58배(기하 평균 1.92)다(125). Pure의 표현과 뜻대로 손으로 쓴 바닥은 C의 0.90배이고 뜻의 검사는 끌어내면 0–3%라, 막는 것은 실행 계층이다(124). 모든 블록을 SSA로 올리는 최적화 계층(023)의 첫 걸음들이 들어갔고, 텍스트(실행기로 돈다)와 BFS(계층이 덧붙이기를 못 한다)가 남았다. TPC-C −2.8%(기준 3% 안), 은행 질의의 명령 수는 1% 안. 같은 계산이 Pi(JIT)·WSL2·M3 Mac에서 같다. 같은 탐색을 보기로 하면 쓰기는 CPU를 나누는 만큼만 줄고(이벤트로 하면 0.2%로 멈춘다), 본문이 있는 보기는 보기의 스레드(`--view-workers`)가 계산해 연결 스레드를 막지 않는다(쓰기 최대 지연이 CPU만 나눌 때의 1.0배, 연결 스레드 하나에서 묻는 연결 둘이 1.95배) | [018](docs/design/018-lifetimes-and-computation.md), [020](docs/design/020-computing-faster.md), [117](docs/research/117-transient-states.md), [118](docs/research/118-computing-in-one-event.md), [119](docs/research/119-views-that-compute.md), [121](docs/research/121-computing-faster.md), [122](docs/research/122-views-off-the-connection-threads.md), [021](docs/design/021-past-c.md), [123](docs/research/123-past-c.md), [022](docs/design/022-arrays-and-registers.md), [124](docs/research/124-against-c.md), [023](docs/design/023-optimizing-tier.md), [125](docs/research/125-tier-first-steps.md) |
| 보기 밀기 | 보기의 `GET`에 `Accept: text/event-stream`이면 그 값을 민다(SSE, 브라우저의 `EventSource` 그대로). 같은 보기와 인자를 보는 구독자는 계산 한 번을 나누고, 값이 바뀔 때만, 많아야 10 ms마다 한 번 보낸다. 느린 구독자에게는 가장 새 값 하나만 기다리게 한다. 모듈이 바뀌어도 같은 이름의 보기로 이어 가고, 토큰을 빼면 끊는다. 구독자 1,000에 쓰기 초당 100번까지 신선도 p99 11 ms 이하, 초당 1번이면 100 ms 폴링의 약 10분의 1 CPU(이벤트 하나와 요청 하나의 값이 같아 메시지 수의 비다), 구독자 1만에 구독자마다 0.3–0.4 KiB, 1만에게 퍼지기까지 p99 45 ms | [019](docs/design/019-pushing-views.md), [120](docs/research/120-pushing-views.md) |
| 영속 | 선언한 상태가 곧 영속 상태다. 목록은 이미지와 로그(저장마다 바뀐 기록 한 항목, 재사용하는 할당 구간, 앞 항목의 다이제스트로 이어짐)에, 나머지는 트리 저장소에(커밋당 한 연속 구간과 동기화 한 번). 이벤트 묶음마다 저장 한 번, 이미지는 소유자 밖에서 체크포인트. `kill -9`와 커밋 각 단계의 죽음 뒤 확인 응답한 이벤트가 모두 남는다. 레코드·키가 바뀐 모듈로 바꿔도 데이터가 이름으로 옮겨진다 | [076](docs/research/076-one-sync-commit.md), [081](docs/research/081-tail-records.md), [092](docs/research/092-tpcc.md), 008 상태 영속·교체 |
| 인터페이스 | 한 명세가 TUI(셀 단위 갱신), CLI, 문장(NUI), 웹 GUI가 된다. 저장하면 실행 중인 앱이 상태를 이어 새 모듈로 바뀐다(`aup watch`, `vega … --watch`) | Vega `docs/design/001-first-component.md`, Vega `make check`(가상 터미널, 헤드리스 Chromium 포함) |
diff --git a/docs/research/125-tier-first-steps.md b/docs/research/125-tier-first-steps.md
new file mode 100644
index 0000000..ada82c9
--- /dev/null
+++ b/docs/research/125-tier-first-steps.md
@@ -0,0 +1,80 @@
+# 125 — 최적화 계층의 첫 걸음들: C의 3–300배에서 1.9배로
+
+2026-10-05. [023](../design/023-optimizing-tier.md)의 계층(중첩 루프를 SSA로 올려 레지스터의 기계어로 도는 것)과 리스트의 표현을
+하루 동안 고치며 잰 것. 코드와 원시 결과는 [040-against-c](../../research/experiments/040-against-c/)에 있고, 묶음은 매번
+`suite-run` 11번의 중앙값(같은 프로세스의 C와 견줌, `PURE_AHEAD=0`)이다.
+
+## 쉬운 말로
+
+- **일곱 가지 일의 기하 평균이 C의 1.92배다.** [124](124-against-c.md)에서는 3–300배였다(배낭과 행렬 곱이 300배, 조인 22배, 텍스트
+ 12배). 일마다 1.25배 안이라는 023의 기준은 배낭(1.19배) 하나가 맞고, 기하 평균 1.1배는 아직 멀다.
+- **가장 크게 줄인 것은 계층보다 표현이었다.** 차례를 어긴 수 키의 리스트를 해시 표의 칸에 두고(HASHED) 위치가 필요할 때만 정렬하자
+ 조인은 531 ms에서 74, 정렬은 98에서 37이 됐다. 텍스트 키도 같은 표로 찾게 하자 텍스트 일이 453에서 209가 됐다.
+- **계층에서 값이 컸던 것은 측정이 가리킨 것이었다.** 행렬 곱의 안쪽 루프를 어셈블리로 여러 꼴로 써서 재 보니(`forms.c`) 위치를 곱셈으로
+ 구하는 것이 2배, 적재 앞의 분기가 1.34배였고 2^53 오버플로 검사는 거의 공짜였다. 칸의 포인터를 루프의 φ로 두자 23.0 ms가 14.2가 됐다.
+ 짐작으로 명령을 줄인 시도(되돌림 패드, 줄 밖 비트맵, 상수 나눗셈의 곱셈화)는 0–1%거나 오히려 느려서 되돌렸다.
+- **지금의 앱은 그대로다.** TPC-C와 은행 질의를 `5fffb63`과 여섯 쌍 번갈아 재니 TPC-C의 중앙값이 −1.2%(쌍마다 −5.2…+1.4%), 질의의
+ 중앙값은 1% 안이고, 질의의 명령 수는 −0.1…+0.5%다.
+- **새 검사가 버그 넷을 잡았다.** 무작위 프로그램에 작업량 예산과 작업량 비교를 더하자 022부터 있던 것(바깥 루프의 작업량이 모자랄 때
+ LOOP 명령에서 빈 스택으로 포기하던 것)과 계층의 첫 날부터 있던 것(if가 만나는 곳의 φ가 루프 밖으로 끌려 나가던 것)이 나왔다. 둘 다
+ 고정 시험(`MERGES_SOURCE`, `BUDGET_SOURCE`)으로 남겼다.
+- **남은 것.** 텍스트 일(5.6배)은 실행기가 돈다. 루프가 텍스트를 만들고(`"w{n}"`을 한 바퀴에 세 번, aup의 `let`은 텍스트를 담지 못한다)
+ 텍스트 연산은 기계어가 없다. BFS(1.6배)는 계층이 키 구간의 걷기와 덧붙이기를 아직 못 한다. 조인(2.5배)은 메모리 미스가 쥐고 있다.
+
+## 묶음
+
+| 일 | `5fffb63` (124) | `11f6d9c` 계층 처음 | `e01dae9` | C |
+|---|---:|---:|---:|---:|
+| roots (실수 루프) | 3.3배 | 14.0 ms | 9.59 ms (1.40배) | 6.87 |
+| knapsack (정수 DP) | 300배 | 38.8 | 7.54 (1.19배) | 6.32 |
+| sort (정렬) | 4.8배 | — | 36.7 (1.37배) | 26.8 |
+| join (해시 조인) | 22배 | — | 78.4 (2.54배) | 30.8 |
+| words (텍스트 셈) | 12배 | — | 209 (5.58배) | 37.5 |
+| matmul (행렬 곱) | 304배 | 48.6 | 14.2 (1.85배) | 7.70 |
+| BFS (미리 읽기 없이) | 1.57배 | — | 16.0 (1.61배) | 9.90 |
+| 기하 평균 | — | — | **1.92배** | |
+
+미리 읽기를 둘 다 하면 BFS는 1.04배다. 실행기만으로는(`PURE_JIT=0`) roots 131 ms, 배낭 1,058, 행렬 곱 916이다.
+
+## 바꾼 것, 차례로
+
+| 커밋 | 바꾼 것 | 일 |
+|---|---|---|
+| `cfefd45` | 루프를 열 때 아핀 키의 양 끝을 한 번 검사(BCE), 상수를 명령에, 한 바이트 열을 네 바이트로 | 배낭 38.8→16.5, 행렬 48.6→25.7 |
+| `abe0412` | 안쪽 셈 루프의 작업량을 열 때 한꺼번에(나가면 돌려줌), 비교와 분기를 합침, 꽉 찬 리스트는 비트 없이 | 배낭 16.5→8.5 |
+| `a3ed5b6` | 래치에서 나갈 때 회차를 next−1로(뒤로 가는 이동 없음), 2의 거듭제곱으로 나누기를 역수 곱으로, 2^53 검사 3명령 | roots 14.1→12.2, 배낭 8.5→7.8 |
+| `8d68451` | HASHED: 차례를 어긴 수 키를 해시 표의 칸에, 위치가 필요할 때 기수 정렬; 계층이 키로만 찾을 때 줄 밖 탐사 | 조인 531→108, 정렬 98→58 |
+| `082a3dc` | 텍스트 키도 HASHED(FNV-1a, 칸의 키와 바이트 비교), 찾은 자리에 쓰기(PLAN_ROW) | 텍스트 453→217 |
+| `b56341e` | 표를 4/5까지(100,000 키가 1 MB: L3 안), 일반 코드의 APPEND가 칸에 바로, 양수로 나눈 정수는 −0이 아님 | 조인 108→84, 정렬 58→37 |
+| `e4b4694` | 한 줄로 이어 읽히는 수 산수는 마지막만 유한 검사, 스냅숏의 상수는 상수로, 장부 루프에서도 HASHED에 바로 | roots 12.2→10.9, 조인 84→74 |
+| `6466b9e` | 포인터 귀납 변수: 아핀 키의 칸 주소를 루프 머리의 φ로 | 행렬 23.0→14.2 |
+| `e01dae9` | 유한 검사를 정수로(지수 비트) | roots 10.9→9.6 |
+
+## 어셈블리로 잰 꼴
+
+`forms.c`(행렬 곱의 안쪽 루프, 11번의 중앙값): 계층의 꼴 20.7 ms, 검사와 비트 없이 20.1, 포인터와 곱하기-더하기 13.1, 포인터와
+곱·합 따로 10.0, 거기에 두 검사 10.2, 적재 앞에 비트 13.4, 정적 배열의 C 3.8(바깥 루프를 벡터로 묶는다).
+
+`newton.c`(roots의 루프): 계층의 꼴(next를 따로 두고 뒤로 가며 옮김) 7.7 ms, gcc의 꼴(next를 r의 레지스터에) 7.0, 수로 하는 유한 검사를
+더하면 9.7, 정수로 하면 8.7. 같은 생각으로 0으로 나누기 검사를 정수로 하면 오히려 느렸다.
+
+측정이 짐작을 두 번 뒤집었다. 명령 18개를 16개로 줄인 것(`mov` 하나와 줄 밖 비트맵)은 0%였고, 상수 나눗셈을 곱셈으로 바꾼 것은
+조인을 2–4% 느리게 했다(메모리에 묶인 루프에서 수의 나눗셈은 정수 파이프 밖에서 공짜에 가깝다).
+
+## 뜻과 맞음
+
+- 무작위 계층 시험(`module_tier`)이 이제 작업량을 비교하고 작은 예산 넷을 돈다. 리스트는 DENSE(꽉 참/빈틈), HASHED(키로만), 키를 회차와
+ 함께 움직이는 훑기를 섞는다. 지금의 생성기로 시드 6개(프로그램 약 800개)가 같은 답을 낸다.
+- 고정 시험: `MERGES_SOURCE`(if가 만나는 곳의 φ), `BUDGET_SOURCE`(작업량이 모자란 바깥 루프), `CHAIN_SOURCE`(넘치는 수의 줄).
+- 리스트: `arrays_equivalence`가 HASHED를, `text_keys_equivalence`가 텍스트 키의 HASHED와 위치를 묻는 덧붙이기를 트리와 견준다.
+- 저장된 리스트(트리)의 길에서 HASHED 확인을 빼, 은행 질의의 명령 증가를 0.3–0.8%에서 0.5% 안으로 줄였다.
+
+## 다음
+
+- **텍스트**: 텍스트를 지역 값으로 담기(aup의 `let`과 Pure의 지역 칸)와 텍스트 연산의 기계어. 이 일의 남은 시간 대부분이 같은 텍스트를
+ 세 번 만드는 데와 실행기의 디스패치에 있다(디스패치 약 20%, 해시와 탐사 약 11%, 수의 서식과 텍스트 만들기 약 13%).
+- **BFS**: 계층이 키 구간의 걷기(sliced EACH)와 이벤트 리스트의 덧붙이기를 하게.
+- **루프 묶음 일반**: 레지스터가 모자라면 계층이 묶음을 포기한다(행렬 곱이 그랬다). 루프 밖에서만 쓰이는 진입 값을 다시 읽거나 프레임에
+ 두는 스필이 필요하다. 꽉 차지 않은 DENSE를 키로 훑는 루프는 지금 일반 코드로 돈다(루프를 열 때 읽을 키만 확인하는 것이 다음).
+- **뜻의 값**: 검사 없는 계층(`PURE_UNCHECKED`)으로 일마다 검사의 몫을 재는 손잡이는 아직 없다. roots에서 임시로 잰 유한 검사의
+ 몫은 지연 전 27%였다.
diff --git a/research/experiments/040-against-c/2026-10-05-load.txt b/research/experiments/040-against-c/2026-10-05-load.txt
index 75760ea..c11f764 100644
--- a/research/experiments/040-against-c/2026-10-05-load.txt
+++ b/research/experiments/040-against-c/2026-10-05-load.txt
@@ -12,3 +12,4 @@ base 13:25:25 up 1 day, 9:46, 2 users, load average: 0.89, 0.88, 0.84
6 head 18:27:14 up 1 day, 14:48, 2 users, load average: 1.36, 1.68, 1.47
6 base 18:28:48 up 1 day, 14:50, 2 users, load average: 1.46, 1.70, 1.50
cb93680 18:48:48 up 1 day, 15:10, 2 users, load average: 0.96, 0.92, 1.15
+e01dae9 19:32:23 up 1 day, 15:53, 2 users, load average: 1.02, 0.91, 0.83
diff --git a/research/experiments/040-against-c/2026-10-05-suite.jsonl b/research/experiments/040-against-c/2026-10-05-suite.jsonl
index 5ae4daf..a9f4691 100644
--- a/research/experiments/040-against-c/2026-10-05-suite.jsonl
+++ b/research/experiments/040-against-c/2026-10-05-suite.jsonl
@@ -430,3 +430,219 @@
{"version":"cb93680","jit":1,"ahead":0,"work":"bfs_ahead","round":9,"pure_ms":16.377,"c_ms":7.320,"same":true,"answers":[5,99998],"c":[5,99998]}
{"version":"cb93680","jit":1,"ahead":0,"work":"bfs_ahead","round":10,"pure_ms":16.158,"c_ms":7.787,"same":true,"answers":[6,99998],"c":[6,99998]}
{"version":"cb93680","jit":1,"ahead":0,"work":"bfs_ahead","pure_median_ms":15.966,"c_median_ms":7.333,"ratio":2.177,"agree":true}
+{"version":"e01dae9","jit":1,"ahead":1,"work":"roots","round":0,"pure_ms":9.600,"c_ms":6.867,"same":true,"answers":[21082008.973917928,1238280],"c":[21082008.973917928,1238280]}
+{"version":"e01dae9","jit":1,"ahead":1,"work":"roots","round":1,"pure_ms":9.575,"c_ms":6.881,"same":true,"answers":[21082008.973917928,1238280],"c":[21082008.973917928,1238280]}
+{"version":"e01dae9","jit":1,"ahead":1,"work":"roots","round":2,"pure_ms":9.613,"c_ms":6.865,"same":true,"answers":[21082008.973917928,1238280],"c":[21082008.973917928,1238280]}
+{"version":"e01dae9","jit":1,"ahead":1,"work":"roots","round":3,"pure_ms":9.573,"c_ms":6.861,"same":true,"answers":[21082008.973917928,1238280],"c":[21082008.973917928,1238280]}
+{"version":"e01dae9","jit":1,"ahead":1,"work":"roots","round":4,"pure_ms":9.577,"c_ms":6.898,"same":true,"answers":[21082008.973917928,1238280],"c":[21082008.973917928,1238280]}
+{"version":"e01dae9","jit":1,"ahead":1,"work":"roots","round":5,"pure_ms":9.598,"c_ms":6.868,"same":true,"answers":[21082008.973917928,1238280],"c":[21082008.973917928,1238280]}
+{"version":"e01dae9","jit":1,"ahead":1,"work":"roots","round":6,"pure_ms":9.586,"c_ms":6.884,"same":true,"answers":[21082008.973917928,1238280],"c":[21082008.973917928,1238280]}
+{"version":"e01dae9","jit":1,"ahead":1,"work":"roots","round":7,"pure_ms":9.574,"c_ms":6.868,"same":true,"answers":[21082008.973917928,1238280],"c":[21082008.973917928,1238280]}
+{"version":"e01dae9","jit":1,"ahead":1,"work":"roots","round":8,"pure_ms":9.587,"c_ms":6.881,"same":true,"answers":[21082008.973917928,1238280],"c":[21082008.973917928,1238280]}
+{"version":"e01dae9","jit":1,"ahead":1,"work":"roots","round":9,"pure_ms":9.581,"c_ms":6.877,"same":true,"answers":[21082008.973917928,1238280],"c":[21082008.973917928,1238280]}
+{"version":"e01dae9","jit":1,"ahead":1,"work":"roots","round":10,"pure_ms":9.585,"c_ms":6.870,"same":true,"answers":[21082008.973917928,1238280],"c":[21082008.973917928,1238280]}
+{"version":"e01dae9","jit":1,"ahead":1,"work":"roots","pure_median_ms":9.585,"c_median_ms":6.870,"ratio":1.395,"agree":true}
+{"version":"e01dae9","jit":1,"ahead":1,"work":"knapsack","round":0,"pure_ms":7.578,"c_ms":6.320,"same":true,"answers":[49720],"c":[49720]}
+{"version":"e01dae9","jit":1,"ahead":1,"work":"knapsack","round":1,"pure_ms":7.543,"c_ms":6.295,"same":true,"answers":[49720],"c":[49720]}
+{"version":"e01dae9","jit":1,"ahead":1,"work":"knapsack","round":2,"pure_ms":7.539,"c_ms":6.344,"same":true,"answers":[49720],"c":[49720]}
+{"version":"e01dae9","jit":1,"ahead":1,"work":"knapsack","round":3,"pure_ms":7.546,"c_ms":6.331,"same":true,"answers":[49720],"c":[49720]}
+{"version":"e01dae9","jit":1,"ahead":1,"work":"knapsack","round":4,"pure_ms":7.542,"c_ms":6.408,"same":true,"answers":[49720],"c":[49720]}
+{"version":"e01dae9","jit":1,"ahead":1,"work":"knapsack","round":5,"pure_ms":7.594,"c_ms":6.316,"same":true,"answers":[49720],"c":[49720]}
+{"version":"e01dae9","jit":1,"ahead":1,"work":"knapsack","round":6,"pure_ms":7.532,"c_ms":6.286,"same":true,"answers":[49720],"c":[49720]}
+{"version":"e01dae9","jit":1,"ahead":1,"work":"knapsack","round":7,"pure_ms":7.531,"c_ms":6.276,"same":true,"answers":[49720],"c":[49720]}
+{"version":"e01dae9","jit":1,"ahead":1,"work":"knapsack","round":8,"pure_ms":7.533,"c_ms":6.284,"same":true,"answers":[49720],"c":[49720]}
+{"version":"e01dae9","jit":1,"ahead":1,"work":"knapsack","round":9,"pure_ms":7.537,"c_ms":6.330,"same":true,"answers":[49720],"c":[49720]}
+{"version":"e01dae9","jit":1,"ahead":1,"work":"knapsack","round":10,"pure_ms":7.524,"c_ms":6.281,"same":true,"answers":[49720],"c":[49720]}
+{"version":"e01dae9","jit":1,"ahead":1,"work":"knapsack","pure_median_ms":7.539,"c_median_ms":6.316,"ratio":1.194,"agree":true}
+{"version":"e01dae9","jit":1,"ahead":1,"work":"sort","round":0,"pure_ms":46.255,"c_ms":27.104,"same":true,"answers":[6551,1075217194,2147477497,0],"c":[6551,1075217194,2147477497,0]}
+{"version":"e01dae9","jit":1,"ahead":1,"work":"sort","round":1,"pure_ms":38.539,"c_ms":26.939,"same":true,"answers":[6551,1075217194,2147477497,0],"c":[6551,1075217194,2147477497,0]}
+{"version":"e01dae9","jit":1,"ahead":1,"work":"sort","round":2,"pure_ms":37.490,"c_ms":26.825,"same":true,"answers":[6551,1075217194,2147477497,0],"c":[6551,1075217194,2147477497,0]}
+{"version":"e01dae9","jit":1,"ahead":1,"work":"sort","round":3,"pure_ms":40.999,"c_ms":26.829,"same":true,"answers":[6551,1075217194,2147477497,0],"c":[6551,1075217194,2147477497,0]}
+{"version":"e01dae9","jit":1,"ahead":1,"work":"sort","round":4,"pure_ms":36.711,"c_ms":26.837,"same":true,"answers":[6551,1075217194,2147477497,0],"c":[6551,1075217194,2147477497,0]}
+{"version":"e01dae9","jit":1,"ahead":1,"work":"sort","round":5,"pure_ms":37.513,"c_ms":26.861,"same":true,"answers":[6551,1075217194,2147477497,0],"c":[6551,1075217194,2147477497,0]}
+{"version":"e01dae9","jit":1,"ahead":1,"work":"sort","round":6,"pure_ms":36.025,"c_ms":26.900,"same":true,"answers":[6551,1075217194,2147477497,0],"c":[6551,1075217194,2147477497,0]}
+{"version":"e01dae9","jit":1,"ahead":1,"work":"sort","round":7,"pure_ms":36.406,"c_ms":26.797,"same":true,"answers":[6551,1075217194,2147477497,0],"c":[6551,1075217194,2147477497,0]}
+{"version":"e01dae9","jit":1,"ahead":1,"work":"sort","round":8,"pure_ms":36.520,"c_ms":26.808,"same":true,"answers":[6551,1075217194,2147477497,0],"c":[6551,1075217194,2147477497,0]}
+{"version":"e01dae9","jit":1,"ahead":1,"work":"sort","round":9,"pure_ms":36.511,"c_ms":26.809,"same":true,"answers":[6551,1075217194,2147477497,0],"c":[6551,1075217194,2147477497,0]}
+{"version":"e01dae9","jit":1,"ahead":1,"work":"sort","round":10,"pure_ms":35.867,"c_ms":26.829,"same":true,"answers":[6551,1075217194,2147477497,0],"c":[6551,1075217194,2147477497,0]}
+{"version":"e01dae9","jit":1,"ahead":1,"work":"sort","pure_median_ms":36.711,"c_median_ms":26.829,"ratio":1.368,"agree":true}
+{"version":"e01dae9","jit":1,"ahead":1,"work":"join","round":0,"pure_ms":77.498,"c_ms":30.509,"same":true,"answers":[31610389,499378646],"c":[31610389,499378646]}
+{"version":"e01dae9","jit":1,"ahead":1,"work":"join","round":1,"pure_ms":80.099,"c_ms":31.143,"same":true,"answers":[31610389,499378646],"c":[31610389,499378646]}
+{"version":"e01dae9","jit":1,"ahead":1,"work":"join","round":2,"pure_ms":78.847,"c_ms":30.268,"same":true,"answers":[31610389,499378646],"c":[31610389,499378646]}
+{"version":"e01dae9","jit":1,"ahead":1,"work":"join","round":3,"pure_ms":78.124,"c_ms":30.839,"same":true,"answers":[31610389,499378646],"c":[31610389,499378646]}
+{"version":"e01dae9","jit":1,"ahead":1,"work":"join","round":4,"pure_ms":84.248,"c_ms":30.914,"same":true,"answers":[31610389,499378646],"c":[31610389,499378646]}
+{"version":"e01dae9","jit":1,"ahead":1,"work":"join","round":5,"pure_ms":78.224,"c_ms":32.937,"same":true,"answers":[31610389,499378646],"c":[31610389,499378646]}
+{"version":"e01dae9","jit":1,"ahead":1,"work":"join","round":6,"pure_ms":79.115,"c_ms":30.460,"same":true,"answers":[31610389,499378646],"c":[31610389,499378646]}
+{"version":"e01dae9","jit":1,"ahead":1,"work":"join","round":7,"pure_ms":78.267,"c_ms":31.046,"same":true,"answers":[31610389,499378646],"c":[31610389,499378646]}
+{"version":"e01dae9","jit":1,"ahead":1,"work":"join","round":8,"pure_ms":78.143,"c_ms":30.379,"same":true,"answers":[31610389,499378646],"c":[31610389,499378646]}
+{"version":"e01dae9","jit":1,"ahead":1,"work":"join","round":9,"pure_ms":79.597,"c_ms":31.203,"same":true,"answers":[31610389,499378646],"c":[31610389,499378646]}
+{"version":"e01dae9","jit":1,"ahead":1,"work":"join","round":10,"pure_ms":78.404,"c_ms":30.205,"same":true,"answers":[31610389,499378646],"c":[31610389,499378646]}
+{"version":"e01dae9","jit":1,"ahead":1,"work":"join","pure_median_ms":78.404,"c_median_ms":30.839,"ratio":2.542,"agree":true}
+{"version":"e01dae9","jit":1,"ahead":1,"work":"words","round":0,"pure_ms":208.598,"c_ms":39.784,"same":true,"answers":[49883,18],"c":[49883,18]}
+{"version":"e01dae9","jit":1,"ahead":1,"work":"words","round":1,"pure_ms":213.182,"c_ms":36.908,"same":true,"answers":[49883,18],"c":[49883,18]}
+{"version":"e01dae9","jit":1,"ahead":1,"work":"words","round":2,"pure_ms":208.170,"c_ms":37.534,"same":true,"answers":[49883,18],"c":[49883,18]}
+{"version":"e01dae9","jit":1,"ahead":1,"work":"words","round":3,"pure_ms":209.904,"c_ms":36.100,"same":true,"answers":[49883,18],"c":[49883,18]}
+{"version":"e01dae9","jit":1,"ahead":1,"work":"words","round":4,"pure_ms":208.327,"c_ms":38.802,"same":true,"answers":[49883,18],"c":[49883,18]}
+{"version":"e01dae9","jit":1,"ahead":1,"work":"words","round":5,"pure_ms":211.578,"c_ms":37.635,"same":true,"answers":[49883,18],"c":[49883,18]}
+{"version":"e01dae9","jit":1,"ahead":1,"work":"words","round":6,"pure_ms":207.801,"c_ms":36.465,"same":true,"answers":[49883,18],"c":[49883,18]}
+{"version":"e01dae9","jit":1,"ahead":1,"work":"words","round":7,"pure_ms":211.533,"c_ms":37.079,"same":true,"answers":[49883,18],"c":[49883,18]}
+{"version":"e01dae9","jit":1,"ahead":1,"work":"words","round":8,"pure_ms":208.882,"c_ms":39.128,"same":true,"answers":[49883,18],"c":[49883,18]}
+{"version":"e01dae9","jit":1,"ahead":1,"work":"words","round":9,"pure_ms":212.387,"c_ms":41.551,"same":true,"answers":[49883,18],"c":[49883,18]}
+{"version":"e01dae9","jit":1,"ahead":1,"work":"words","round":10,"pure_ms":209.306,"c_ms":36.855,"same":true,"answers":[49883,18],"c":[49883,18]}
+{"version":"e01dae9","jit":1,"ahead":1,"work":"words","pure_median_ms":209.306,"c_median_ms":37.534,"ratio":5.576,"agree":true}
+{"version":"e01dae9","jit":1,"ahead":1,"work":"matmul","round":0,"pure_ms":14.197,"c_ms":7.565,"same":true,"answers":[19621593062,473429],"c":[19621593062,473429]}
+{"version":"e01dae9","jit":1,"ahead":1,"work":"matmul","round":1,"pure_ms":14.182,"c_ms":7.538,"same":true,"answers":[19621593062,473429],"c":[19621593062,473429]}
+{"version":"e01dae9","jit":1,"ahead":1,"work":"matmul","round":2,"pure_ms":14.151,"c_ms":7.669,"same":true,"answers":[19621593062,473429],"c":[19621593062,473429]}
+{"version":"e01dae9","jit":1,"ahead":1,"work":"matmul","round":3,"pure_ms":14.181,"c_ms":7.772,"same":true,"answers":[19621593062,473429],"c":[19621593062,473429]}
+{"version":"e01dae9","jit":1,"ahead":1,"work":"matmul","round":4,"pure_ms":14.250,"c_ms":7.678,"same":true,"answers":[19621593062,473429],"c":[19621593062,473429]}
+{"version":"e01dae9","jit":1,"ahead":1,"work":"matmul","round":5,"pure_ms":14.180,"c_ms":7.735,"same":true,"answers":[19621593062,473429],"c":[19621593062,473429]}
+{"version":"e01dae9","jit":1,"ahead":1,"work":"matmul","round":6,"pure_ms":14.211,"c_ms":7.715,"same":true,"answers":[19621593062,473429],"c":[19621593062,473429]}
+{"version":"e01dae9","jit":1,"ahead":1,"work":"matmul","round":7,"pure_ms":14.296,"c_ms":7.762,"same":true,"answers":[19621593062,473429],"c":[19621593062,473429]}
+{"version":"e01dae9","jit":1,"ahead":1,"work":"matmul","round":8,"pure_ms":14.246,"c_ms":7.730,"same":true,"answers":[19621593062,473429],"c":[19621593062,473429]}
+{"version":"e01dae9","jit":1,"ahead":1,"work":"matmul","round":9,"pure_ms":14.210,"c_ms":7.688,"same":true,"answers":[19621593062,473429],"c":[19621593062,473429]}
+{"version":"e01dae9","jit":1,"ahead":1,"work":"matmul","round":10,"pure_ms":14.265,"c_ms":7.699,"same":true,"answers":[19621593062,473429],"c":[19621593062,473429]}
+{"version":"e01dae9","jit":1,"ahead":1,"work":"matmul","pure_median_ms":14.210,"c_median_ms":7.699,"ratio":1.846,"agree":true}
+{"version":"e01dae9","jit":1,"ahead":1,"work":"bfs","round":0,"pure_ms":115.047,"c_ms":10.320,"same":true,"answers":[5,99998],"c":[5,99998]}
+{"version":"e01dae9","jit":1,"ahead":1,"work":"bfs","round":1,"pure_ms":7.714,"c_ms":9.872,"same":true,"answers":[6,99998],"c":[6,99998]}
+{"version":"e01dae9","jit":1,"ahead":1,"work":"bfs","round":2,"pure_ms":7.681,"c_ms":9.818,"same":true,"answers":[6,99998],"c":[6,99998]}
+{"version":"e01dae9","jit":1,"ahead":1,"work":"bfs","round":3,"pure_ms":7.683,"c_ms":9.878,"same":true,"answers":[6,99998],"c":[6,99998]}
+{"version":"e01dae9","jit":1,"ahead":1,"work":"bfs","round":4,"pure_ms":7.668,"c_ms":9.913,"same":true,"answers":[5,99998],"c":[5,99998]}
+{"version":"e01dae9","jit":1,"ahead":1,"work":"bfs","round":5,"pure_ms":7.728,"c_ms":9.921,"same":true,"answers":[5,99998],"c":[5,99998]}
+{"version":"e01dae9","jit":1,"ahead":1,"work":"bfs","round":6,"pure_ms":7.676,"c_ms":9.986,"same":true,"answers":[5,99998],"c":[5,99998]}
+{"version":"e01dae9","jit":1,"ahead":1,"work":"bfs","round":7,"pure_ms":7.660,"c_ms":9.855,"same":true,"answers":[6,99998],"c":[6,99998]}
+{"version":"e01dae9","jit":1,"ahead":1,"work":"bfs","round":8,"pure_ms":7.661,"c_ms":9.982,"same":true,"answers":[5,99998],"c":[5,99998]}
+{"version":"e01dae9","jit":1,"ahead":1,"work":"bfs","round":9,"pure_ms":7.673,"c_ms":9.865,"same":true,"answers":[5,99998],"c":[5,99998]}
+{"version":"e01dae9","jit":1,"ahead":1,"work":"bfs","round":10,"pure_ms":7.671,"c_ms":9.841,"same":true,"answers":[6,99998],"c":[6,99998]}
+{"version":"e01dae9","jit":1,"ahead":1,"work":"bfs","pure_median_ms":7.676,"c_median_ms":9.878,"ratio":0.777,"agree":true}
+{"version":"e01dae9","jit":1,"ahead":1,"work":"bfs_ahead","round":0,"pure_ms":114.489,"c_ms":7.656,"same":true,"answers":[5,99998],"c":[5,99998]}
+{"version":"e01dae9","jit":1,"ahead":1,"work":"bfs_ahead","round":1,"pure_ms":7.761,"c_ms":8.326,"same":true,"answers":[6,99998],"c":[6,99998]}
+{"version":"e01dae9","jit":1,"ahead":1,"work":"bfs_ahead","round":2,"pure_ms":7.712,"c_ms":7.324,"same":true,"answers":[6,99998],"c":[6,99998]}
+{"version":"e01dae9","jit":1,"ahead":1,"work":"bfs_ahead","round":3,"pure_ms":7.671,"c_ms":7.286,"same":true,"answers":[6,99998],"c":[6,99998]}
+{"version":"e01dae9","jit":1,"ahead":1,"work":"bfs_ahead","round":4,"pure_ms":7.667,"c_ms":7.846,"same":true,"answers":[5,99998],"c":[5,99998]}
+{"version":"e01dae9","jit":1,"ahead":1,"work":"bfs_ahead","round":5,"pure_ms":7.673,"c_ms":7.320,"same":true,"answers":[5,99998],"c":[5,99998]}
+{"version":"e01dae9","jit":1,"ahead":1,"work":"bfs_ahead","round":6,"pure_ms":7.682,"c_ms":7.371,"same":true,"answers":[5,99998],"c":[5,99998]}
+{"version":"e01dae9","jit":1,"ahead":1,"work":"bfs_ahead","round":7,"pure_ms":7.663,"c_ms":7.289,"same":true,"answers":[6,99998],"c":[6,99998]}
+{"version":"e01dae9","jit":1,"ahead":1,"work":"bfs_ahead","round":8,"pure_ms":7.668,"c_ms":7.425,"same":true,"answers":[5,99998],"c":[5,99998]}
+{"version":"e01dae9","jit":1,"ahead":1,"work":"bfs_ahead","round":9,"pure_ms":7.662,"c_ms":7.569,"same":true,"answers":[5,99998],"c":[5,99998]}
+{"version":"e01dae9","jit":1,"ahead":1,"work":"bfs_ahead","round":10,"pure_ms":7.657,"c_ms":7.343,"same":true,"answers":[6,99998],"c":[6,99998]}
+{"version":"e01dae9","jit":1,"ahead":1,"work":"bfs_ahead","pure_median_ms":7.671,"c_median_ms":7.371,"ratio":1.041,"agree":true}
+{"version":"e01dae9","jit":0,"ahead":1,"work":"roots","round":0,"pure_ms":130.605,"c_ms":6.863,"same":true,"answers":[21082008.973917928,1238280],"c":[21082008.973917928,1238280]}
+{"version":"e01dae9","jit":0,"ahead":1,"work":"roots","round":1,"pure_ms":130.517,"c_ms":6.859,"same":true,"answers":[21082008.973917928,1238280],"c":[21082008.973917928,1238280]}
+{"version":"e01dae9","jit":0,"ahead":1,"work":"roots","round":2,"pure_ms":130.564,"c_ms":6.865,"same":true,"answers":[21082008.973917928,1238280],"c":[21082008.973917928,1238280]}
+{"version":"e01dae9","jit":0,"ahead":1,"work":"roots","round":3,"pure_ms":130.558,"c_ms":6.870,"same":true,"answers":[21082008.973917928,1238280],"c":[21082008.973917928,1238280]}
+{"version":"e01dae9","jit":0,"ahead":1,"work":"roots","round":4,"pure_ms":130.503,"c_ms":6.855,"same":true,"answers":[21082008.973917928,1238280],"c":[21082008.973917928,1238280]}
+{"version":"e01dae9","jit":0,"ahead":1,"work":"roots","round":5,"pure_ms":130.517,"c_ms":6.861,"same":true,"answers":[21082008.973917928,1238280],"c":[21082008.973917928,1238280]}
+{"version":"e01dae9","jit":0,"ahead":1,"work":"roots","round":6,"pure_ms":130.886,"c_ms":6.847,"same":true,"answers":[21082008.973917928,1238280],"c":[21082008.973917928,1238280]}
+{"version":"e01dae9","jit":0,"ahead":1,"work":"roots","round":7,"pure_ms":130.524,"c_ms":6.874,"same":true,"answers":[21082008.973917928,1238280],"c":[21082008.973917928,1238280]}
+{"version":"e01dae9","jit":0,"ahead":1,"work":"roots","round":8,"pure_ms":130.533,"c_ms":6.860,"same":true,"answers":[21082008.973917928,1238280],"c":[21082008.973917928,1238280]}
+{"version":"e01dae9","jit":0,"ahead":1,"work":"roots","round":9,"pure_ms":130.547,"c_ms":6.861,"same":true,"answers":[21082008.973917928,1238280],"c":[21082008.973917928,1238280]}
+{"version":"e01dae9","jit":0,"ahead":1,"work":"roots","round":10,"pure_ms":130.508,"c_ms":6.862,"same":true,"answers":[21082008.973917928,1238280],"c":[21082008.973917928,1238280]}
+{"version":"e01dae9","jit":0,"ahead":1,"work":"roots","pure_median_ms":130.533,"c_median_ms":6.861,"ratio":19.025,"agree":true}
+{"version":"e01dae9","jit":0,"ahead":1,"work":"knapsack","round":0,"pure_ms":1058.985,"c_ms":6.319,"same":true,"answers":[49720],"c":[49720]}
+{"version":"e01dae9","jit":0,"ahead":1,"work":"knapsack","round":1,"pure_ms":1060.132,"c_ms":6.270,"same":true,"answers":[49720],"c":[49720]}
+{"version":"e01dae9","jit":0,"ahead":1,"work":"knapsack","round":2,"pure_ms":1057.749,"c_ms":6.282,"same":true,"answers":[49720],"c":[49720]}
+{"version":"e01dae9","jit":0,"ahead":1,"work":"knapsack","round":3,"pure_ms":1057.326,"c_ms":6.248,"same":true,"answers":[49720],"c":[49720]}
+{"version":"e01dae9","jit":0,"ahead":1,"work":"knapsack","round":4,"pure_ms":1056.809,"c_ms":6.243,"same":true,"answers":[49720],"c":[49720]}
+{"version":"e01dae9","jit":0,"ahead":1,"work":"knapsack","round":5,"pure_ms":1055.278,"c_ms":6.242,"same":true,"answers":[49720],"c":[49720]}
+{"version":"e01dae9","jit":0,"ahead":1,"work":"knapsack","round":6,"pure_ms":1057.157,"c_ms":6.246,"same":true,"answers":[49720],"c":[49720]}
+{"version":"e01dae9","jit":0,"ahead":1,"work":"knapsack","round":7,"pure_ms":1058.831,"c_ms":6.241,"same":true,"answers":[49720],"c":[49720]}
+{"version":"e01dae9","jit":0,"ahead":1,"work":"knapsack","round":8,"pure_ms":1055.898,"c_ms":6.246,"same":true,"answers":[49720],"c":[49720]}
+{"version":"e01dae9","jit":0,"ahead":1,"work":"knapsack","round":9,"pure_ms":1057.844,"c_ms":6.244,"same":true,"answers":[49720],"c":[49720]}
+{"version":"e01dae9","jit":0,"ahead":1,"work":"knapsack","round":10,"pure_ms":1058.005,"c_ms":6.255,"same":true,"answers":[49720],"c":[49720]}
+{"version":"e01dae9","jit":0,"ahead":1,"work":"knapsack","pure_median_ms":1057.749,"c_median_ms":6.246,"ratio":169.335,"agree":true}
+{"version":"e01dae9","jit":0,"ahead":1,"work":"sort","round":0,"pure_ms":91.324,"c_ms":26.987,"same":true,"answers":[6551,1075217194,2147477497,0],"c":[6551,1075217194,2147477497,0]}
+{"version":"e01dae9","jit":0,"ahead":1,"work":"sort","round":1,"pure_ms":78.183,"c_ms":26.893,"same":true,"answers":[6551,1075217194,2147477497,0],"c":[6551,1075217194,2147477497,0]}
+{"version":"e01dae9","jit":0,"ahead":1,"work":"sort","round":2,"pure_ms":80.538,"c_ms":26.846,"same":true,"answers":[6551,1075217194,2147477497,0],"c":[6551,1075217194,2147477497,0]}
+{"version":"e01dae9","jit":0,"ahead":1,"work":"sort","round":3,"pure_ms":78.996,"c_ms":26.972,"same":true,"answers":[6551,1075217194,2147477497,0],"c":[6551,1075217194,2147477497,0]}
+{"version":"e01dae9","jit":0,"ahead":1,"work":"sort","round":4,"pure_ms":78.686,"c_ms":26.869,"same":true,"answers":[6551,1075217194,2147477497,0],"c":[6551,1075217194,2147477497,0]}
+{"version":"e01dae9","jit":0,"ahead":1,"work":"sort","round":5,"pure_ms":78.633,"c_ms":26.912,"same":true,"answers":[6551,1075217194,2147477497,0],"c":[6551,1075217194,2147477497,0]}
+{"version":"e01dae9","jit":0,"ahead":1,"work":"sort","round":6,"pure_ms":78.940,"c_ms":26.878,"same":true,"answers":[6551,1075217194,2147477497,0],"c":[6551,1075217194,2147477497,0]}
+{"version":"e01dae9","jit":0,"ahead":1,"work":"sort","round":7,"pure_ms":78.335,"c_ms":26.902,"same":true,"answers":[6551,1075217194,2147477497,0],"c":[6551,1075217194,2147477497,0]}
+{"version":"e01dae9","jit":0,"ahead":1,"work":"sort","round":8,"pure_ms":78.466,"c_ms":26.993,"same":true,"answers":[6551,1075217194,2147477497,0],"c":[6551,1075217194,2147477497,0]}
+{"version":"e01dae9","jit":0,"ahead":1,"work":"sort","round":9,"pure_ms":79.716,"c_ms":26.876,"same":true,"answers":[6551,1075217194,2147477497,0],"c":[6551,1075217194,2147477497,0]}
+{"version":"e01dae9","jit":0,"ahead":1,"work":"sort","round":10,"pure_ms":79.088,"c_ms":26.990,"same":true,"answers":[6551,1075217194,2147477497,0],"c":[6551,1075217194,2147477497,0]}
+{"version":"e01dae9","jit":0,"ahead":1,"work":"sort","pure_median_ms":78.940,"c_median_ms":26.902,"ratio":2.934,"agree":true}
+{"version":"e01dae9","jit":0,"ahead":1,"work":"join","round":0,"pure_ms":464.632,"c_ms":28.982,"same":true,"answers":[31610389,499378646],"c":[31610389,499378646]}
+{"version":"e01dae9","jit":0,"ahead":1,"work":"join","round":1,"pure_ms":426.703,"c_ms":28.101,"same":true,"answers":[31610389,499378646],"c":[31610389,499378646]}
+{"version":"e01dae9","jit":0,"ahead":1,"work":"join","round":2,"pure_ms":434.171,"c_ms":28.250,"same":true,"answers":[31610389,499378646],"c":[31610389,499378646]}
+{"version":"e01dae9","jit":0,"ahead":1,"work":"join","round":3,"pure_ms":425.302,"c_ms":28.933,"same":true,"answers":[31610389,499378646],"c":[31610389,499378646]}
+{"version":"e01dae9","jit":0,"ahead":1,"work":"join","round":4,"pure_ms":426.924,"c_ms":28.629,"same":true,"answers":[31610389,499378646],"c":[31610389,499378646]}
+{"version":"e01dae9","jit":0,"ahead":1,"work":"join","round":5,"pure_ms":423.428,"c_ms":28.001,"same":true,"answers":[31610389,499378646],"c":[31610389,499378646]}
+{"version":"e01dae9","jit":0,"ahead":1,"work":"join","round":6,"pure_ms":433.794,"c_ms":28.847,"same":true,"answers":[31610389,499378646],"c":[31610389,499378646]}
+{"version":"e01dae9","jit":0,"ahead":1,"work":"join","round":7,"pure_ms":426.874,"c_ms":29.564,"same":true,"answers":[31610389,499378646],"c":[31610389,499378646]}
+{"version":"e01dae9","jit":0,"ahead":1,"work":"join","round":8,"pure_ms":423.697,"c_ms":29.421,"same":true,"answers":[31610389,499378646],"c":[31610389,499378646]}
+{"version":"e01dae9","jit":0,"ahead":1,"work":"join","round":9,"pure_ms":426.447,"c_ms":29.037,"same":true,"answers":[31610389,499378646],"c":[31610389,499378646]}
+{"version":"e01dae9","jit":0,"ahead":1,"work":"join","round":10,"pure_ms":427.243,"c_ms":29.484,"same":true,"answers":[31610389,499378646],"c":[31610389,499378646]}
+{"version":"e01dae9","jit":0,"ahead":1,"work":"join","pure_median_ms":426.874,"c_median_ms":28.933,"ratio":14.754,"agree":true}
+{"version":"e01dae9","jit":0,"ahead":1,"work":"words","round":0,"pure_ms":211.447,"c_ms":37.502,"same":true,"answers":[49883,18],"c":[49883,18]}
+{"version":"e01dae9","jit":0,"ahead":1,"work":"words","round":1,"pure_ms":211.059,"c_ms":36.410,"same":true,"answers":[49883,18],"c":[49883,18]}
+{"version":"e01dae9","jit":0,"ahead":1,"work":"words","round":2,"pure_ms":208.886,"c_ms":35.774,"same":true,"answers":[49883,18],"c":[49883,18]}
+{"version":"e01dae9","jit":0,"ahead":1,"work":"words","round":3,"pure_ms":210.597,"c_ms":37.699,"same":true,"answers":[49883,18],"c":[49883,18]}
+{"version":"e01dae9","jit":0,"ahead":1,"work":"words","round":4,"pure_ms":209.189,"c_ms":39.577,"same":true,"answers":[49883,18],"c":[49883,18]}
+{"version":"e01dae9","jit":0,"ahead":1,"work":"words","round":5,"pure_ms":211.578,"c_ms":36.731,"same":true,"answers":[49883,18],"c":[49883,18]}
+{"version":"e01dae9","jit":0,"ahead":1,"work":"words","round":6,"pure_ms":212.554,"c_ms":36.657,"same":true,"answers":[49883,18],"c":[49883,18]}
+{"version":"e01dae9","jit":0,"ahead":1,"work":"words","round":7,"pure_ms":211.870,"c_ms":36.799,"same":true,"answers":[49883,18],"c":[49883,18]}
+{"version":"e01dae9","jit":0,"ahead":1,"work":"words","round":8,"pure_ms":210.192,"c_ms":40.550,"same":true,"answers":[49883,18],"c":[49883,18]}
+{"version":"e01dae9","jit":0,"ahead":1,"work":"words","round":9,"pure_ms":212.016,"c_ms":38.170,"same":true,"answers":[49883,18],"c":[49883,18]}
+{"version":"e01dae9","jit":0,"ahead":1,"work":"words","round":10,"pure_ms":208.889,"c_ms":35.618,"same":true,"answers":[49883,18],"c":[49883,18]}
+{"version":"e01dae9","jit":0,"ahead":1,"work":"words","pure_median_ms":211.059,"c_median_ms":36.799,"ratio":5.735,"agree":true}
+{"version":"e01dae9","jit":0,"ahead":1,"work":"matmul","round":0,"pure_ms":915.866,"c_ms":7.515,"same":true,"answers":[19621593062,473429],"c":[19621593062,473429]}
+{"version":"e01dae9","jit":0,"ahead":1,"work":"matmul","round":1,"pure_ms":915.918,"c_ms":7.491,"same":true,"answers":[19621593062,473429],"c":[19621593062,473429]}
+{"version":"e01dae9","jit":0,"ahead":1,"work":"matmul","round":2,"pure_ms":913.317,"c_ms":7.802,"same":true,"answers":[19621593062,473429],"c":[19621593062,473429]}
+{"version":"e01dae9","jit":0,"ahead":1,"work":"matmul","round":3,"pure_ms":915.738,"c_ms":7.845,"same":true,"answers":[19621593062,473429],"c":[19621593062,473429]}
+{"version":"e01dae9","jit":0,"ahead":1,"work":"matmul","round":4,"pure_ms":916.002,"c_ms":7.835,"same":true,"answers":[19621593062,473429],"c":[19621593062,473429]}
+{"version":"e01dae9","jit":0,"ahead":1,"work":"matmul","round":5,"pure_ms":915.605,"c_ms":7.888,"same":true,"answers":[19621593062,473429],"c":[19621593062,473429]}
+{"version":"e01dae9","jit":0,"ahead":1,"work":"matmul","round":6,"pure_ms":912.799,"c_ms":7.836,"same":true,"answers":[19621593062,473429],"c":[19621593062,473429]}
+{"version":"e01dae9","jit":0,"ahead":1,"work":"matmul","round":7,"pure_ms":912.283,"c_ms":7.807,"same":true,"answers":[19621593062,473429],"c":[19621593062,473429]}
+{"version":"e01dae9","jit":0,"ahead":1,"work":"matmul","round":8,"pure_ms":915.667,"c_ms":7.842,"same":true,"answers":[19621593062,473429],"c":[19621593062,473429]}
+{"version":"e01dae9","jit":0,"ahead":1,"work":"matmul","round":9,"pure_ms":913.601,"c_ms":7.775,"same":true,"answers":[19621593062,473429],"c":[19621593062,473429]}
+{"version":"e01dae9","jit":0,"ahead":1,"work":"matmul","round":10,"pure_ms":915.917,"c_ms":7.830,"same":true,"answers":[19621593062,473429],"c":[19621593062,473429]}
+{"version":"e01dae9","jit":0,"ahead":1,"work":"matmul","pure_median_ms":915.667,"c_median_ms":7.830,"ratio":116.938,"agree":true}
+{"version":"e01dae9","jit":0,"ahead":1,"work":"bfs","round":0,"pure_ms":145.375,"c_ms":9.921,"same":true,"answers":[5,99998],"c":[5,99998]}
+{"version":"e01dae9","jit":0,"ahead":1,"work":"bfs","round":1,"pure_ms":94.088,"c_ms":10.294,"same":true,"answers":[6,99998],"c":[6,99998]}
+{"version":"e01dae9","jit":0,"ahead":1,"work":"bfs","round":2,"pure_ms":93.785,"c_ms":9.968,"same":true,"answers":[6,99998],"c":[6,99998]}
+{"version":"e01dae9","jit":0,"ahead":1,"work":"bfs","round":3,"pure_ms":94.891,"c_ms":9.922,"same":true,"answers":[6,99998],"c":[6,99998]}
+{"version":"e01dae9","jit":0,"ahead":1,"work":"bfs","round":4,"pure_ms":93.906,"c_ms":9.902,"same":true,"answers":[5,99998],"c":[5,99998]}
+{"version":"e01dae9","jit":0,"ahead":1,"work":"bfs","round":5,"pure_ms":93.708,"c_ms":9.870,"same":true,"answers":[5,99998],"c":[5,99998]}
+{"version":"e01dae9","jit":0,"ahead":1,"work":"bfs","round":6,"pure_ms":94.310,"c_ms":9.826,"same":true,"answers":[5,99998],"c":[5,99998]}
+{"version":"e01dae9","jit":0,"ahead":1,"work":"bfs","round":7,"pure_ms":97.351,"c_ms":9.832,"same":true,"answers":[6,99998],"c":[6,99998]}
+{"version":"e01dae9","jit":0,"ahead":1,"work":"bfs","round":8,"pure_ms":94.462,"c_ms":11.321,"same":true,"answers":[5,99998],"c":[5,99998]}
+{"version":"e01dae9","jit":0,"ahead":1,"work":"bfs","round":9,"pure_ms":94.026,"c_ms":9.834,"same":true,"answers":[5,99998],"c":[5,99998]}
+{"version":"e01dae9","jit":0,"ahead":1,"work":"bfs","round":10,"pure_ms":93.566,"c_ms":9.920,"same":true,"answers":[6,99998],"c":[6,99998]}
+{"version":"e01dae9","jit":0,"ahead":1,"work":"bfs","pure_median_ms":94.088,"c_median_ms":9.920,"ratio":9.484,"agree":true}
+{"version":"e01dae9","jit":0,"ahead":1,"work":"bfs_ahead","round":0,"pure_ms":146.719,"c_ms":7.726,"same":true,"answers":[5,99998],"c":[5,99998]}
+{"version":"e01dae9","jit":0,"ahead":1,"work":"bfs_ahead","round":1,"pure_ms":94.415,"c_ms":7.271,"same":true,"answers":[6,99998],"c":[6,99998]}
+{"version":"e01dae9","jit":0,"ahead":1,"work":"bfs_ahead","round":2,"pure_ms":94.750,"c_ms":7.315,"same":true,"answers":[6,99998],"c":[6,99998]}
+{"version":"e01dae9","jit":0,"ahead":1,"work":"bfs_ahead","round":3,"pure_ms":94.423,"c_ms":7.318,"same":true,"answers":[6,99998],"c":[6,99998]}
+{"version":"e01dae9","jit":0,"ahead":1,"work":"bfs_ahead","round":4,"pure_ms":94.410,"c_ms":7.306,"same":true,"answers":[5,99998],"c":[5,99998]}
+{"version":"e01dae9","jit":0,"ahead":1,"work":"bfs_ahead","round":5,"pure_ms":93.948,"c_ms":7.453,"same":true,"answers":[5,99998],"c":[5,99998]}
+{"version":"e01dae9","jit":0,"ahead":1,"work":"bfs_ahead","round":6,"pure_ms":94.501,"c_ms":7.662,"same":true,"answers":[5,99998],"c":[5,99998]}
+{"version":"e01dae9","jit":0,"ahead":1,"work":"bfs_ahead","round":7,"pure_ms":93.931,"c_ms":7.320,"same":true,"answers":[6,99998],"c":[6,99998]}
+{"version":"e01dae9","jit":0,"ahead":1,"work":"bfs_ahead","round":8,"pure_ms":94.121,"c_ms":7.328,"same":true,"answers":[5,99998],"c":[5,99998]}
+{"version":"e01dae9","jit":0,"ahead":1,"work":"bfs_ahead","round":9,"pure_ms":94.661,"c_ms":7.306,"same":true,"answers":[5,99998],"c":[5,99998]}
+{"version":"e01dae9","jit":0,"ahead":1,"work":"bfs_ahead","round":10,"pure_ms":94.950,"c_ms":7.306,"same":true,"answers":[6,99998],"c":[6,99998]}
+{"version":"e01dae9","jit":0,"ahead":1,"work":"bfs_ahead","pure_median_ms":94.423,"c_median_ms":7.318,"ratio":12.903,"agree":true}
+{"version":"e01dae9","jit":1,"ahead":0,"work":"bfs","round":0,"pure_ms":114.877,"c_ms":10.707,"same":true,"answers":[5,99998],"c":[5,99998]}
+{"version":"e01dae9","jit":1,"ahead":0,"work":"bfs","round":1,"pure_ms":15.987,"c_ms":9.895,"same":true,"answers":[6,99998],"c":[6,99998]}
+{"version":"e01dae9","jit":1,"ahead":0,"work":"bfs","round":2,"pure_ms":15.758,"c_ms":9.900,"same":true,"answers":[6,99998],"c":[6,99998]}
+{"version":"e01dae9","jit":1,"ahead":0,"work":"bfs","round":3,"pure_ms":16.359,"c_ms":9.857,"same":true,"answers":[6,99998],"c":[6,99998]}
+{"version":"e01dae9","jit":1,"ahead":0,"work":"bfs","round":4,"pure_ms":15.794,"c_ms":9.988,"same":true,"answers":[5,99998],"c":[5,99998]}
+{"version":"e01dae9","jit":1,"ahead":0,"work":"bfs","round":5,"pure_ms":15.587,"c_ms":11.974,"same":true,"answers":[5,99998],"c":[5,99998]}
+{"version":"e01dae9","jit":1,"ahead":0,"work":"bfs","round":6,"pure_ms":17.351,"c_ms":10.023,"same":true,"answers":[5,99998],"c":[5,99998]}
+{"version":"e01dae9","jit":1,"ahead":0,"work":"bfs","round":7,"pure_ms":16.389,"c_ms":9.854,"same":true,"answers":[6,99998],"c":[6,99998]}
+{"version":"e01dae9","jit":1,"ahead":0,"work":"bfs","round":8,"pure_ms":16.086,"c_ms":9.896,"same":true,"answers":[5,99998],"c":[5,99998]}
+{"version":"e01dae9","jit":1,"ahead":0,"work":"bfs","round":9,"pure_ms":15.672,"c_ms":9.852,"same":true,"answers":[5,99998],"c":[5,99998]}
+{"version":"e01dae9","jit":1,"ahead":0,"work":"bfs","round":10,"pure_ms":15.594,"c_ms":10.059,"same":true,"answers":[6,99998],"c":[6,99998]}
+{"version":"e01dae9","jit":1,"ahead":0,"work":"bfs","pure_median_ms":15.987,"c_median_ms":9.900,"ratio":1.615,"agree":true}
+{"version":"e01dae9","jit":1,"ahead":0,"work":"bfs_ahead","round":0,"pure_ms":114.912,"c_ms":7.848,"same":true,"answers":[5,99998],"c":[5,99998]}
+{"version":"e01dae9","jit":1,"ahead":0,"work":"bfs_ahead","round":1,"pure_ms":15.645,"c_ms":7.388,"same":true,"answers":[6,99998],"c":[6,99998]}
+{"version":"e01dae9","jit":1,"ahead":0,"work":"bfs_ahead","round":2,"pure_ms":15.802,"c_ms":7.501,"same":true,"answers":[6,99998],"c":[6,99998]}
+{"version":"e01dae9","jit":1,"ahead":0,"work":"bfs_ahead","round":3,"pure_ms":15.770,"c_ms":7.366,"same":true,"answers":[6,99998],"c":[6,99998]}
+{"version":"e01dae9","jit":1,"ahead":0,"work":"bfs_ahead","round":4,"pure_ms":15.732,"c_ms":7.374,"same":true,"answers":[5,99998],"c":[5,99998]}
+{"version":"e01dae9","jit":1,"ahead":0,"work":"bfs_ahead","round":5,"pure_ms":15.684,"c_ms":7.318,"same":true,"answers":[5,99998],"c":[5,99998]}
+{"version":"e01dae9","jit":1,"ahead":0,"work":"bfs_ahead","round":6,"pure_ms":15.712,"c_ms":7.362,"same":true,"answers":[5,99998],"c":[5,99998]}
+{"version":"e01dae9","jit":1,"ahead":0,"work":"bfs_ahead","round":7,"pure_ms":15.715,"c_ms":7.314,"same":true,"answers":[6,99998],"c":[6,99998]}
+{"version":"e01dae9","jit":1,"ahead":0,"work":"bfs_ahead","round":8,"pure_ms":16.654,"c_ms":7.352,"same":true,"answers":[5,99998],"c":[5,99998]}
+{"version":"e01dae9","jit":1,"ahead":0,"work":"bfs_ahead","round":9,"pure_ms":15.846,"c_ms":7.509,"same":true,"answers":[5,99998],"c":[5,99998]}
+{"version":"e01dae9","jit":1,"ahead":0,"work":"bfs_ahead","round":10,"pure_ms":16.349,"c_ms":8.428,"same":true,"answers":[6,99998],"c":[6,99998]}
+{"version":"e01dae9","jit":1,"ahead":0,"work":"bfs_ahead","pure_median_ms":15.770,"c_median_ms":7.374,"ratio":2.138,"agree":true}