如何通过 tf.config.experimental.set_memory_growth 解决显存被 TF 强行吃光的尴尬
在使用 TensorFlow (TF) 进行深度学习开发时,尤其是涉及到 GPU 资源管理时,许多开发者会遇到一个令人头疼的问题:TensorFlow 默认会在初始化时,预先分配几乎所有可用的 GPU 显存,即使模型非常小。这导致了显存资源...
在使用 TensorFlow (TF) 进行深度学习开发时,尤其是涉及到 GPU 资源管理时,许多开发者会遇到一个令人头疼的问题:TensorFlow 默认会在初始化时,预先分配几乎所有可用的 GPU 显存,即使模型非常小。这导致了显存资源...
如何在 Android 端使用 Memory Mapping (mmap) 技术防止大模型推理引发 OOM 在移动端部署 AI 模型(如 LLM、大参数量 CNN)时,最常见的痛点就是 OOM (Out Of Memory)。传统的加载方式...
如何通过共享内存实现多进程模型权重共享:大幅降低 App 内存占用 在端侧推理或高并发 Web 服务场景中,为了提升吞吐量,我们常会启动多个进程并行处理推理请求。然而,如果每个进程都独立加载一份模型(例如一个 2GB 的 BERT 模型),...
NVIDIA 的 Unified Memory (UM) 或称托管内存(Managed Memory),是 CUDA 6.0 引入的一项重要特性。它旨在通过提供一个统一的地址空间,让 CPU(Host)和 GPU(Device)可以共享数据...
计算机体系结构中有一个长期存在的瓶颈,称为“内存墙”(Memory Wall)。它描述了处理器速度增长(基于摩尔定律)远快于内存访问速度和带宽增长的现象。对于传统的CPU计算任务,这早已是性能限制因素;而对于今天的大型语言模型(LLMs),...
在PyTorch深度学习训练中,数据加载的速度(即I/O吞吐量)往往是整个训练流程的瓶颈。当尝试使用多进程(num_workers > 0)来加速数据读取时,用户可能会遇到程序锁死、内存暴涨或性能不升反降的问题。本文将深入解析如何通过合理配...