跳到正文
热点事件持续更新

C与Rust实现SQLite parse_number扩展性能对比

2 篇报道2 个报道来源3 小时前更新

先了解这件事

AI 综述

Simon Willison 在 Claude(Opus 5.5)协助下编写了 parse_number() SQLite 扩展,把 "-$1,234.56"、"12.5%" 这类字符串转为数值,并用 C 和 Rust 各实现相同行为后做性能对比。 优化后的 C 实现每行耗时 16–19 纳秒,约为 Rust 版本的两倍速度,也远快于 SQL 的 replace()。普通 C 版本因依赖 strtod() 在小数上偏慢,加入紧凑快速路径后补齐差距。 测试覆盖类型保留、解析规则与浮点精度,四个版本在 800 万次模糊测试中结果一致。

AI 根据报道生成 · 53 分钟前更新

报道时间线

沿着报道,了解事件的不同侧面。

11月9日
  1. Simon Willison
    用 C 和 Rust 分别实现 SQLite 扩展 parse_number():性能对比

    四个 SQLite 扩展用 C 和 Rust 实现相同的 parse_number() 行为,测试覆盖类型保留、解析规则与浮点精度。优化后的 C 实现每行 16–19 ns,约为 Rust 版本的两倍速度,也远快于 SQL 的 replace()。普通 C 版本因依赖 strtod() 在小数上偏慢,加入紧凑快速路径后补齐差距;所有版本在 800 万次模糊测试中结果一致。

  2. RadarAI
    Simon Willison 用 Claude 对比 C 与 Rust 实现 parse_number() SQLite 扩展的性能与体积

    Simon Willison 在 Claude(Opus 5.5)协助下编写将 "-$1,234.56"、"12.5%" 等字符串转为数值的 parse_number() SQLite 扩展,对比 C 与 Rust 实现。

本事件热度走势

还没有足够的连续观测数据,暂不绘制趋势。