Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 8 additions & 0 deletions docs/journal.md
Original file line number Diff line number Diff line change
Expand Up @@ -24,3 +24,11 @@ Ran `asof-join-spread` → [results/2026-10-30-1412-asof-join-spread](../results
## 2026-10-30 14:12 EDT (at fe67b08)

Re-ran the as-of join benchmark with min/max (reproduce.py now prints them), 10 runs on Apple M4 laptop. FlowState is slower than Polars in both captures: 0.74x at 1M rows and 0.70x at 10M here, 0.71x at both on 2026-10-04. Ranges across the 10 runs do not overlap between the two engines. Absolute times drifted between sessions (Polars 8.7 ms on 10-04, 9.9 ms on 10-30 at 1M rows), so only same-run comparisons are meaningful. Single machine, synthetic data, no thermal or power-state control recorded.

## 2026-10-30 14:23 EDT (at fdc202b)

Ran `asof-join-march-build-3c7486a` → [results/2026-10-30-1423-asof-join-march-build-3c7486a](../results/2026-10-30-1423-asof-join-march-build-3c7486a) (exit 0, 10s). Notes: _TODO_

## 2026-10-30 14:23 EDT (at fdc202b)

Tested the 'stale March build' explanation: built the kernel and Python package at 3c7486a (README that claimed 1.8x) in a separate worktree with the same pinned Polars 1.38.1/pandas/pyarrow and Python 3.14.3, and ran today's reproduce.py against it, 10 runs, 1M x 500K rows, 1K symbols. FlowState 12.9 ms vs Polars 8.9 ms: still slower, ranges do not overlap. So the March kernel does not explain the 1.8x claim. Not ruled out: a different dataset, or Polars being faster now than in March (the March README says only 'Polars 1.x', no version). The March kernel was built with today's Rust toolchain, and the benchmark script is today's, not March's. Note: pow records git sha of the main checkout; the code under test was the 3c7486a worktree.
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
/private/tmp/claude-501/-Users-ryanhamby-dev-drillpad/6704cbf7-1607-4d44-808b-1a4cc22ae675/scratchpad/wt/.venv/bin/python -W ignore /private/tmp/claude-501/-Users-ryanhamby-dev-drillpad/6704cbf7-1607-4d44-808b-1a4cc22ae675/scratchpad/wt/reproduce_current.py --runs 10
12 changes: 12 additions & 0 deletions results/2026-10-30-1423-asof-join-march-build-3c7486a/env.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
date: 2026-10-30 14:23 EDT
git: fdc202b
host-os: Darwin 25.6.0 arm64
cpu: Apple M4, 10 logical cores
memory: 32 GB
python3: Python 3.14.3
rustc: rustc 1.99.1 (58cf8f9c3 2026-10-13) (Homebrew)
g++: Apple clang version 17.0.0 (clang-1700.4.4.1)
clang++: Apple clang version 17.0.0 (clang-1700.4.4.1)
go: go version go1.27.1 darwin/arm64
exit_code: 0
wall_seconds: 10
11 changes: 11 additions & 0 deletions results/2026-10-30-1423-asof-join-march-build-3c7486a/output.log
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
FlowState as-of join benchmark
hardware : Apple M4, 10 logical cores, 32 GB RAM
os : macOS-26.6.2-arm64-arm-64bit-Mach-O
python : 3.14.3
flowstate: 0.1.0 (Rust kernel: yes)
polars : 1.38.1 pandas: 3.0.6 duckdb: not installed pyarrow: 23.0.1
method : median of 10 runs after 2 warmup; backward join, tolerance none; excludes data generation

dataset: 1,000,000 left x 500,000 right rows, 1,000 symbols, synthetic random-walk quotes (seeds 42/99), globally timestamp-sorted
polars 8.9 ms (min 8.5, max 9.7; 1.00x vs polars)
flowstate 12.9 ms (min 11.8, max 13.6; 0.69x vs polars)
Loading