惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

WordPress大学
WordPress大学
A
About on SuperTechFans
小众软件
小众软件
Hugging Face - Blog
Hugging Face - Blog
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
博客园 - 叶小钗
博客园 - 聂微东
博客园 - Franky
Apple Machine Learning Research
Apple Machine Learning Research
罗磊的独立博客
量子位
博客园 - 三生石上(FineUI控件)
Recent Announcements
Recent Announcements
The GitHub Blog
The GitHub Blog
B
Blog RSS Feed
T
The Blog of Author Tim Ferriss
GbyAI
GbyAI
云风的 BLOG
云风的 BLOG
Last Week in AI
Last Week in AI
宝玉的分享
宝玉的分享
B
Blog
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
Stack Overflow Blog
Stack Overflow Blog
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC

V2EX

我用 AI 写代码,但终端管理反而成了累赘——于是我做了 codux [调研] 各位在公司都用什么 ide 和 agent 写代码? 老运维 share 一个运维平台 看到有公司考核 token 指标,很好奇大家上个月的 AI 账单是多少 GLM-Coding 调用持续报错: z.ai 的 Lite 套餐几乎无法使用,官方 Pro/Max 是否稳定? 现在还有什么渠道可以稳定安全地使用 Claude 吗? 上海漕河泾内推,本组有 2 个 hc,一个后端,一个前端,预算都是 20k 左右,不打卡,氛围好 如果 V2EX 上有一组不永久保存聊天记录(比如只保存 7 天或者 24 小时)的聊天室,那么会开启哪些有用或者有趣的可能? gemini cli 貌似挂了,一直返回 403 第一次在自媒体上赚到钱 收集了最近在使用的低价 GPT, Gemini,邮箱等 AI 会员的小店合集 讨论个大实话:现在企业还在说 AI 编程提效 20%, 30%的,真的太落后,没用懂 AI。因为包括很多前沿公司,已经狂奔到提效 200%-500%的情况 [招聘][远程][币安] 前端/后端/QA/iOS/Android 至少 3 年以上经验 目前有大量 HC 欢迎投递 Chatgpt Pro 用量用不完的可以开这些设置 面试的时候好像遇到钓鱼了,给各位避个坑 cursor 年续费 22 号到期, 自动续费是否还是老的计次套餐呢 被两件破事毁掉的一下午,琐碎的内耗消磨人的精力 使用 Planet 存储 Codex 的会话或者重要信息 如果业务部门领导不要你开发功能,而是要求你教会它用 claude code 开发功能,你会怎么做? 分享一个 MacOS 接绿联 CM818 USB 转 DP 转接器使用感受 我的 HR 朋友 10 年老 Java ,非全大专,大家帮忙看看简历 开源了一个 AI 口语练习工具,音素级发音评分,完全免费可自部署 V2EX 上有哪些你觉得很有趣、印象深刻的妹纸? 字节为啥不出个国内版 Vercel? 有在大马的朋友吗? 问个运营商问题 你们在有领导的公司大群发过的最大胆的消息是什么 公司裁员,目前没有工作。想试试摆摊,做一个移动鲜啤打酒车 我的硬盘 Memblaze Pblaze 5 Linux 下不识别,给 Linux 内核提交了补丁, AI 说有望被合并 只有我一个人觉得 codex 不好用?
我开发了一款圆周率计算器 App,挑战硬件性能的极限
Twins666 · 2026-04-04 · via V2EX

从 Super PI 说起

十几年前,DIY 装机是一件非常有仪式感的事情,每次装好一台新电脑,第一件事不是装游戏,而是跑分。

记得当时有一款软件叫 Super PI ,它的界面非常简陋,功能也只有一个——计算圆周率。选择计算 100 万位,点击开始,然后盯着屏幕,等它跑完。跑完的数字,就是你这台机器的”成绩单”。

我至今记得第一次把计算时间从 30 多秒压到 20 秒以内时的兴奋。换了根内存条,速度快了 3 秒;超频到 3.6GHz ,又快了 2 秒。那种将硬件性能“可视化”的感觉,简单、直接、让人上瘾。

一个念头

随着 PC 时代的逐渐退场,我的设备变成了 iPhone 、iPad 和 Mac 。

有一天,我突然想:我手上的 iPhone ,算 100 万位圆周率要多久?

找了一圈,App Store 上的相关应用,要么是给小朋友背圆周率的,要么就是展示几十位小数的计算结果。没有一款应用,能让我像当年用 Super PI 那样,认真地跑一次大规模计算,然后和别人比较:“你的 iPhone 15 跑了多少秒?我的 iPhone 16 快了多少?”

这个需求看起来可能很小众,但我知道,一定有人和我一样会感兴趣。

于是,我决定自己动手做一个。

算法的选择

要做就做认真的。

圆周率的计算算法有很多,从莱布尼茨公式到 Machin 类公式,我最终选择了 Chudnovsky 算法。原因很简单——它是目前世界纪录保持者使用的算法,每一项能贡献约 14 位有效数字,收敛速度极快。

但 Chudnovsky 算法只是公式层面的选择。真正决定性能的是实现层面: • Binary Splitting (二分分裂):将级数求和转化为大整数的分治运算,避免了逐项累加导致的精度损失。 • NTT (数论变换):大整数乘法的核心,将 O(n²) 的复杂度降到 O(n log n)。 • 多核并行:充分利用 A 系列和 M 系列芯片的多核架构进行加速。

这些听起来像是教科书上的名词,但真正写下去才知道,每一个技术实现背后,都是一个深坑。

开发中的取舍

精度 vs 速度,是我面临的第一个取舍。

我没有使用任何第三方大数库,整个大整数运算( BigInt )完全从零开始用 Swift 实现。这意味着我可以对 Apple 芯片进行最细粒度的优化,但也意味着每个基础运算——加、减、乘、除、取模、开方——都得自己实现、调试,确保它们是正确的。

一个 NTT 乘法的 bug 可能不会让 1000 位的结果出错,但可能在 100 万位时悄悄出问题。为了确保准确,我花了大量时间做交叉验证,逐位对比,确保每一位都是正确的。

功能的克制,是另一个取舍。

我本可以加入更多跑分功能、排行榜、社交分享等,但我最终选择了克制。这个 App 的核心就是:在你的设备上,认真计算一次圆周率,告诉你用了多长时间。

在此基础上,我加了一些自己想要的功能: • 数字搜索:想知道你的生日在圆周率的第几位吗? • 分享卡片:设计过的卡片,记录你的设备、计算位数、耗时。 • 计算历史:追踪每次计算的成绩,见证设备性能的变化。 • 圆周率知识:关于 π 的趣味故事、历史和算法介绍。

每个功能都是因为”我自己想用”才加的,而不是为了凑功能列表。

一些感悟

开发这个 App 的过程,本身就像一次性能测试——测的是我自己。

写 BigInt 时,我重新拾起了大学时代的数论知识,才发现那些曾经觉得”没什么用”的定理,竟然能让一个乘法快上百倍。

调试多核并行时,我学到了一件事:并行计算不是免费的午餐。任务拆分、内存竞争、同步开销,最终的加速效果远不是”核心数倍”那么简单,能看到显著提升已经很值得欣慰。

而在打磨 UI 时,我反复思考的是:如何让一个“等待计算完成”的过程不那么焦虑?进度百分比要平滑地前进,哪怕后台计算可能在某个阶段停滞。用户不需要知道每一步的具体细节,只需要看到数字在动,知道程序在跑。

最后

这个 App 注定不会成为大众产品。

但如果你曾在深夜里盯着 Super PI 的进度条,等待一个数字来证明你的硬件没有白买;如果你好奇手中的设备在面对一个纯粹的数学问题时,能跑得多快——

那么,这个 App 就是为你做的。

关于内购

我知道很多人对内购持保留态度,因此我想诚恳地说明:这个 App 绝对不会影响你基本的使用体验。免费版本可以计算最多 1000 位圆周率。如果你希望计算更多位数,或者想尝试更多高级功能,比如数字搜索、多核并行计算等,可以选择 Pro 版本,价格比一杯咖啡还便宜。

我的初衷并不是为了推销,而是提供一个让你体验硬件性能并享受数学之美的工具。内购只是为了让你在体验过程中,能够更好地使用它,并支持我的持续开发。

下载链接: https://apps.apple.com/app/pi-digits-calculator/id6761232095

算一次 π,看看你的设备有多快。