排查实录:当 NCCL 通信出现 Time Out 时,你该如何确定是光模块坏了还是拓扑配置错了?
当我们在大规模 GPU 集群上进行分布式训练时,NCCL (NVIDIA Collective Communications Library) 扮演着核心的通信角色。如果训练过程频繁出现 NCCL Time Out 错误,这通常意味着节点间...
当我们在大规模 GPU 集群上进行分布式训练时,NCCL (NVIDIA Collective Communications Library) 扮演着核心的通信角色。如果训练过程频繁出现 NCCL Time Out 错误,这通常意味着节点间...
在当前的大模型(LLM)时代,NVIDIA H100 Tensor Core GPU 是训练和推理的主力核心。但一块 H100 GPU 本身并不能单独完成大规模训练任务。AI 服务器的设计精髓在于如何高效地将多块 H100 连接起来,形成一...
别让你的密钥在内存里裸奔:车载 HSM 硬件安全模块的实战加密方案 在现代汽车电子架构中,安全是重中之重。无论是 V2X 通信、安全启动(Secure Boot)还是空中下载(OTA)固件更新,都需要依赖强大的加密技术来保证数据和系统的完整...
在构建高性能的向量搜索系统时,选择合适的 Faiss 索引类型和超参数(如 nlist, nprobe)是至关重要的。错误的配置可能导致召回率(Recall)过低或查询速度(QPS)过慢。由于不同数据集的最佳配置差异巨大,手动调优非常耗时。...
Git Submodule是管理跨项目依赖库(例如共享的基础组件、工具链等)的强大工具。它允许一个Git仓库引用另一个特定版本的Git仓库。然而,如果不了解其底层机制,Git子模块也可能成为开发过程中的陷阱。 本文将聚焦于Git子模块的实战...
在构建复杂的 Python 框架、Web 框架或依赖注入(DI)系统时,我们经常需要动态地知道一个函数需要哪些参数,并根据这些需求从一个可用的资源池中自动提供相应的参数。Python 标准库中的 inspect 模块正是解决这类问题的利器。...
在现代 Python 编程中,尤其是使用 asyncio 进行高并发开发时,管理状态和上下文是一个常见挑战。如果你习惯使用全局变量来存储请求相关的信息(例如,请求 ID、用户会话数据),在异步环境中会立即遇到问题:当事件循环在不同任务之间切...
什么是 Python 字节码和 dis 模块? 在 Python 中,我们编写的源代码并不会直接被机器执行。相反,Python 解释器(CPython)首先将源代码编译成一种低级、平台无关的指令集,称为字节码(Bytecode)。然后,Py...