“难题揭榜”第99期-太平洋会战第五期
发布时间:2024-06-24
难题 1:基于层次化存储的精准访存建模和最优分配算法
出题组织
理论研究部
接口专家
张弓 nicholas.zhang@huawei.com;王鹏 wangpeng423@huawei.com
一、技术背景
训推一体场景面临 NPU 算力比带来的内存墙问题,限制了训推一体机适用的场景和系统吞吐。Unified 3-Tier Memory(U3M)是以 NPU 为中心的 HBM/DRAM/SSD 等的层次化存储,来表达统一的内存空间来使能 NPU 的算力比扩增,解决有限硬件下的内存墙问题。然而,高效的 U3M 需要优化内存在不同层次存储间的分配,以及内存在不同层次存储上换入换出的时机。
二、技术挑战
-
现有的 Unified Memory 系统中的内存分配策略如 GMT-Reuse/LRU 等,为有限感知业务侧的计算模式,采用较通用的访存建模(如 GMT 使用状态机和马尔可夫链),使得 UM 在特定的高性能场景下(如训练),预测命中车较低(71%),不满足高效内存分配的需求。
-
训推一体场景下,计算模式变化多样,对于访存模式的预测建模,以及对应的内存分配优化算法的执行效率和最优度提出了要求。
三、当前结果
现有业界最新成果 GMT 系统 [1] 中,对于单一的训练任务(Backprop 任务),其访存模式预测准确率仅有 71.09%,低命中率在实际的内存分配管理中会造成大量计算等待内存换入,引起系统吞吐的下降。在实际训推一体场景中,由于推理的计算模式更复杂,以及存在训推任务混布场景,现有的方法均无法适用。
四、技术诉求
-
设计高效的访存模式捕捉和建模算法,在典型训推一体场景下(例如基于升腾运行 LLAMA3 13B 微调加推理混合部署),预测准确率高于 90%。
-
且,根据计算任务的内存使用情况,给出高效的 3-Tier 内存分配管理算法,系统总成本不变情况下: (1) 训练场景下,模型装载量提升 30%,吞吐损失在 5% 以内; (2) 推理典型场景下(如 RAG),能使 KV Cache 扩容,等效吞吐提升 50% 或可服务请求数量提升 50%。
参考文献
[1] GPU Orchestrated Memory Tiering for the Big Data Era. (ASPLOS 24). [2] GPU-initiated on-demand high-throughput storage access in the BAM system architecture. (ASPLOS 23). [3] 英伟达 Unified Virtual Memory. Improving GPU Memory Oversubscription Performance | NVIDIA Technical Blog [4] AMD Shared Virtual Memory. AMD Technical Information Portal
难题 2:基于昇腾加速百亿千维向量大库容构建与检索
出题组织
数据存储产品线 | 亚太研究院
接口专家
张弓 nicholas.zhang@huawei.com;任仁 renren1@huawei.com;王艳 jessica.wangyan@huawei.com;王美玲 wangmeiling17@huawei.com
一、技术背景
-
向量维度从百维向万维演进 多模态场景下,向量维度从百维向万维演进,计算复杂度线性增长。 |Dataset|Dimensions|Size| | ---- | ---- | ---- | |DEEP1B|96|10,000,000| |Fashion-MNIST|784|70,000| |GIST|960|1,001,000| |GloVe|200|1,193,514| |Kosarak|27,983|75,462| |MNIST|784|70,000| |MovieLens-10M|65,134|69,863| |NYTimes|256|300,000| |SIFT|128|1,010,000| |Last.fm|65|292,385|
-
向量库容从百万级向百亿级演进 从 SIFT128 数据集各个不同规模数据集所需的算力大小中推算:随着数据规模的增加,总算力量呈现超线性增长。 | 数据规模 (M)| 所需算力 | | ---- | ---- | |1|17.59 TFLOPS| |2|36.15 TFLOPS| |5|93.68 TFLOPS| |10|192.5 TFLOPS| |20|395.7 TFLOPS| |50|1,025 PFLOPS| |10000 (10B)|252.5 PFLOPS|
二、当前结果 & 挑战
-
硬件算力:鲲鹏 920 单核浮点算力理论值 [2] 为 2.6G*(1FPU)*128 (位宽)*2 (乘加)/64 (双精度)≈83.2GFlops;
-
构建时长:百亿千维向量构建所需算力达到 EB 级,基于 CPU 完成 10B 千维向量构建需要 281 天;
-
检索性能:在百亿 128 维的数据集上估算,CPU 时延数据为 220ms,QPS 仅达到 733。
当前业界 SOTA 方案:Nvidia 提出 CAGRA 方案以及 GGNN 学术方案,采用 Nvidia A100,大幅提升算子运算能力,将亿级 128 维数据构建从天级减少到小时级;扩展到百亿千维数据,仍然需要 5 天以上完成构建。
| 数据 | 纯 CPU | 单 GPU | 单 NPU |
| 1 亿 128 维 | 2 天 | 1 小时 | 暂未攻坚 |
| 100 亿 128 维 | 35 天 | 17.5 小时 | 暂未攻坚 |
| 100 亿 1024 维 | 281 天 | 140 小时 | 暂未攻坚 |
三、技术诉求
-
构建加速:基于昇腾算力实现百亿千维数据集图算法索引构建,比 CPU 构建加速 50×,实现百亿千维向量构建达到小时级。
-
检索加速:使用单卡 310P 支持百亿千维数据的检索,实现 Recall-10@95% 检索延迟小于 10ms,吞吐量提升 8 倍。
注:两者均满足更优,满足其一亦可。
参考文献
[1] GGNN: Graph-based GPU Nearest Neighbor Search, Fabian Groh1,2, Lukas Rupert1, Patrick Wieschollek1, Hendrik P. A. Lensch1. IEEE Transactions on Big Data [2] 鲲鹏 920 浮点算力计算方法 [3] CAGRA: Highly Parallel Graph Construction and Approximate Nearest Neighbor Search for GPUs, Hiroyuki Ootomo, Akira Naruse, Corey Noley, Ray Wang, Tamas Feher, Yong Wang
难题 3:针对已压缩数据的二次压缩算法
出题组织
数据存储产品线 | 亚太研究院
接口专家
张弓 nicholas.zhang@huawei.com;王鹏 wangpeng423@huawei.com
一、技术背景
存量数据中存在很多已压缩数据,通过对这些数据进行重新编码,取得更好的压缩效果,节省存储空间。 流程:
-
原始数据 → 备份软件压缩(一次压缩函数 F (P₁,P₂,P₃))→ 一次压缩数据,节省 50% 存储空间;
-
一次压缩数据 → 二次压缩 → 二次压缩数据,可再节省 100% 存储空间;
-
二次压缩数据 → 还原压缩数据。
二、技术挑战
-
压缩函数及参数组合多:压缩算法可调参数类型和个数较多,大量场景下分布和结构特征不明显,难以精确估计。待遍历组合超过 1000 种压缩函数与参数组合:F₁(P1,P2,…,Pn)、F₂(P1,P2,…,Pn)……Fn (P1,P2,…,Pn)。
-
二次压缩难度大:压缩编码后数据规律丢失,难以直接压缩;完整解压缩数据膨胀影响性能。
三、当前方案
-
不解压直接编码:多数场景下没有压缩收益。
-
完整解压后重删压缩:解压后数据量 N 倍膨胀,数据处理流程变长,性能影响大。
-
压缩数据重建:基于推测压缩函数及参数 F'(P₁',P₂',P₃') 得到 B,通过记录差值 diff (A,B),在参数推测不准的情况下,仍能还原到原始压缩数据 A。当需要记录的 diff 值过多时,性能影响大。
四、技术诉求
基于 ARM 平台进行原型验证,备份软件已压缩数据的压缩比相比基线算法提升 50%,二次压缩性能 400MB/s/core。
参考文献
[1] CompressDB: Enabling Efficient Compressed Data Direct Processing for Various Databases, SIGMOD 2022 [2] The Design, Implementation, and Deployment of a System to Transparently Compress Hundreds of Petabytes of image Files for a File-Storage Service, NSDI 2017
难题 4:大窗长下的高性能 LZ 压缩算法
出题组织
数据存储产品线
接口专家
一、技术背景
LZ77 算法是一系列无损数据压缩算法(包括 deflate、ZSTD 和 LZO 等)的关键组成部分。通过利用字典来存储已经遇到的字符串,并用相应的索引来代替重复出现的字符串,从而实现压缩效果。 示例: 原始串:ABCDEFGHABCDXYZABCDEFGH LZ77 输出:ABCDEFGH<0,4>XYZ<0,8> <offset,length>:索引指向重复位置,迭代替代相同内容。
二、技术挑战
为取得高压缩率,LZ77 使用大历史窗口(128KB)和 Lazy match 实现最优匹配查找:
-
大历史窗口:每个滑动窗口对历史窗口中的数据进行匹配。大窗长导致字典匹配位置增加,单次匹配操作计算放大 depth 倍。
-
Lazy match:当查找最优匹配位置后,记录该位置,继续向后滑动 n 个字节寻找潜在更优匹配,计算量继续放大 n 倍。 算法时间复杂度:O (n) = depth × n Depth 为平均字典匹配次数(最大为 128),n 为平均 lazy 次数(1≤n)。
三、当前方案
多级哈希链表最优匹配方案: 基于多级哈希链表,每个历史字典记录前向相同哈希位置的 Index,实现 128KB 大窗长的多匹配点方法提升压缩率,但性能无法满足要求。 瓶颈:当下 CPU 的 L2 cache 无法实现全量历史字典及相关数据结构缓存,导致 cache miss 严重,随机访存降低压缩带宽;遍历所有前向哈希位置时,没法提前抓取多级哈希链表中的匹配位置,需要频繁地去内存中读取数据。 硬件约束:Kunpeng 920 L1 cache (64KB)、L2 cache size (512KB)。
四、技术诉求
-
压缩率:不低于 ZSTD-level 9。
-
性能:压缩速度达成 200MB/s/core。
-
约束条件: (1) 数据结构:优化查找数据结构,匹配过程中 L2 cache 全命中; (2) LZ 字典窗长:不小于 128KB; (3) 查找位置:不少于 20 个匹配位置查找; (4) 使用场景:虚拟化,文件共享。
参考文献
[1] A Universal Algorithm for Sequential Data Compression, IEEE Transactions on Information Theory [2] Compression of Individual Sequences via Variable-Rate Coding, IEEE Transactions on Information Theory
难题 5:面向磁带介质的低冗余信道编码算法
出题组织
数据存储产品线 | 亚太研究院
接口专家
王成 wangcheng6@huawei.com;邢炯跃 xingjiongyue@huawei.com
一、技术背景
磁带存储相比硬盘存储,用户误码要求高出 3 个数量级以上,要求 UBER 达到 1e-19 到 1e-20 水平,而且要求有抗坏道、抗 media defect、stripe error 能力。 高可靠要求下磁带纠错算法使用二维 RS 的 ECC 算法,空间冗余较高,码率约 83%。 磁带的高带宽和高性能使得 ECC 信道纠错算法资源开销较大,高复杂度的算法使用困难。
编码流程:
-
ECC 编码:User data 加上 C1 parity、C2 parity;
-
码字交织:将 C1 码字(长度 ×4)打散重组为~1KB 块;
-
CWI-4 排布:将码字分散排布到多 track 磁带扇区,抵御连续坏道与介质缺陷。
二、技术挑战
-
高可靠:容量密度的持续提升需求,导致原始误码率变大,需纠错能力更强的信道编码算法来保证用户数据高可靠;
-
高效率:数据高可靠带来较大的冗余开销,需提升空间有效利用率,节省存储成本;
-
高性能:单机柜多盒磁带数据高并发处理,对 CPU 算力需求较大,需创新降算法复杂度。
三、当前结果
-
现有方案:使用基于二维 RS 码的 ECC 方案,C1 码字为 RS (211,199),C2 码字为 RS (192,168),码率为 82.5%,纠错能力为 1e-20UBER/1e-3RBER,抗 4 个任意坏道;正在探索 LDPC+RS 的解决方案;
-
性能现状:基于 NEON 指令优化,单个 Hi1630 核编解码性能分别达成 GB/s 量级。
四、技术诉求
三者需同时满足:
-
高可靠:支持 5e-3 原始误码率到 1e-20 用户误码率纠错能力;抗 4 个坏道;
-
高效率:ECC 信道编码码率提升至 86.5%,明显强于当前 LTO9 标准;
-
高性能:ECC 编解码性能和算法复杂度维持与当前方案一致。
参考文献
[1] S. Furrer et al., 317 Gb/in2 Recording Areal Density on Strontium Ferrite Tape. IEEE Transactions on Magnetics, vol. 57, no. 7, pp. 1-11, July 2021 [2] R.D. Cideciyan, S. Furrer, M. A. Lantz. Product codes for data storage on magnetic tape[J]. IEEE Transactions On Magnetics, 2016, 53(2): 1-10.
页面基础信息
最后更新于:2025-12-25 11:14
449

被折叠的 条评论
为什么被折叠?



