自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(185)
  • 收藏
  • 关注

原创 Hydra介绍

是由Facebook开发的Python管理配置框架。解决问题:普通python脚本使用argparse处理命令行参数,仅支持简单的扁平参数(如),对于多层嵌套参数、多配置文件组合、动态参数覆盖、配置自动保存等复杂场景,argparse难以支持。Hydra正是为解决这些痛点而生。

2025-12-20 23:52:13 309

原创 什么时候会用到python -m

是“模块运行模式”,无需关心当前工作目录,只要项目根目录在python的。(前提是加入PYTHONPATH中了)作为模块根目录,自动识别。例如上面的项目中,若在根目录myproject/下,执行。中,即可直接运行后面跟的模块,比直接执行。文件更灵活,尤其适用于多目录结构的项目。,因为python会将脚本所在目录。运行,python会将当前执行目录。作为默认根目录,无法识别上层。包,完美解决跨目录导入问题。

2025-12-20 23:24:26 122

原创 torch.distributed.launch介绍

可用于单节点分布式训练,其中每个节点可启动一个或多个进程;也可用于多节点分布式训练,每个节点同样可以启动一个或多个进程。是pytorch用于分布式训练启动和管理的模块,

2025-11-14 09:54:13 587

原创 fire.Fire()、argparse、HfArgumentParser

是python标准库自带的命令行参数解析工具,需要用户手动声明参数的名称、类型、默认值、帮助信息等,解析逻辑完全由用户控制,步骤繁琐但灵活。,就会自动将其转换为命令行接口(CLI),参数由函数/类的参数自动推导。是Google开源的库,无需手动定义参数,只需要将函数、类或对象传给。

2025-11-13 10:05:54 121

原创 偏应用实例

偏应用”(Partial Application)是函数式编程的概念,核心是固定一个函数的部分参数,生成一个新的可调用对象。这个新对象就是“偏应用实例”。它的本质是:不改变原函数/类的逻辑,只是提前“冻结”部分参数,后续调用时只需传入剩余未固定的参数,从而简化重复调用的流程。这行代码返回的就是一个。

2025-10-21 17:22:48 129

原创 *args, **kwargs的用法

args, **kwargs是python中用于灵活传递参数的语法,作用是“接收不确定数量的额外参数”,以适配函数可能需要的多种输入场景。必须在所有显式参数后。显示参数匹配完后,剩下的“无参数名”的位置参数,全部归。实际使用时,直接传入值、不指定参数名的参数,会被。剩下的“有参数名”的关键字参数,全部归。形式指定参数名的参数,会被。

2025-10-17 09:49:53 150

原创 FastV: An Image is Worth 1/2 Tokens After Layer 2

如下图所面所示的结果,我们可以看到如果选择在第2层filter out 50%的image tokens,我们就减少了52%的flops,而模型的输出完全一致;如果选择在第5层filter out 75%的image tokens,我们就减少到38%的flops,模型的输出还是一样;如果选择在第2层filter out 75%的image tokens,模型的输出就会受到影响了。如下图所示,我们需要在第K层后添加一个filter层,将不重要的tokens去掉,然后再接着下一层。更详细的数据对比如下表所示。

2025-08-17 10:05:37 404

原创 相对熵与KL散度

熵(Entropy)是一种度量系统不确定性的量,反映了信息的随机性。相对熵(Relative Entropy),也称熵差(Entropy Difference)或KL散度(Kullback-Leibler Divergence),是度量两个概率分布之间差异的量。相对熵的大小即反映了两个分布之间的差异。当相对熵取到最大值时,两个分布完全不同;当相对熵为0时,两个分布完全相同。

2025-07-31 15:10:08 1131

原创 多线程编程、异步函数+多线程编程

线程在执行过程中与进程还是有区别的。每个独立的进程有一个程序运行的入口、顺序执行序列和程序的出口。但是线程不能够独立执行,必须依存在应用程序中,由应用程序提供多个线程执行控制。每个线程都有他自己的一组CPU寄存器,称为线程的上下文,该上下文反映了线程上次运行该线程的CPU寄存器的状态。指令指针和堆栈指针寄存器是线程上下文中两个最重要的寄存器,线程总是在进程得到上下文中运行的,这些地址都用于标志拥有线程的进程地址空间中的内存。

2025-07-28 11:19:34 370

原创 存算一体简单介绍

传统的计算机架构,数据存储和计算是分开的,数据在存储器和处理器之间频繁的传输导致了延迟。在此背景下,将存储和计算功能融为一体的存算一体芯片应运而生。

2025-06-29 19:24:28 1219

原创 扩展linux分区

【代码】扩展linux分区。

2025-05-19 00:06:57 138

原创 ML Compiler入门及相关概念介绍

简单介绍ML编译器,以及IR等相关概念

2025-04-21 14:42:35 779

原创 使用Python创建虚拟环境

【代码】使用Python创建虚拟环境。

2025-04-19 21:30:16 156

原创 DeepSeek中的MLA技术

On2)On)WQWVWKWDKVCtKV​WUKWUV。

2025-02-27 21:24:49 1430

原创 interconnection

ON)ON2)ON2)N2ONlogN)OlogN)ON)ON)ON)OsqrtN))OlogN)ONlogN)OlogN。

2025-01-07 12:58:02 717

原创 Ch2:不同的机械臂/机械手、配置仿真环境及可视化代码

本节介绍机器人硬件、如何仿真机器人、怎么给机器人接口发送命令。

2024-12-10 13:00:06 1379

原创 Ch1:古今的manipulation与仿真、ROS和Drake介绍

且模拟接触行为的质量和性能也大大提高(这方面的模拟主要是靠复杂的geometry queries和stiff (measure-)微分方程),虽然目前在控制方程的数值求解方面仍有改进空间,但现今的求解器已经足够好用了。各章节按照整个manipulation任务中不同的building blocks组件进行讲述,涵盖计算机视觉、动力学和控制学等的领域知识,本课仅介绍各领域与manipulation最相关的idea。且支持可重复的确定性仿真。会讲相关的机器人硬件、仿真这些硬件的细节,以及几何和动力学基础。

2024-12-09 18:56:27 1256

原创 主存储器组织

2nTA​TMC​TMC​TA​4M×4211×211×4512×512×8256K×82Mb16×81288128​16MB212×212×88×4096327683×64b192b××。

2024-11-11 17:07:59 1379

原创 机器人学习仿真框架

机器人学习仿真框架一般包含(自底向上):

2024-10-22 13:53:50 2694

原创 LangSplat和3D language fields简略介绍

LangSplat相关技术拆分解释:3dgs:伟大无需多言SAM:The Segment Anything Model,是图像分割领域的foundational model,已经用在很多视觉任务上(如图像修复、物体追踪、图像编辑等),以及用在3D领域中,后者相关工作如:Seal:将包含SAM的VFMs用于点云分割SA3D:将SAM泛化到3D物体本篇:使用SAM得到物体掩码以及3个hierarchical semantics,进而训练一个3D language field3D Lang

2024-10-19 05:16:13 1768

原创 cuda编程模型

【代码】cuda编程模型。

2024-10-16 22:30:57 1004

原创 计算机体系结构量化研究方法 -- Pipelining: Basic and Intermediate Concepts

那么延迟槽的内容是什么呢?最好是执行一些无论分支成功失败都要执行的指令,最好与分支并不相干。

2024-10-15 08:16:32 964

原创 李飞飞 - World Labs

要超越当今模型的能力,我们需要具备空间智能的AI,它能够在三维空间和时间中对世界进行建模,并对物体、场所和交互进行推理。目的是开发出能够利用图像和其他数据对三维世界做出决策的软件,从而构建所谓的“大型世界模型”:“将AI模型从2D像素的平面提升到完整的3D世界,包括虚拟世界和现实世界,以赋予这些模型如同人类般丰富的空间智能”最终,这项技术将涵盖机器人和制造业等领域。李飞飞曾表示,AI前沿研究涉及一种算法,这种算法可以合理推断出图像和文本在三维环境中的样子,并根据这些预测采取行动,这被称为“空间智能”

2024-10-14 00:25:06 712

原创 输出浮点数的二进制机器码并提取出指数位、输出阶码真值

【代码】输出浮点数的二进制机器码并提取出指数位、输出阶码真值。

2024-10-10 11:53:29 257

原创 一些零散的和编译相关的语法/flash-attn涉及语法扫盲

【代码】一些零散的和编译相关的语法/flash-attn涉及语法扫盲。

2024-10-09 19:20:29 1130

原创 flash-attention代码逻辑

本篇写的很乱,主要是自己当时读代码时的一些随手记录,对自己帮助可能更大。如果觉得写得很乱不要喷我,我应该没时间整理成干净的博客了

2024-10-09 19:16:52 2005 1

原创 C++中的模板template

的判断完全在编译时完成,二者会生成两种不同的代码逻辑,减轻了运行时的开销;而普通参数是在运行时传递的,即它们的值只有在程序执行时才会确定。前者可用于生成不同的代码实例,从而提高性能、避免运行时开销。非类型形参与普通函数参数的区别:前者是在编译时确定的,允许将常量值、枚举值、指针等类型作为模板参数传递,并参与模板的实例化和代码生成,从而避免运行时的开销。

2024-10-07 16:36:43 586

原创 cudaMalloc与cudaMemcpy详解

【代码】cudaMalloc与cudaMemcpy详解。

2024-09-29 00:06:28 395

原创 FlashAttention原理:从原始Attention到FlashAttention

以前的attention加速方法旨在减少attention的计算和内存需要,如sparse-attention、low-rank approximation等,但由于它们主要关注FLOP reduction,且倾向于忽略内存访问的开销,所以都没有达到wall-clock speedup。FlashAttention比普通attention的HBM(GPU high bandwidth memory)访问量更少,并适用于一系列SRAM大小。

2024-09-26 14:44:52 5792 2

原创 逐元素相乘

留作自查询用,有利于写优化

2024-09-18 14:51:58 908

原创 配实验室环境时的一些记录

自做笔记用,不保证泛化性

2024-09-12 18:52:43 342

原创 寒武纪MLU硬件--抽象硬件模型介绍

一些基本概念MLU Core:是寒武纪硬件的基本组成单元。每个MLU Core是具备完整计算、IO和控制功能的处理器核心,可独立完成一个计算任务,也可与其他MLU Core协作完成一个计算任务Cluster:每4个MLU Core构成一个Cluster,每个Cluster内还会包含一个额外的Memory Core和一块被Memory Core和4个MLU Core共享的SRAM(Shared RAM,共享存储单元)Memory Core:不能执行向量和张量计算指令,只能用于SRAM和DDR(Dou

2024-07-22 11:39:14 2162

原创 Cambricon BANG C编程入门

Cambricon BANG异构并行编程模型利用CPU和MLU协同计算。CPU作为主机侧的控制设备,用于完成复杂的控制和任务调度;设备侧的MLU则用于大规模并行计算和领域相关的计算任务。使用Cambricon BANG C编写程序时,需要同时编写主机侧和设备侧的代码。

2024-07-21 22:44:46 1360

原创 pip下载本地压缩包步骤

下载到本地后,以上面的regex为例,执行。上下载要安装的压缩包,如。

2024-07-08 11:58:11 932

原创 一些3D数据集的简单介绍

上图是Objaverse和ShapeNet数据集关于车辆、床铺、花瓶和书包这四类的物体模型对比,可见ShapeNet的模型相比起来就非常简单,因为Objaverse的对象来自许多3D内容创建平台,而ShapeNet都来自SketchUp(一个为简单的建筑建模而构建的3D建模平台)。91%的情况下Objaverse训练的模型生成的物体在外观上更具多样化。上图是Objaverse的作者,分别基于Objaverse的Bag分类和ShapeNet的bag分类,训练了一个模型,生成的3D物体效果。

2024-06-23 12:02:08 2790

原创 OpenCL

如上图,the host is going to call the host API to manage devices on the right. Devices are programmed using OpenCL C. Underneath all of these are models. These models are here to guide everything.

2024-05-13 15:20:08 954

原创 make、makefile、cmake、nmake

GCC:即GNU Compiler Collection(GNU编译器套件),可简单认为是编译器。它可以编译很多种编程语言(如C、C++、Objective-C、Fortran、Java等)。当程序只有一个源文件时,直接就可以用gcc命令编译它。但是若程序包含多个源文件,用gcc命令逐个去编译显然很容易混乱且工作量大,所以就出现了下面的make工具make:可以看作一个智能的批处理工具,它本身并没有编译和链接的功能,而是用类似于批处理的方式,通过调用makefile文件中用户指定的命令来进行编译的链

2024-05-07 11:07:59 580

原创 用mac编译、用华为手机跑llama.cpp过程中遇到的问题

【代码】Mac跑llama.cpp过程中遇到的问题。

2024-05-06 15:59:47 1230

原创 安卓手机跑大模型

F-Droid是一个安卓平台上自由开源软件的目录,并提供下载安装支持。类似于Google Play。

2024-05-01 19:55:06 512

原创 程序的表示、转换与链接:三、运算电路基础

上面谈到高级语言程序中的各类运算,会被编译器转换为相应的运算指令,程序运行时,CPU执行这些指令,控制操作数在运算电路中被处理。由上可知,计算机中所有运算都是由相应的运算电路完成的,而这些运算电路是由基本的逻辑门电路实现的。如若实现从数据y中提取低位字节,并使高位字节为0的话,可用“&”实现:作“y&0x00FF”。该对什么样的操作数进行运算的呢?本节讲C语言程序中涉及的运算,如算术运算、按位运算、逻辑运算、移位运算等。本节主要介绍高级语言程序中的表达式、运算类指令和运算电路之间的关系。

2024-04-23 16:08:47 784

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除