karpathy GPT2 视频

不借助gdb在终端中调试代码

code.interact 可以与 try-except 语句结合使用,从而在异常发生时启动交互式调试环境,帮助你检查程序的状态和调试问题。这种方法通常用于在出现错误时,提供一个即时的交互式环境,使你能够查看错误的上下文并手动调试。

示例:结合 try-except 和 code.interact

假设我们有一个函数,在执行过程中可能会引发异常。我们可以在 except 块中使用 code.interact 启动一个交互式调试会话,允许开发者在出现错误时查看并修改相关变量。

import code

def divide(a, b):
    return a / b

def main():
    x = 10
    y = 0  # 这里会引发 ZeroDivisionError
    try:
        result = divide(x, y)
        print(f"Result is: {result}")
    except Exception as e:
        print(f"An error occurred: {e}")
        
        # 启动交互式 shell,查看出错时的变量状态
        code.interact(local=globals())  # 你也可以选择 `locals()` 或自定义命名空间

# 运行程序
main()

torch.set_float32_matmul_precision

设置 float32 矩阵乘法的内部精度。使用tensor core计算。

以较低精度运行 float32 矩阵乘法可能会显著提高性能,并且在某些程序中,精度损失的影响可以忽略不计。

视频中提到这种方式几乎是free的,精度损失几乎看不出差别 

autocast加速和bf16精度

p10 Let's reproduce GPT-2 (124M)_哔哩哔哩_bilibili 

torch.compile加速

可以通过model = torch.compile(model)来加速。加速主要来自于降低python开销和GPU读写

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值