首页 时政热点 科技头条 智能AI 安全攻防 数码硬件 开发者生态 汽车 游戏 社会热点 开源推荐 医疗健康 归档 标签 关于

uv:对轮缓存中的所有文件进行重复数据删除

摘要

## Summary When content hashing is enabled, we currently allocate and zero a new 64 KiB buffer for every file we copy and hash during streaming extraction. This PR reuses one buffer across the wheel i...

and the buffer wheel were initial The 21327 AnyIO SymPy
2026-08-31 1 阅读 约2分钟阅读 tosh
分享:
字号:
## 摘要 当启用内容哈希时,我们当前为在流提取期间复制和哈希的每个文件分配一个新的 64 KiB 缓冲区并将其清零。此 PR 在轮子上重复使用一个缓冲区。对于基准测试中使用的 PyTorch 轮,这将哈希的缓冲区分配从 11,120 个减少到 1 个,同时将每个活动轮的缓冲区大小保持在 64 KiB。以下测量将“a188b8e833aef3c3b4b60a32ed9fafe6ac74186a”处的 #21327 与顶部应用的此优化进行比较,然后将更改移至“main”。它们不是针对“main”的测量。 Linux 基准测试交替基础和候选,使用通过本地 HTTP 提供服务的固定轮,并启用内容寻址缓存: |冷安装| #21327 | #21327 + 缓冲区重用 |改变 | | --- | ---: | ---: | ---: | |任何IO | 110 毫秒 | 107 毫秒 | -2.6% | |症状| 845 毫秒 | 775 毫秒 | -8.3% | | NumPy | 627 毫秒 | 567 毫秒 | -9.5% | | PyTorch CPU | 6.50 秒 | 5.99 秒 | -7.8% | | 14包环境,并发4 | 6.95 秒 | 6.47 秒 | -7.0% |以上个人成绩使用16对配对轮次;完整环境使用 12。在初始 20 对运行后重复 AnyIO、SymPy 和 NumPy:初始 AnyIO 计时有噪音,而初始 SymPy 和 NumPy 改进分别为 7.8% 和 6.9%。所有原始样品均被保留。缓存安装和本地滚轮控件没有显示出一致的变化。在初始运行、重复和控制中,我们测量了 672 次安装,不包括预热和缓存启动。合著者:查理·马什
这篇文章对您有帮助吗?

订阅66必读

每日精选科技资讯,直达你的邮箱