NOT
Llama2-Chinese项目:8-TRL资料整理
TRL(Transformer Reinforcement Learning)是一个使用强化学习来训练Transformer语言模型和Stable Diffusion模型的Python类库工具集,听上去很抽象,但如果说主要是做SFT(Supervised Fine-tuning)、RM(Reward ......
CUDA C编程权威指南:1-基于CUDA的异构并行计算
什么是CUDA?CUDA(Compute Unified Device Architecture,统一计算设备架构)是NVIDIA(英伟达)提出的并行计算架构,结合了CPU和GPU的优点,主要用来处理密集型及并行计算。什么是异构计算?这里的异构主要指的是主机端的CPU和设备端的GPU,CPU更擅长逻 ......
CUDA C编程权威指南:1.1-CUDA基础知识点梳理
主要整理了N多年前(2013年)学习CUDA的时候开始总结的知识点,好长时间不写CUDA代码了,现在LLM推理需要重新学习CUDA编程,看来出来混迟早要还的。 1.CUDA 解析:2007年,NVIDIA推出CUDA(Compute Unified Device Architecture,统一计算设 ......
CUDA C编程权威指南:1.2-CUDA基础知识点梳理
主要整理了N多年前(2013年)学习CUDA的时候开始总结的知识点,好长时间不写CUDA代码了,现在LLM推理需要重新学习CUDA编程,看来出来混迟早要还的。 1.闭扫描和开扫描 对于一个二元运算符和一个元输入数组。如果返回输出数组为,那么是闭扫描;如果返回输出数组为,那么是开扫描。串行闭扫描算法, ......
CUDA C编程权威指南:1.3-CUDA基础知识点梳理
主要整理了N多年前(2013年)学习CUDA的时候开始总结的知识点,好长时间不写CUDA代码了,现在LLM推理需要重新学习CUDA编程,看来出来混迟早要还的。 1.CUDA数组 解析:CUDA数组是使用cudaMallocArray()、cudaMalloc3DArray()分配的,使用cudaFr ......
Boost程序库完全开发指南:1-开发环境和构建工具
Boost官方于2019年12月发布的1.72版编写,共包含160余个库/组件,涵盖字符串与文本处理、容器、迭代器、算法、图像处理、模板元编程、并发编程等多个领域,使用Boost,将大大增强C++的功能和表现力。环境:Windows 10,WSL2,Ubuntu 20.04 LTS,Rider(WS ......
Boost程序库完全开发指南:1.2-C++基础知识点梳理
主要整理了N多年前(2010年)学习C++的时候开始总结的知识点,好长时间不写C++代码了,现在LLM量化和推理需要重新学习C++编程,看来出来混迟早要还的。 1.const_cast <new_type> (expression)[1] 解析:const_cast转换符用来移除变量的const或v ......
计算机系统与编译原理简介——从底层到顶层
计算机的分层 首先让我们大体了解一下计算机与各种编程语言的关系 在这张图中,驱动程序与机器码程序直接控制着硬件的运行;除此以外,上层程序与编程语言统统由下级编程语言实现 接下来,我将从硬件层开始逐级向上讲解 硬件层 即计算机系统中的一切物理实体层级,他们使用高低电平和逻辑电路进行数据交换与计算,对应 ......
Llama2-Chinese项目:4-量化模型
一.量化模型调用方式 下面是一个调用FlagAlpha/Llama2-Chinese-13b-Chat[1]的4bit压缩版本FlagAlpha/Llama2-Chinese-13b-Chat-4bit[2]的例子: from transformers import AutoTokenizerfro ......
Llama2-Chinese项目:5-推理加速
随着大模型参数规模的不断增长,在有限的算力资源下,提升模型的推理速度逐渐变为一个重要的研究方向。常用的推理加速框架包含lmdeploy、FasterTransformer和vLLM等。 一.lmdeploy推理部署 lmdeploy由上海人工智能实验室开发,推理使用C++/CUDA,对外提供pyth ......
Llama2-Chinese项目:6-模型评测
测试问题筛选自AtomBulb[1],共95个测试问题,包含:通用知识、语言理解、创作能力、逻辑推理、代码编程、工作技能、使用工具、人格特征八个大的类别。 1.测试中的Prompt 例如对于问题"列出5种可以改善睡眠质量的方法",如下所示: [INST] <<SYS>>You are a helpf ......
2023“钉耙编程”中国大学生算法设计超级联赛(3)
题解: https://files.cnblogs.com/files/clrs97/2023HDU%E7%AC%AC%E4%B8%89%E5%9C%BA%E9%A2%98%E8%A7%A3.pdf Code: A. Magma Cave #include<iostream> #include<al ......
摄影-230924
 ListList代表了有序可重复集合,可直接根据元素的索引来访问2)SetSet代表无序不可重复集合,只能根据元素本身来访问3)QueueQueue是队列集合M ......
HashMap底层实现原理
一、HashMap底层实现原理解析 我们常见的有数据结构有三种结构: 数组结构 链表结构 哈希表结构下面我们来看看各自的数据结构的特点:1)数组结构: 存储区间连续、内存占用严重、空间复杂度大优点:随机读取和修改效率高,原因是数组是连续的(随机访问性强,查找速度快)缺点:插入和删除数据效率低,因插入 ......
实验1
实验1.1 实验1.1源代码 #include<stdio.h> #include<stdlib.h> int main() { printf(" O O \n"); printf("<H> <H>\n"); printf("I I I I\n"); system("pause"); return ......
【转】weibo/陶马文
很早的时候传闻过Intel要买Xilinx,但后来没达成一致,再后来AMD买了Xilinx,再后来Intel买了宿敌Altera。在随后的近10年里,只听说过GPU有了大发展,靠着神经网络和挖矿在商业上得到广泛应用,但是FPGA几乎是默默无闻,没听说和一种能够按尺度扩展的业务完全排他地绑定在一起。结 ......
20231005打卡
上午的学习时间,我专心致志地学习Javaweb课程。我们正在深入学习数据库,这是我们软件工程师必备的重要技能之一。我详细学习了数据库的概念、SQL语句的使用,以及数据库设计等知识。我努力完成了视频布置的练习,并将学习笔记整理好,以便日后复习。 下午,我给自己留了一段时间放松和娱乐。作为一名游戏爱好者 ......
The 2023 ICPC Asia Hong Kong Regional Programming Contest (The 1st Universal Cup, Stage 2:Hong Kong)
题解: https://files.cnblogs.com/files/clrs97/2022Hong_Kong_Tutorial.pdf Code: A. TreeScript #include <bits/stdc++.h> using namespace std; using LL = lon ......
JavaScript变量 数据类型、运算符、流程控制语句
//所有类型的声明用var 1.作用域较大,属于全局变量 2.可以重复定义 //let可以用来定义局部变量,不能重复定义 //const可以用来声明常量 原始类型: number string boolean null--object undefined 使用(typeof ___)可以用来获取数据 ......
STM32之SPI通信
SPI通信 学习资料: 江科大-STM32入门教程 SPI简介 SPI(Serial Peripheral Interface)是由Motorola公司开发的一种通用数据总线,SPI本质是移位寄存器 spi有很多种类: 两线,只有时钟线,数据线双向复用 三线,含使能脚,时钟脚,双向数据脚 四线,SC ......
QT编程解决Error: no such instruction: `swpb %cl,%dl,[%edi]'
原文:https://blog.csdn.net/memory_exception/article/details/50886337 可能是arm 交叉环境有问题,如果配置好了一般reconfigure下就ok. 如果总是有问题,可以修改qatomic_arm.h,将汇编用c code写可以避过这个 ......
The 2022 ICPC Asia Hangzhou Regional Programming Contest
题解: https://files.cnblogs.com/files/clrs97/2022ICPCHangzhouTutorial.pdf Code: A. Modulo Ruins the Legend #include<bits/stdc++.h> using namespace std; ......
[String]字符串转换整数(atoi)
字符串转换整数(atoi) 这道题目是一道常规的字符串题目,将一个整数转化为字符串,但是边界条件比较多,需要考虑全面 1、考虑空格位 2、考虑符号 +/-位 3、考虑前导0 4、考虑INT边界值 符号位必须紧挨着数字才是有效数字,无论+/-或者没有 #include <stdio.h> #inclu ......
linux 内核 --- 中断子系统
ARM芯片有硬件中断号,比如0~15是SGI中断 linux内核规定了软件中断号及软件中断号的功能;不直接使用ARM芯片的硬件中断号是因为linux内核是适配多架构操作系统,比如有些芯片硬件中断号20是GPIO中断,有些芯片是25;linux统一规定了某个中断号对应GPIO中断。这样就存在硬件中断号 ......
Android Studio的常用设置,一个好的设置能让使用更得心应手
使用Android Studio 创建第一个项目 第一步:1、点击Project,2、点击New Project(也可以打开一个项目或者在线拉取一个项目)这里我们就新建一个项目 第二步:1、选择开发类型:Phone and Tablet(手机应用),2、选择模板:Empty Views Activi ......
Density-invariant Features for Distant Point Cloud Registration论文阅读
Density-invariant Features for Distant Point Cloud Registration 2023 ICCV *Quan Liu, Hongzi Zhu, Yunsong Zhou, Hongyang Li, Shan Chang, Minyi Guo*; Pr ......