最近的文章

混合精度训练真的降低显存占用吗

# 混合精度训练真的降低显存占用吗 混合精度训练AMP是指将模型参数从fp32转化为fp16进行推理,由于位数少一半,在GPU运算的时候,速度更快,可以加速模型训练,但是混合精度训练真的一定降低显存占用吗 模型训练的参数一般分为: 1. 模型参数本身(比如7B的模型,fp32精度,光放入显卡就

Pytorch爆显存的一些常见解决办法

·

AI摘要: 本文针对PyTorch训练过程中显存爆炸的问题提供了两种解决方案:一是通过`torch.cuda.memory_allocated(device)`逐步骤监控显存占用情况以定位瓶颈;二是分析计算图累积机制,指出在循环中不当操作(如append/累加loss)会导致历史变量长期驻留内存,并强调需使用detach或item主动释放张量而非仅依赖no_grad()。文中还展示了自定义Trainer类的实现案例,说明如何避免hidden_states等中间结果被意外保留。

什么是Vercel的Fluid计算

AI摘要: 本文深入解析了Vercel推出的Fluid计算技术,该技术通过类似操作系统线程池的机制解决传统Serverless架构中的冷启动问题。其核心在于复用已创建的Node.js实例而非频繁新建,实现实时扩展、资源预占、按实际用量计费等特性,并支持流式传输和响应后处理等高级功能。文章指出这种设计模式与计算机操作系统的资源调度策略高度相似,体现了底层系统工程思想在云原生领域的创新应用。

Rust的trait特征

·

AI摘要: 本文详细介绍了Rust语言中的trait特性,包括其基本用法、继承与多继承操作、静态分发和动态分发机制。通过示例代码展示了如何定义和实现trait,以及使用Send和Sync约束实现者的能力。文章还对比了trait与接口的不同之处,解释了静态分发(编译时确定类型并生成高效代码)和动态分发(运行时查找具体实现)的原理及性能差异。

Rust基础知识回顾

AI摘要: 本文系统回顾了Rust语言的核心机制,包括所有权转移(通过赋值和into实现)、单线程共享的Rc智能指针、跨线程安全的Arc智能指针、互斥锁Mutex用于多线程数据保护、借用辅助函数as_ref/as_deref进行安全引用转换,以及Option/Result的错误处理模式和生命周期注解规则。重点解析了这些特性在内存管理、并发编程中的实现原理与应用场景。