(2026)“The Third”:Mandelbrot 基准测试
创作者:Charles Zhang 开发时间:几个小时
截图

概述
为此,我们计算一个校验和,而不是输出图像,以减少外部依赖,并使该基准测试易于移植到其他平台。
“The Mandelbrot Benchmark”诞生时,我们已经实现了文档级模块(以及数据成员属性),这为 Divooka 实现图灵完备铺平了道路。尽管它比 The Second 短得多,但这个程序的意义被认为更大。
开发
在组装这个程序时,我们使用了以下功能:
- 完整的(
Basic Application)过程式上下文节点(loop、while) - 文档模块数据成员
由于缺乏表达式机制,while 循环尤其难以实现,这也启发了后来基于 lambda 的 while 循环。
就像使用 Unreal Blueprints 时一样,对于这类数值算法,实际构建最多也仍然需要伪代码。不过一般而言,对任何算法来说,有(基于文本的)伪代码都是有帮助的;而使用文本语言时,则可以省去这一步来提高效率。
评论
这清楚地表明,要获得可观的原生性能,必须有编译型运行时。
几点重要的观察:
- 绝对属于高级用法
- 需要大量控制状态
- 如果我们在图上一个小模块一个小模块地构建,再把它们拼接起来,效果很好
- 在图中构建需要很长时间,而且不太便于迁移,尤其是在没有代码生成或复制粘贴的情况下
这个设置还引出了其他一些重要的推论,我们将在以后讨论。
脚注
在撰写本文时,这个设置仍在进行中,尚未完成。
资源
- 原始源代码(Github)
- 示例文件:此示例作为标准 Divooka Explore 发行版的一部分提供,位于 Benchmarks 文件夹中。