- 博客(63)
- 收藏
- 关注
原创 cuda ncu section 含义解释
示例 Metrics:类似 l1tex__t_bytes_pipe_lsu_mem_global_op_ld(全局内存加载字节数)。示例 Metrics:l1tex__t_sectors_pipe_lsu_mem_global_op_ld(全局内存加载扇区)。示例 Metrics:sm__inst_executed(指令数)、flop_sp_efficiency(单精度浮点效率)。示例 Metrics:sm__sass_inst_executed_op_fadd(浮点加法指令数)。
2025-05-27 14:52:12
283
原创 系统性能分析基本概念(6) : 如何识别水货?
判断一个人在系统性能分析、哈希函数特性或相关技术领域是否为内行(专家)或外行(非专业人士),需要从多个维度评估其知识、技能和行为。
2025-05-23 00:33:37
403
原创 系统性能分析基本概念(5) : 何时开始性能分析
决定何时开始系统性能优化(Performance Optimization)需要根据系统状态、业务需求和资源可用性来判断。
2025-05-22 23:37:36
457
原创 系统性能分析基本概念(4) : 何时停止性能分析
决定何时停止系统性能分析是一个需要权衡多方面因素的实际问题,通常取决于分析目标、资源限制和收益递减点。
2025-05-22 23:31:15
343
原创 系统性能分析基本概念(3) : Tuning Efforts
系统性能调优(Tuning Efforts)是指通过优化硬件、软件或系统配置来提升性能,减少延迟、提高吞吐量或优化资源利用率。
2025-05-22 23:00:32
512
原创 系统性能分析基本概念(1):各类时钟源对比
在 Linux 系统中,时钟源(Clock Sources)是内核提供的不同时间基准,用于记录时间戳或测量时间间隔。它们在性能分析、事件跟踪(如 Perfetto)、系统调试和芯片开发中至关重要,尤其在涉及时间同步或精确计时的场景。以下是对你列出的每种时钟源的详细解释,包括定义、用途、特性以及与芯片编程工具链(如 Perfetto)的关联。
2025-05-21 14:30:30
596
原创 优化跟踪cuMalloc 与cuFree
在Nsight Compute中查看内核执行时,结合Nsight Systems的时间线,定位特定内存区域的使用情况。)是优化性能和排查内存问题的关键需求。以下是NVIDIA提供的工具和方法,帮助开发者实现这一目标。:结合Nsight Systems,深入分析内核内存访问模式与分配行为的关联。:捕获所有CUDA内存操作的时间线和详细信息,包括分配、释放、拷贝等。在CUDA应用程序中,跟踪内存分配和释放操作(如。:需在生产环境中轻量级监控内存使用。(显示泄漏的内存大小和分配调用栈)
2025-05-05 11:59:52
778
原创 「一针见血能力」的终极训练手册
和顶尖的高手接触以后,发现他们在表达沟通上面的能力真的太强了,仿佛有种一阵见血看问题的能力,这种拨开浓雾看本质的能力是嘈杂世界防止上当受骗的不二法门. 网上找了一些训练方法,可以试试训练锐化思维,提高表达.——如同顶级风投在5分钟内看穿商业计划书漏洞,或急诊医生通过3个症状锁定病因。,让大脑被迫进化出信息过滤机制。开始你的第一次「暴力删减」训练吧!:在投资人质疑中,用3个数据扭转谈判局势。:30秒内说清「元宇宙」的本质价值。:用1张A4纸图解公司年度战略漏洞。坚持执行60天,你将获得。
2025-05-04 18:59:23
820
原创 NVIDIA显卡演进历程及其关键参数对比
如需进一步了解具体型号的详细参数,可参考NVIDIA官方资料或上述来源网页。:引入统一着色器架构与CUDA,开启GPU通用计算时代。:光线追踪与AI技术的深度融合,推动游戏与计算性能飞跃。:聚焦图形渲染性能提升,逐步引入硬件加速功能。:AI驱动渲染革命,显存与能效大幅升级。
2025-05-04 11:51:06
722
原创 如何快速获取GPU参数,并解读其性能?
GPU 调度线程的基本单位,32 线程为一个 warp,影响内核代码优化(如避免分支发散)。ECC(纠错码)功能关闭,可能为追求更高显存带宽或用户未启用(专业场景建议启用 ECC)。每个线程块可用的共享内存,用于加速线程间通信(如卷积操作中的局部数据复用)。(或 GDDR6X),适合大型数据集(如训练大模型、渲染高分辨率图像)。,允许同时进行数据拷贝和内核计算,提升流水线效率(如训练中的数据预取)。线程块的维度上限,支持灵活的任务划分(如 3D 网格计算)。的专业级显卡,面向工作站、AI 加速和科学计算。
2025-05-04 10:33:44
579
原创 【GPU 微架构技术】Pending Request Table(PRT)技术详解
与传统的 MSHR(Miss Status Handling Registers)不同,PRT 的设计更适应 GPU 的。MSHR 在未合并访问(如随机内存访问)时,需要为每个未合并请求分配独立条目,容易导致资源耗尽。(32 个线程以 SIMD 方式并行执行),通过合并一个 warp 内所有线程的内存请求,减少对硬件资源的占用。PRT 通过合并 warp 级请求,减少了对细粒度资源(如每个线程的请求跟踪)的需求,降低了硬件复杂度。(如加载或存储)分配一个独立的条目,而非为每个内存请求分配资源。
2025-04-29 20:49:26
920
原创 Cuda Instruction Replay
指令重放是GPU处理执行依赖性、内存延迟或分支分歧时的机制,可能导致性能损失。开发者需通过优化代码结构、内存访问模式及同步策略来减少其发生,从而提升CUDA内核效率。
2025-04-28 09:30:05
301
原创 如何判断对一件事的认知深度?
在大模型时代,知识获取的门槛被大幅降低,但真正的竞争力源于对问题的深层理解。判断认知深度并非单纯考察知识量,而是评估思维的结构化程度、迁移能力与批判性。真正的深度思考者,能在AI生成的答案海洋中,精准识别价值锚点,在复杂系统中架设因果之桥。这种能力,恰恰是机器难以替代的人类智慧护城河。在技术快速迭代的今天,认知深度不再是静态的知识储备,而是。
2025-04-27 10:32:47
462
原创 Cuda-GDB Frame Unwind 管理(未完.)
是指函数调用栈的逆向操作,即在函数返回或异常发生时,系统逐层释放栈帧(Stack Frame)、恢复调用上下文的过程。以下是详细解释及其在。
2025-04-25 10:22:57
874
原创 Convenience Variable in GDB
是一种用户自定义的临时变量,用于在调试过程中存储和操作数据。它们与程序中的变量无关,纯粹是调试器内部使用的工具,旨在简化调试操作、记录中间结果或控制调试流程。通过合理使用 Convenience Variable,你可以显著提升调试效率,将复杂操作自动化,并更灵活地控制调试过程。GDB 不提供直接删除命令,但可通过赋值为。
2025-04-24 17:36:35
298
原创 DeepSeek 教我 C++ (9) :std::byte使用场景
使用std::byte的核心目的是明确表达原始二进制数据的语义,同时通过类型系统避免误操作。在需要处理底层内存、二进制流或类型安全的字节操作时,它是更现代、更安全的选择。
2025-04-15 09:58:14
802
原创 Build a Debugger (2) : software / hardware breakpoints 区别
软断点与硬件断点的主要区别体现在实现方式、功能支持及适用场景等方面。理解两者的区别有助于在复杂场景(如逆向工程、驱动调试)中灵活选择工具,提升调试效率。
2025-04-14 15:40:51
340
原创 Build a Debugger (1) : ptrace
系统调用是一个强大的工具,允许一个进程(跟踪者)监视和控制另一个进程(被跟踪者)的执行。它广泛应用于调试器、动态分析工具和沙盒环境。,开发者可以实现调试器、动态二进制插桩等高级工具,但其复杂性要求深入理解进程控制和信号处理机制。
2025-04-14 13:55:11
675
原创 DeepSeek 教我LLVM(2) : MCTargetDesc 核心模块有哪些?
在 LLVM 中,MCTargetDesc(Machine Code Target Description)是描述目标架构机器代码生成的核心模块,其核心组件可分为以下几类:MCInstrInfoMCRegisterInfoMCSubtargetInfoMCCodeEmitterMCDisassemblerMCAsmBackendMCAsmInfoMCObjectFileInfoMCInstPrinterMCSymbol 与 MCContext代码生成反汇编MCTargetDesc 的核心模块围绕以下目标展开
2025-04-11 16:10:07
269
原创 DeepSeek 教我 LLVM (1):汇编器中的Fixup 概念是什么?
它通过记录需要修正的位置和类型,支持跨模块符号引用、动态地址计算和指令优化(如分支松弛),最终通过重定位确保生成正确的可执行代码。理解 Fixup 是掌握 LLVM 汇编器和目标文件生成原理的关键。当生成机器代码时,某些指令的操作数(如跳转目标地址、数据符号的偏移量等)可能在汇编阶段无法确定(例如,符号可能位于其他模块或需要链接时才能确定)。,标记这些需要后续修正的位置,并在最终生成目标文件时完成地址计算或重定位。在 LLVM 的 MC(Machine Code)层中,(修复项)是用于处理。
2025-04-11 15:55:51
943
原创 如何在幽默的团队氛围中生存?
除了假装咳嗽之外,也可以假装系鞋带,如果自己穿的是运动鞋,那简直是天助你也,在蹲下来的时候,注意管理好自己的表情,不然人家会认为你对着鞋带傻笑。在有些场合,露出笑容,可能是一件非常不礼貌的行为,此时可以稍微低下头,不让对方看到自己的表情,同时自己注意自己的面部管理,好好调整一下。实在憋不住了,也可以假装咳嗽,可以捂嘴咳嗽,但是在咳嗽的时候,也会吸引大家的注意力,此时大家就要注意咳嗽完后,表情要处理好。除了掐手之外,也可以咬自己的嘴唇,但是注意不要太用力了,要是出现伤口,也是会影响自己的外观形象的。
2025-04-10 16:40:25
126
原创 职场小技巧(2):非暴力沟通的方法
对待正常人,就尽力使用正常人的沟通方法,非暴力沟通(Nonviolent Communication, NVC)是一种通过同理心、诚实表达和倾听来化解冲突的沟通方法,由心理学家马歇尔·卢森堡提出。非暴力沟通不是“忍让”,而是通过诚实和同理心建立深层连接。初期练习可能生硬,但熟练后会发现,大多数冲突都源于未被听见的“求救信号”。当对方用指责或抱怨表达时,尝试。
2025-04-07 09:09:35
388
原创 DeepSeek 教我 C++ (8) :C++ 静态类型不安全的情况
C++ Core Guide P.4 Guide 我们要保证C++ 程序的类型静态安全性,我请教了一下DeepSeek大佬.
2025-04-06 16:15:34
993
原创 DeepSeek 教我 C++ (7) :常见的一些未定义UB
在ISO C++标准中,未定义行为(Undefined Behavior, UB)可能导致程序行为不可预测,且这类问题往往难以调试。
2025-04-06 15:37:35
793
原创 CUDA 技术(1) Host Interception
它通过拦截应用程序的底层系统调用、API调用和线程活动,收集详细的执行信息,以便将CPU与GPU活动关联分析。Host Interception 是Nsight Systems实现细粒度性能分析的基础,通过精准控制拦截范围和模式,开发者可以高效定位CPU-GPU协作瓶颈。A:Nsight Systems 默认仅拦截常见高性能计算相关API,需通过插件或自定义配置扩展拦截范围。A:通常无功能影响,但可能因拦截逻辑轻微改变执行时序(对多数性能分析可忽略)。
2025-04-06 15:05:28
915
原创 CUDA && GPU 学习资源
Discord Channel: https://discord.com/invite/gpumodeYouTube Channel: https://www.youtube.com/@GPUMODEGitHub Repository: https://github.com/gpu-mode/lectures/tree/main/Textbook: https://www.amazon.com/Programming-Massively-Parallel-Processors-Hands/dp/0
2025-04-06 09:33:46
210
原创 DeepSeek 教我 C++ (6) : C++17 filesystem 的技巧
C++ 是个人最常用的编程语言,以前学生时代好多笔记都丢失了,想用DeepSeek帮忙快速整理一些编程细节,看看有没有没看到过的解释.,可以轻松实现跨平台(Windows/Linux/macOS)的文件系统操作!提问:整理一下C++ 17 filesystem 常用方法。
2025-04-03 14:26:58
1512
原创 计算机体系结构的性能瓶颈100例
性能瓶颈贯穿计算机系统的各个层级,需通过硬件设计优化(如增加缓存容量)、软件算法改进(如减少分支)、系统调优(如NUMA绑定)等手段缓解。实际场景中需结合性能分析工具(如perf、VTune)定位具体瓶颈。
2025-03-28 17:43:52
770
原创 DeepSeek 教我 C++ (5) : C++ 位操作的技巧
C++ 是个人最常用的编程语言,以前学生时代好多笔记都丢失了,想用DeepSeek帮忙快速整理一些编程细节,看看有没有没看到过的解释.
2025-02-16 14:45:43
470
原创 DeepSeek 教我 C++ (4) : 对象参数传递应该注意的小细节
C++ 是个人最常用的编程语言,以前学生时代好多笔记都丢失了,想用DeepSeek帮忙快速整理一些编程细节,看看有没有没看到过的解释.
2025-02-16 14:13:15
314
原创 DeepSeek 教我 C++ (3) : Optional / Variant 使用的应该注意的细节
C++ 是个人最常用的编程语言,以前学生时代好多笔记都丢失了,想用DeepSeek帮忙快速整理一些编程细节,看看有没有没看到过的解释.
2025-02-16 13:25:01
460
原创 DeepSeek 教我 C++ (2) : String 使用应该注意的小细节
C++ 是个人最常用的编程语言,以前学生时代好多笔记都丢失了,想用DeepSeek帮忙快速整理一些编程细节,看看有没有没看到过的解释.
2025-02-16 12:52:43
177
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人