面向对象编程(OOP)实战论
前言 本文将通过一个实际的案例,通过需求分析、代码编写、OOP 优化的方式来阐述 OOP 在软件开发中的实际用处 本文案例将使用 C 语言进行编写,以此表明 OOP 是一种泛用的编程思想,并不是只能应用在 C++/python 之类的面向对象语言上。Linux 内核就用到了大量的面向对象的思想,但它是完全使用 C 语言编写的 本文编写时尽可能考虑到了无面向对象基础的读者,但推荐无基础读...
前言 本文将通过一个实际的案例,通过需求分析、代码编写、OOP 优化的方式来阐述 OOP 在软件开发中的实际用处 本文案例将使用 C 语言进行编写,以此表明 OOP 是一种泛用的编程思想,并不是只能应用在 C++/python 之类的面向对象语言上。Linux 内核就用到了大量的面向对象的思想,但它是完全使用 C 语言编写的 本文编写时尽可能考虑到了无面向对象基础的读者,但推荐无基础读...
特点 DeepSeek R1 的两个关键贡献: Post-Training: Large-Scale Reinforcement Learning on the Base Model(改进的 Post-Training 方式) Distillation: Smaller Models Can Be Powerful Too(小模型同样可以做到很优秀) 学习方式概述 ...
自己写了一个能自动构造的 union,结果发现和标准库的 variant 重复了,正好研究下 示例 template <typename... Types> class StaticUnion { private: // 定义一个union用于分配空间 template <typename T, typename... Rest> unio...
简介 传统上,绝大多数软件应用程序都是作为顺序程序编写的,也就是冯·诺伊曼架构。这些程序的执行可以被人理解为根据程序计数器的概念,按顺序逐步浏览代码。程序计数器包含处理器将要执行的下一条指令的内存地址。 与之相对的就是并行程序,其中多个执行线程合作以更快地完成工作。 异构并行计算 CPU 的设计优化是为了顺序代码性能: 算术单元(ALU)和操作数传递逻辑的设计旨在最小化算术操...
🧾 问题场景 输入数组(即一维 Tensor) A: A = [100, 99, 98, ..., 1](长度 N = 100) 我们希望 把所有元素乘 2 我们设定:BLOCK_SIZE = 32(每个线程处理 32 个元素) 🧠 核心代码 import torch import triton import triton.language as tl @triton...
问题 当编译器在链接报 undefined symbol 时,大部分情况下都会给出函数的调用链,但有些情况下不会给出相关信息,所以需要手动查找 假设有如下代码: #include <variant> int main() { std::variant<int,double> v = 1.1; auto i = std::get<int>...
rclone 下载 从 https://github.com/rclone/rclone/releases 下载对应的文件,只有命令行工具,没有 gui,包含了 server 和 client。 rclone webdav server 如果服务器没有提供 webdav,可以使用 rclone 自带的 webdav 服务,通过 docker 或使用 rclone cli 即可运行,这里...
简介 LoRA(Low-Rank Adaptation of LLMs),即 LLMs 的低秩适应,是参数高效微调最常用的方式之一。属于 PEFT(Parameter-Efficient Fine-Tuning) 的一种方式。 LoRA 的本质就是用更少的训练参数来近似 LLM 全参数微调所得的增量参数,从而减少内存的占用。 原理 对 LLM 做微调的结果可以简要地表示为: \[\...
环境搭建 wsl + torch 详见 使用 WSL2 + WSLg 在 Windows 上跑带图形界面的 AI 应用 LLaMA-Factory 参考本文进行安装 git clone --depth 1 https://github.com/hiyouga/LLaMA-Factory.git cd LLaMA-Factory pip install -e ".[torch,met...
环境搭建 注意:ROCm 6.4.1 更新后,已经完美支持 wsl 下的 ComfyUI,可跳过本节,可以参考: Install Radeon software for WSL with ROCm Install PyTorch for ROCm 主要依赖于该项目:https://github.com/patientx/ComfyUI-Zluda ...