240 发简信
IP属地:山东
  • 推理引擎TP并行-MLP部分

    #01基础概念 张量并行是一种模型并行策略,它将神经网络层的权重矩阵在不同设备间进行分割,使每个设备只负责部分计算,从而实现并行处理。在MLP中...

  • Resize,w 360,h 240
    CUDA知识点之Bank Conflict(4)- Z-Order排布

    #01 基础原理 在前面的文章中,我们已经知道,shared memory 访存是通过 memory transaction (内存事务)进行的...

  • Resize,w 360,h 240
    CUDA知识点之Bank Conflict(3)-向量化访问

    #01 背景 在前文的讨论中,我们分析了一个warp内的每个线程访问4个Byte的情况,这样所有线程发起一次读写请求,可以访问到128 Byte...

  • Resize,w 360,h 240
    CUDA知识点之Bank Conflict(2)-冲突避免

    #01 前情回顾 前面的文章中,我们简单分析了shared memory Bank Conflict的基础概念,本文我们来对如何避免Bank冲突...

  • Resize,w 360,h 240
    CUDA知识点之Bank Conflict(1)-概念

    CUDA共享内存是一种位于GPU芯片上的高速内存,其读写带宽远高于全局内存(约10倍以上),读写延迟也显著降低(约20~30倍)。这使得共享内存...

  • huggingface模型下载tips

    登陆huggingface账户 通过snapshot_download下载模型 如果需要登陆token: modelscope模型下载 hf格式...

  • Rust Trait

    观感 Rust的Trait和Golang的interface看起来非常相似,从开发者角度来看,都可以实现具体类型的抽象化。 golang: Ru...

  • Rust手动管理内存

    为了确保安全性,Rust在零抽象的基础上,限制了很多易导致潜在bug的操作,比如直接指针操作,以及长生命周期等等,但是在某些情况下,如果涉及到操...

  • Rust利用自定义drop实现defer

    在Rust中,当一个变量生命周期终结时,会自动进行变量回收,一般情况下,这个回收过程是自动完成的,比如一个新建的struct会被自动释放内存,但...