YC孵化的GPU虚拟化公司Thunder Compute招募系统工程师
YC孵化、种子轮融资的Thunder Compute公司正在招聘一名系统工程师。该公司致力于构建面向GPU的VMware,其GPU虚拟化软件通过共享和超额认购来消除闲置的GPU周期,并通过IP网络连接GPU。这是一个极具挑战性的职位,需要你拥有顶尖的C++能力、低级网络和编译器知识以及在延迟敏感环境中的经验。公司愿意为了合适的候选人搬迁总部。
YC孵化、种子轮融资的Thunder Compute公司正在招聘一名系统工程师。该公司致力于构建面向GPU的VMware,其GPU虚拟化软件通过共享和超额认购来消除闲置的GPU周期,并通过IP网络连接GPU。这是一个极具挑战性的职位,需要你拥有顶尖的C++能力、低级网络和编译器知识以及在延迟敏感环境中的经验。公司愿意为了合适的候选人搬迁总部。
这篇文章为零基础读者讲解了“文档即代码” (Docs as Code) 的概念和实践。它摒弃了技术术语,用通俗易懂的语言解释了 Git、静态网站生成器 (例如 MkDocs)、主题、构建和部署流程等关键概念。文章强调实践的重要性,鼓励读者动手尝试,并提供了学习资源和步骤,例如学习 Git,使用静态网站生成器和主题,了解 CI/CD,以及部署网站等。即使没有编程经验,也能逐步掌握文档即代码,提高文档协作效率。
Simula语言发明继承并非为了代码复用或扩展性,而是为了解决其简单垃圾回收机制和入侵式列表的效率问题。Simula的垃圾回收机制过于简陋,无法处理指针指向栈变量的情况。为了避免程序崩溃,Simula禁止了多种参数传递方式,限制了语言表达能力。同时,为了高效使用入侵式列表,Simula发明了“前缀”(prefixing),也就是继承机制,使得对象可以直接包含列表节点,避免了额外内存分配。因此,继承最初只是一个性能优化手段,而非面向对象编程的基石。
sectorlisp是一个仅512字节的LISP实现,可在裸机上启动John McCarthy的元循环求值器。该项目去除了LISP中的非必要元素,精简至核心功能,并提供LISP、C和i8086汇编三种实现版本。其中,i8086版本甚至可以在BIOS启动,堪称目前最小巧的LISP实现。
这款工具能让你以小时计而非周计的速度集成第三方应用和服务。它简化了开发流程,让你定义和使用可自动复用的组件,并能自动配置多种环境和版本。同时,它具备自动重试、故障转移和提供商切换等功能,保证系统的高可用性。更重要的是,它提供从开发到生产环境的全方位可见性,让你能即时发现并解决问题。
Yggdrasil 是一款实验性的紧凑型路由方案,完全去中心化,仅需少量状态即可运行。它主要是一种最短路径方案,网络将尝试找到到目的地的最直接路径。节点是平等的参与者,使用对等连接相互连接以承载网络流量。对等连接可以通过任何 IP 网络建立,无论是直接的有线或无线链路、局域网还是互联网。在某些情况下,同一网络上的附近设备还可以使用组播发现自动建立对等连接。所有 Yggdrasil 网络上的节点都是路由器,并将自动传递流量以帮助其尽可能接近其目的地。这意味着,即使在仅稀疏连接的网络中,所有节点都将可以访问该网络上的所有其他节点。即使节点位于 NAT 后面也无关紧要——一旦建立对等连接,流量就会通过该对等连接双向流动。Yggdrasil 还旨在容忍网络变化。例如,如果链路发生故障,网络将自我修复并使用其他链路在可用时路由流量。这使其适用于网状网络,其中网络拓扑可能会并且经常会发生变化。网络上的每个节点都有一个与位置无关的加密身份,并且在我们当前的实验实现中,稳定的 IPv6 地址是从此密钥生成的。这允许支持 IPv6 的应用程序在很大程度上无需修改即可在 Yggdrasil 上运行。地址是完全移动的,并随着节点在网络中移动而保持不变。
US Routing是一个用Python编写的美国本地快速路线规划库,适用于对精度要求不太高的场景。它基于北美道路数据集,能快速计算城市、邮编或坐标之间的路线,提供多种路线规划选项(最短距离、最快时间)以及详细的路线信息(距离、时长、经过的州)。该库还提供下载和处理北美道路数据集的功能,并支持自定义路由图的构建。
Picostrap 5是一个基于Bootstrap 5的WordPress主题,它速度极快,并巧妙地结合了SASS和WordPress自定义器。你可以在WordPress后台直接自定义Bootstrap的外观,Picostrap会利用内置的浏览器端SASS编译器实时编译CSS。它提供AI调色板生成器、实时样式指南预览、丰富的自定义选项以及许多可开关的功能,例如禁用Gutenberg编辑器、添加返回顶部按钮等。此外,它还支持WooCommerce、LiveCanvas和WindPress,并注重性能优化。
Michael Larabel是Phoronix.com网站的首席作者,于2004年创立了该网站,专注于提升Linux硬件体验。他撰写了超过20000篇文章,涵盖Linux硬件支持、性能、显卡驱动程序等主题。Larabel还是Phoronix Test Suite、Phoromatic和OpenBenchmarking.org等自动化基准测试软件的首席开发者。他的成就为开源社区做出了巨大贡献,极大地推动了Linux在硬件领域的应用和发展。
本文深入探讨了GPU利用率的三个层面:GPU分配利用率、GPU内核利用率和模型FLOP/s利用率。作者指出,高价格和性能敏感性使得最大化GPU利用率至关重要。文章分析了影响各个层面利用率的因素,例如经济限制、DevOps限制、主机开销等,并提出了相应的优化策略,例如使用Modal平台提高GPU分配效率,优化内核代码,提高算术强度等。最后,文章还分享了业界GPU利用率的现状和最佳实践,为开发者提供了宝贵的经验和指导。
GovEagle公司招聘一位经验丰富的Kubernetes和Python专家,负责优化其AI驱动的政府承包商提案撰写平台。工作内容包括对Kubernetes工作负载、Celery队列、Redis缓存和云网络进行可靠性审计,制定优先行动计划并快速实施改进(例如HPA调整、警报和部署策略),以及为Celery不足之处采用Temporal提供指导或原型。候选人需具备5年以上高可用性生产系统运行经验,精通Kubernetes上的Python服务扩展,并熟悉基于队列的架构和可观察性。熟悉FedRAMP/GovCloud者优先。
该提案建议在 Go 运行时中添加一个新的 GOOS 目标(例如 GOOS=none),允许 Go 程序在特定应用程序定义的退出函数下运行,而不是依赖于任意的操作系统系统调用。这使得 Go 程序能够在没有直接操作系统支持的情况下进行独立运行(裸机运行)。这项技术在 TamaGo 项目中已经实现,该提案建议将其整合到 Go 主干代码中。通过定义一些必要的函数,例如 CPU 初始化、硬件初始化、标准输出、随机数生成和系统时间获取等,Go 程序可以在没有操作系统的情况下运行。这将极大地扩展 Go 语言的应用范围,例如嵌入式系统、虚拟机和 UEFI 等。
这篇文章幽默地描述了如何用Prolog计算平均值,从简单的数学定义到冗长的递归实现。作者批判性地探讨了教学中对Prolog库函数的限制,导致代码冗余且可读性差。文章以对比的方式,展示了简洁的数学方法和繁琐的递归实现之间的差异,并指出教学中应注重代码的可读性和可维护性,而非单纯追求递归的技巧。
本文比较了 Astro 和 React Server Components (RSC) 两种构建高性能网站的方法。Astro 使用 Astro Components (服务器端组件) 和 Client Islands (客户端组件) 的架构,两者之间数据单向流动,前者负责预处理,后者负责交互。RSC 则使用 Server Components 和 Client Components,概念类似,但两者都是 React 组件,通过 `'use client'` 指令区分。RSC 更加灵活,允许组件在服务器端和客户端共享,但学习曲线更陡峭。Astro 的易用性更高,但在大规模应用时可能受限于其 HTML 输出格式和组件间交互的限制。选择哪种方案取决于项目需求和团队的技术栈。
安全研究员发现,大量AI生成的虚假漏洞报告充斥着漏洞赏金平台HackerOne。这些报告通常措辞完美,格式规范,但缺乏实际安全价值,浪费安全人员时间,并可能扰乱真实漏洞的发现。研究员呼吁HackerOne加强审核机制,打击这种行为,并提出了一些解决方案,例如引入担保机制或利用现有网络基础设施进行审核。 这已成为一个令人担忧的趋势,可能大规模影响开源项目。
Rybbit是一个开源且尊重隐私的Google Analytics替代方案,几分钟内即可轻松设置并上手。它提供百万级访问量真实生产环境的在线演示,支持自托管或使用其付费托管服务。Rybbit提供会话、独立用户、页面浏览量、跳出率、会话时长等关键指标,且完全符合GDPR和CCPA规范,不使用cookie或用户追踪。此外,它还支持自定义目标、留存率、用户旅程、漏斗图等高级功能,并提供高级筛选、自定义事件、实时会话监控、三级地理位置追踪及地图可视化等强大功能,支持组织和无限数量的网站。
作者在Scott Hanselman的启发下,了解了“字符串类型”(stringly typed)的概念,即在存在更优类型的情况下,依然使用字符串进行数据传递。这在与后端API交互的单页面应用(SPA)开发中尤为常见,因为大多数API使用JSON进行通信,导致类型信息丢失,降低了代码的类型安全。作者反思了以往对这种方式的容忍,并开始探索通过TypeScript等技术,以及tRPC或GraphQL等方案,来实现网络间的类型安全,彻底摆脱“字符串类型”接口的困扰。
ty是一个用Rust编写的极速Python类型检查器和语言服务器,目前仍处于开发阶段,尚未准备好用于生产环境。该项目的所有开发工作现已转移至Ruff仓库,如有任何关于ty(包括所有Rust源代码)的修改建议,请在Ruff仓库提交Pull Request。更多细节请参考贡献指南。ty采用MIT许可证授权。
本文深入浅出地讲解了Python异步编程的核心机制asyncio。作者通过逐步构建一个简化的asyncio版本,阐明了await关键字背后的运作原理,并最终实现了一个功能完整的echo服务器。文章从生成器和协程的基础知识入手,逐步引入了Scheduler、Future等核心概念,并详细解释了如何使用selectors模块实现非阻塞I/O操作。通过阅读本文,读者可以更深入地理解Python异步编程的底层机制,不再被await的“魔法”所迷惑。
PostgreSQL 18 Beta 1 版本引入了备受期待的异步 I/O (AIO) 功能,这标志着 PostgreSQL 在 I/O 处理方面的一次重大飞跃。AIO 通过允许数据库并发发出多个读取请求,显著提升了在云环境下的性能,尤其是在延迟敏感的场景中。目前 AIO 仅支持读取操作,但未来版本可能会扩展到写入操作。新的 `io_method` 配置参数允许选择同步、I/O 工作进程或 `io_uring` 三种 I/O 模式,其中 `io_uring` 在支持的 Linux 内核上能提供最佳性能。基准测试显示,在 AWS 云环境下,AIO 可将读取性能提升 2-3 倍。然而,异步 I/O 也改变了性能监控方式,`EXPLAIN ANALYZE` 的 I/O 时间统计可能不再完全准确,需要结合新的 `pg_aios` 视图进行分析。
Kindle Comic Converter (KCC) 是一款强大的漫画和漫画书转换工具,专为 Kindle、Kobo、Remarkable 等电子墨水屏阅读器优化漫画和漫画书。它能够去除页面边距,支持固定布局,并通过多种图像处理步骤,使漫画在电子墨水屏上显示效果最佳。KCC 支持多种输入格式(文件夹/CBZ/CBR/PDF 等)和输出格式(MOBI/AZW3/EPUB/KEPUB/CBZ 等),并能根据设备分辨率优化文件大小,提升低性能阅读器的性能。无论是初学者还是高级用户,KCC 都能满足他们的需求,提供丰富的选项和自定义功能。
Polycompiler是一个实验性项目,旨在将任意Python和JS代码合并到一个源文件中。通过巧妙的lambda表达式和eval函数的结合,Polycompiler能够根据运行环境(Python或Node.js)选择性地执行Python或JS代码。例如,一段代码在Node.js中打印“Hello JS”,在Python中打印“Hello Python”。该项目虽然目前仍处于开发阶段,但为同时面向Python和JS用户的单文件解决方案提供了一种可能性。
Java开发中常见的逻辑错误难以通过传统调试方法解决。文章介绍了一种测试驱动调试方法,通过编写单元测试来发现并定位逻辑错误。文章详细解释了多种测试技巧,例如假设测试、状态推进测试和回归测试,并阐述了如何利用测试结果理解代码行为,最终改进代码逻辑。此外,文章还提到了AI辅助单元测试工具,可以帮助开发者更有效地发现潜在的逻辑漏洞。
传统的浮点数随机数生成方法存在精度损失和偏差问题。本文介绍了一种新的高效算法,它能够生成在[0, 1)区间内均匀分布的、完美浮点数随机数,解决了传统方法的缺陷。该算法通过两步实现:第一步,生成具有特定精度的定点数随机数;第二步,根据舍入模式填充剩余精度位。通过巧妙的设计,该算法的性能与传统方法相当,并且通过测试验证了其均匀性和精度。这项研究对于依赖精确浮点数随机数的模拟和计算具有重要意义。
Zed,一款全新开源的AI代码编辑器,以其闪电般的速度和强大的AI辅助功能惊艳亮相。它采用Rust语言构建,支持GPLv3许可证,所有代码,包括AI代理面板,都完全开源。该面板允许程序员直接与AI交互,进行代码修改、编写新代码,甚至搜索代码库。Zed尊重用户隐私,默认情况下不会收集数据,并提供多种模型选择,包括Claude 3.7 Sonnet和Gemini 2.5,甚至支持用户使用Ollama在自己的硬件上运行自定义模型。目前,Zed已发布macOS和Linux稳定版,Windows版本将于2025年晚些时候发布。
JetBrains宣布其C++集成开发环境CLion现已免费提供给非商业用户!这意味着学生、业余爱好者以及从事开源项目的开发者都可以免费使用这款强大的IDE进行C和C++编程。此举旨在降低开发门槛,鼓励更多人学习和使用C/C++。虽然商业用途仍需付费,但对于非商业用途,CLion提供了与付费版本相同的完整功能,只需在IDE中选择“非商业用途”许可证即可。
自2019年以来,Videolabs团队一直通过Unity商店提供开源VLC for Unity集成插件。然而,在2023年夏末,Unity以包含LGPL代码为由,无故封禁了他们的发布者账号,并拒绝恢复,即使移除所有LGPL代码也不例外。 此举引发了开源软件维护者的生存困境,因为Unity自身也依赖LGPL库。为了继续服务用户,Videolabs团队建立了自己的商店,提供VLC for Unity插件以及其他服务,包括针对LibVLC和FFmpeg的咨询服务,以确保开源项目的可持续发展。
Zed,一款全球最快的AI代码编辑器正式开源!它基于Rust构建,拥有完全开源的AI功能,允许用户通过Agent Panel与AI交互,进行代码修改、编写等操作。AI代理能够理解代码库并提供帮助,无需预先训练或索引。Zed注重用户隐私,对话默认私密,不会收集数据用于训练。此外,它支持多种语言模型,并允许用户使用自定义模型或通过Ollama在本地运行。目前已支持macOS和Linux系统,Windows版本预计2025年发布。
BiomeJS 是一款新兴的 JavaScript 代码格式化和校验工具,旨在替代 Prettier 和 ESLint。它将两者功能合二为一,并使用 Rust 构建,性能大幅提升,速度比前辈快了一个数量级以上。BiomeJS 提供类似 Prettier 的格式化工具和类似 ESLint 的校验工具,支持多种语言,但对某些框架的支持尚不完整。它易于安装和配置,并提供直观的错误提示。虽然在某些方面不如 Prettier 和 ESLint 成熟,但其性能优势和简化的工作流程使其成为一个极具吸引力的选择。
程序员常常关注算法复杂度,却忽略了现代硬件的内存层次结构对性能的影响。文章通过实验比较了顺序访问、间接访问和随机访问内存三种情况下的性能差异,结果表明,顺序访问速度最快,随机访问速度慢了一个数量级。这说明,优化内存访问模式对程序性能至关重要,即使是简单的操作,优化内存布局也能带来巨大的性能提升。文章建议在设计数据结构和算法时,充分考虑内存访问模式,例如将一起使用的的数据放在内存中相邻的位置,以充分利用CPU缓存,避免缓存未命中。