mailwal

[hellollvm] 学习编译libc++时的头文件处理 (39)

Zhouyi Zhou
我沿着断点
2 hw watchpoint keep y *(unsigned long *)0x555569fb71e0
stop only if *(unsigned long *)0x555569fb71e0==93825335973472
对forward.h的分析
我又对IncludeMacroStack进行跟踪
#2 0x0000555568b30827 in clang::Preprocessor::PopIncludeMacroStack (this=0x555569cee198)
at /home/zzy/Program/llvm-project/clang/include/clang/Lex/Preprocessor.h:2486
2486 CurLexer = std::move(IncludeMacroStack.back().TheLexer);
(rr) p IncludeMacroStack
我跟到了forward.h的上一层
#include <locale.h>
听PyTorch Europe 2026。 来自瑞士洛桑理工学院的Pierre Quinton和Valérian Rey(来自Simplex Lab)介绍了TorchJD库,这是一个用于在PyTorch中实现雅可比下降(Jacobian Descent)的工具。雅可比下降是梯度下降的扩展版本,支持对向量值函数进行优化,特别适用于具有多个损失函数的神经网络训练(如多任务学习)。 该算法通过迭代使用损失向量的雅可比矩阵(即每个单独损失梯度堆叠而成的矩阵)来更新模型参数。TorchJD库使得计算相对于模型参数的雅可比矩阵变得简单高效,并能将它们聚合为对每个目标都有益的更新方向。这与传统的平均损失再使用梯度下降的方法不同——后者可能对平均损失有益,但实际上可能导致某些单个损失增加。在本次分享中,演讲者将简要介绍雅可比下降背后的理论,并展示如何在多任务学习之外的各种应用场景中使用TorchJD。