o
odin.langpkg.dev
packages / library / sythentic-data-gen

sythentic-data-gen

c17daa1library

Explore using Odin for synthetic data generation

No license · updated 4 months ago

Synthetic Data Generator (Odin)

Experimenting with Odin for high-throughput synthetic data generation. Generates 1M rows of drone telemetry CSV data with two approaches — sequential and parallelized — then reports detailed performance metrics (p50, p99, latency distribution).

What it does

Both scripts generate identical 1M-row CSV files with 10 columns of drone telemetry:

timestamp, drone_id, lat, lon, altitude_m, speed_mps, battery_pct, heading_deg, temp_c, signal_dbm
  • sequential/ — single-threaded, batched generation
  • parallel/ — thread pool (8 workers), chunked generation

Output goes to data/. Each script prints a full performance report: timing breakdown, throughput, and latency percentiles (p1 through p99).

Dependencies

  • Odin compiler (dev or latest release)
  • No external packages — uses only core: stdlib

Run

# sequential
odin run sequential/

# parallel
odin run parallel/

# or use the Makefile
make sequential
make parallel
make compare      # runs both back-to-back

Output

data/telemetry_sequential.csv   (~100 MB, 1M rows)
data/telemetry_parallel.csv     (~100 MB, 1M rows)