
微软高档软件工程师Alice Vinogradova将她用SAP的ABAP说话编写的数据库移植到了驱动Sinclair ZX Spectrum的经典Z80处理器上,并对后果感到惊喜。
Vinogradova将她的数据库定名为ZVDB-Z80,并将其形容为"一个统统用ABAP开采的向量数据库,旨在提供不依赖外部向量数据库的孤苦惩处决策"。
ABAP(1983年出身)和Z80(1976年出身)险些是同期代产品
ABAP,全称Advanced Business Application Programming,是ERP巨头SAP为其平台创建的利用才气编程说话。
代码当然发布在GitHub上,这位工程师讲解注解说:"上个月,我在清算旧代码时再行发现了ZVDB。"
当Vinogradova再行注释ZVDB时,她"有了一个让我会心一笑的判辨"。
张开剩余63%"ABAP(1983年出身)和Z80(1976年出身)险些是同期代产品,"她写谈。"它们成长于消亡个缱绻时期——其时内存珍稀,周期需要量入为用,每个字节皆很紧迫。"
Vinogradova观赏开采者在这些戒指条款下创建优秀软件所需的技能。
"当我构建ZVDB时,我刻意利用了所有我知谈的Z80优化期间,"她写谈。"为什么?因为这些'老旧'期间是不灭的——它们偶合能让当代代码运转得极快。"
因此,她在用Z80汇编说话重写ZVDB时再次使用了这些期间,并宣称在这款经典CPU上运转时,她的代码"尽管时钟速率各异达857倍,但仅慢了3-6倍"。
Vinogradova以为这并不令东谈主不测。"这些优化期间即是为Z80而生的。它们偶合具有无数的最优性,"她写谈,然后讲解注解了为什么她以为Z80念念维"在2025年仍然告捷"。
我在ABAP中利用的每一条Z80西席在当代硬件上还是灵验:
查找表老是比缱绻更快 - Z80:从简贵重的周期 - 当代CPU:缓存友好的考核步地
王法内存考核为王 - Z80:一个周期vs赶紧考核的四个周期 - HANA:列式存储偏疼王法步地
位操作是通用的 - Z80:原生CPU请示 - 当代CPU:SIMD作念相似的事情,但更快
展望算胜过运转时数学运算 - Z80:无法承担缱绻资本 - 当代系统:为什么要缱绻能记着的东西?
"那些使用Z80汇编的岁月不仅是怀旧——它们是锻真金不怕火,"她补充谈。"其时每个周期皆很紧迫,你猜怎样着?每个周期刻下仍然很紧迫。范围变了,原则没变。"
"当我将此移植到HANA AMDP时,它会更快。因为AMDP会遴选我的Z80优化算法并将其并行化。但中枢洞悉——查找胜过缱绻,王法胜过赶紧——这来自1976年。"
她的GitHub页面虽然包含了这里接洽的代码开云体育,以及如安在真确的Sinclair ZX Spectrum、在线模拟器JSSpeccy或Qaop/JS,或土产货模拟器Fuse、ZEsarUX、Speccy或Retro Virtual Machine上运转的讲解。
发布于:北京市