## MirageOS 并发:Lwt vs. Fibers
MirageOS 是一种独特的操作系统内核,采用完全事件驱动的方法,摒弃了传统的抢占式线程。这需要抽象来管理事件回调,目前 Lwt – 一个采用单子风格的 OCaml 线程库 – 是主要的解决方案。虽然有效,但 Lwt 的单子特性需要代码适配,并且为阻塞操作引入了闭包分配,这引发了 OCaml 社区的讨论。
像通过 Lwt_fiber 库提供的限定连续 (delimcc) 这样的替代方案,提供了一种潜在的更轻量级的方法,使用可重启的异常。比较 Lwt 和 fibers 的基准测试表明,对于简单的阻塞场景,fibers 最初的性能*不如* Lwt,因为异常处理的开销。然而,随着更深的调用栈和减少的阻塞频率,fibers 表现出更好的性能,避免了重复的闭包分配。
最终,性能差异对于 MirageOS 的核心需求来说似乎并不重要。Lwt 的关键优势在于它可以无缝编译到 Javascript,通过 js_of_ocaml 实现,从而实现浏览器可视化以及与 Node.js 的互操作性。选择更多地取决于代码互操作性以及其他语言(如 Javascript 的 `yield` 运算符)中并发功能的发展,而不是原始速度。
## 空间连接与H3索引:性能提升
传统的空间连接(例如,`SELECT * FROM A JOIN B ON ST_Intersects(A.geo, B.geo)`)在规模较大时性能会下降,因为空间谓词阻止了高效的哈希连接,导致复杂度为二次方。本文详细介绍了Floe如何利用H3索引来显著加速这些查询。
H3将地球划分为一系列六边形单元的层级结构,提供紧凑的、基于整数的键,适用于高效连接。通过将几何体表示为H3单元ID的集合,`ST_Intersects`检查转换为更快的集合重叠操作。虽然这引入了保守的近似(可能存在误报),但最终的精确谓词重新检查确保了正确性。
该过程包括为两个表生成H3覆盖,在单元ID上进行连接,去重候选结果,然后应用空间谓词。这会将代价高昂的谓词从主要操作转移到清理步骤。使用世界城市/国家数据集的测试表明,使用H3分辨率3可以实现**400倍的加速**,将查询时间从约460秒减少到仅1.17秒。
这种方法实用之处在于它可以与视图/CTE一起工作,避免索引维护,并允许轻松试验分辨率级别。最终,H3索引使数据库能够利用其优势——并行哈希连接——来处理地理空间数据。
受人工智能数据中心日益增长的成本和环境影响驱动,一位前英特尔院士加入了OpenAI,以应对前所未有的规模下的性能工程。作者是一位数据中心性能领导者,认为现有方法不足,并寻求对ChatGPT等系统的创新优化。
一个关键时刻发生在理发时——与理发师的对话显示出人们对ChatGPT的日常使用热情高涨,用于超越简单查询的任务,这巩固了该技术的广泛影响。这与最初的怀疑形成对比,并强化了为真正有价值的产品做出贡献的机会,这让他想起了在Netflix的积极经历。
在与26家人工智能公司面试后,OpenAI因其人才工程师的集中度(包括前同事)和工程师享有的自由度而脱颖而出。作者承认OpenAI已经拥有一支强大的性能工程团队,但他旨在利用他的专业知识——包括eBPF等技术——进一步提高效率并降低成本,首先从针对ChatGPT的多组织战略开始。他将此视为实现长期梦想的机会,即创建一个像“奥拉克”一样的人工智能,灵感源于童年对科幻小说的痴迷。
## Ollama:轻松本地运行LLM
Ollama 简化了在您的电脑上直接使用大型语言模型(LLM),例如 Gemma。它消除了传统 LLM 设置的复杂性——无需再为依赖项或配置而烦恼!
Ollama 允许您轻松**从可搜索的库(可在 [https://ollama.com/search](https://ollama.com/search) 找到)下载预训练模型**,并**使用单个命令运行它们**。例如,`ollama run gemma3:1b` 会下载并执行 Gemma 3 模型。
Gemma 的 1B 版本因其低 RAM 使用量(1.5-2GB)和快速响应时间而突出,使其非常适合快速任务。只需在 Ollama 终端中输入您的提示,即可收到生成的文本。
安装通过一个简单的脚本非常简单:`curl -fsSL https://ollama.com/install.sh | sh`。在 [https://ollama.com/download](https://ollama.com/download) 了解更多信息并找到其他操作系统的安装说明。