自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

喜欢打篮球的普通人

https://gitee.com/jiwangreal,https://github.com/Jiwangreal

  • 博客(1537)
  • 资源 (68)
  • 收藏
  • 关注

原创 C/C++学习总结

文章目录Markdown常用语法一、面试二、编程语言1.C/C++(1)C和C++进阶的学习笔记总结目录(2)Linux系统编程(3)C语言开源项目(4)C++开源项目(5)Linux运维2.java3.python4.数据结构与算法三、分布式四、Docker,OpenStack五、Github和开源项目学习六、个人简历七、关于测试八、镜像地址或网站九、自勉之语Markdown常用语法 (1)CSDN Markdown空行:  (2)分割线:用三个以上的星号、减号、底线来建立一个分

2020-08-16 20:14:00 2456 1

原创 自编教材实操课程学习笔记

在进行语义分析后可以检查源代码有无语义错误。词法分析是对构成程序的源代码从左到右将字符逐个读入编译器,并扫描和分解字符流,从而识别出一个个单词,并确定单词的类型,将识别出的单词转换为统一的语法单元形式。在代码生成阶段可以通过编译阶段选项指定不同的处理阶段,通过数据选项选择对数据的处理方式,通过对目标平台选项生成指定平台的代码,通过后端生成选项打开不同后端支持的优化功能。语义分析阶段的任务是审查源代码有无语义错误,源代码中有些语法成分,按照语法规则去判断是正确的,但不符合语义规则,比如使用了没有声明的变量。

2025-08-09 17:01:06 692

原创 LLVM编译器入门

Clang中语法分析器会从之前的分析中提取要使用的标记信息,确定它的语法元素后会被推送到语义分析Sema,并为它创建AST节点,建立一颗与(词法分析出的)输入单词流对应的正确语法树。Clang 项目为LLVM项目提供C 语言系列语言C、C++、Objective C/C++、OpenCL、CUDA 和RenderScript)的语言前端和工具基础设施。Clangdriver(命令行表示是clang)和Clang前端(依照详细实现来说就是Clang的那些库所实现的前端)是不同的。

2025-08-09 15:54:02 540

原创 Cursor中修改插件活动篮位置

还原成原来的vscode样式。

2025-07-22 15:38:12 207

原创 gitlab+jenkins

修改里面的pipline 脚本中的credential id。打开jenkins,修改pipeline脚本。打开gitlab,配置webhook。gitlab手动触发jenkins。用户:admin,对应的密码如下。点击安装自定义推荐的插件。配置pipline脚本。进入到已经创建的任务中。安装gitlab插件。gitlab修改触发。

2025-07-19 16:10:24 433

原创 LLVM LIT测试框架

与**//check后面的字符串**是否匹配,匹配方式是前缀匹配。LIT是一个测试基础设施,最初是为LLVM的回归测试而开发的。FILECHECK2做的事情比较。现在可以用在LLVM之外。

2025-07-04 15:49:52 533

原创 LLVM IR使用工具总结

手动安装即可实现LLVM IR跳转。

2025-07-03 15:37:52 159

原创 【C++】transform, reduce, scan是什么意思?理解常用并行算法及其实现原理(TBB开启并行编程之旅)

区别在于,一个任务不一定对应一个线程,如果任务数量超过CPU最大的线程数,会由 TBB 在用户层负责调度任务运行在多个预先分配好的线程,而不是由操作系统负责调度线程运行在多个物理核心。类似加法分配律的思想,1+2+3+4,方法:((1+2)+3)+4或者(1+2)+(3+4)。结论:并行缩并的时间复杂度为 O(n/c+c),工作复杂度为 O(n),其中 n 是元素个数。结论:并行映射的时间复杂度为 O(n/c),工作复杂度为 O(n),其中 c 是线程数量。4个线程,每人处理2个元素的映射,花了2秒。

2025-06-28 18:12:54 665

原创 【公开课】编译器优化与SIMD指令集

如果要用AOS,可以将结构体进行对齐,16字节是SIMD宽度,64字节是缓存行宽度。

2025-06-28 11:49:30 245

原创 CUDA开启的GPU编程

_global__ 用于定义核函数,他在 GPU 上执行,从 CPU 端通过三重尖括号语法调用,可以有参数,不可以有返回值。\ __device__ 则用于定义设备函数,他在 GPU 上执行,但是从 GPU 上调用的,而且不需要三重尖括号,和普通函数用起来一样,可以有参数,有返回值。即:host 可以调用 global;global 可以调用 device;device 可以调用 device。__device__ 将函数定义在 GPU 上,而 __host__ 则相反,将函数定义在 CPU 上。

2025-06-25 15:52:01 681

原创 Fortran实用工具总结

安装GDBDebugger-Beyond。(2)使用vscode。(1)直接使用gdb。

2025-06-25 13:24:19 366

原创 Fortran90编程快速入门

Fortran编程快速入门。

2025-06-20 10:17:18 952

原创 Flang:LLVM Fortran 前端简介

高性能计算(HPC)中的流行语言大量遗留代码用途天气预报(WRF、UM)、数值模拟/建模库:LAPACK、BLASFortran程序员通常期望,过去成功编译过的代码将继续无限期地编译并正常运行。

2025-06-19 21:07:33 708

原创 C/Fortran多核并行计算

新的0penMP标准(目前是5.2)支持GPU设备(显卡或专业计算卡)加速,但现有的OMP库对该功能支持有限(intel oneAPl套件支持intel的显卡),因此Devices相关的指令不做介绍。OMP的线程数可为任意正整数(实际受限,可由omp_get_thread_limit函数查询),但线程数不宜超过CPU物理核心数(CPU的超线程对计算密集型任务无益),| 初始值 | 0 | 0 | 1 | 所有位均为1 | 所有位均为0 | 所有位均为0 | 1 | 所有位均为0 |

2025-06-18 18:18:37 910

原创 OpenMP并行编程

指令级并行–CPU流水线分布式并行–MPI共享存储式并行·-OpenMPOpenCLOpenAcc。

2025-06-18 15:29:15 218

原创 LLVM后端代码生成

编译器工作流程为在高级语言 C/C++ 编译过程中,源代码经历了多个重要阶段,从词法分析到生成目标代码。整个过程涉及前端和后端的多个步骤,并通过中间表示(IR)在不同阶段对代码进行转换、优化和分析。通过上述图像分别展示了 LLVM 的各个流程,和代码在不同流程下的状态,最后我们再回顾一下各个阶段所代表的功能和内容。前端阶段词法分析(Lexical Analysis):源代码被分解为词法单元,如标识符、关键字和常量。

2025-06-17 15:37:19 965

原创 LLVM前端和优化层

以clang为例,通过 Clang 的三个关键步骤:词法分析、语法分析和语义分析,源代码被逐步转化为高效的中间表示形式,为进一步的优化和目标代码生成做准备。

2025-06-17 13:26:23 931

原创 LLVM IR中间表达详解

每个三地址码指令,都可以被分解为一个四元组(4-tuple)的形式:(运算符,操作数1,操作数2,结果),LLVM IR 中,每个变量都在使用前都必须先定义,且每个变量只能被赋值一次。SSA静态单赋值含义:当程序中的每个变量都有且只有一个赋值语句时,称一个程序是SSA 形式的。每个值只有单一赋值定义了它。每次使用一个值,可以立刻向后追溯到给出其定义的唯一的指令。,也就是一个值到达使用之处的定义的列表。

2025-06-17 09:48:18 773

原创 LLVM设计架构

LLVM 把编译器移植到新语言只需要实现编译前端,复用已有的优化和后端;LLVM 实现不同组件隔离为单独程序库,易于在整个编译流水线中集成转换和优化 Pass;LLVM 作为实现各种静态和运行时编译语言的通用基础结构。

2025-06-16 17:45:55 1014

原创 GCC编译过程

在预处理阶段,编译器会保留以 #pragma 开头的预处理指令,如 #pragma once、#pragma pack 等,这些指令可以用来指导编译器进行特定的处理,如控制编译器的行为或优化代码。GCC 编译过程的四个阶段与传统的三段式划分的前端、优化、后端三个阶段有一定的重合和对应关系,但 GCC 更为详细和全面地划分了编译过程,使得每个阶段的功能更加明确和独立。在预处理阶段,编译器会将源文件中包含的头文件内容插入到源文件中对应的位置,以便在编译时能够访问头文件中定义的函数、变量、宏等内容。

2025-06-16 15:46:06 856

原创 开源编译器介绍

编译技术是计算机科学皇冠上的一颗明珠,作为基础软件中的核心技术编译器能够识别高级语言程序代码中的词汇、句子以及各种特定的格式和数据结构编译过程,是将源代码程序转换成机器能够识别的二进制码传统编译器通常分为三个部分,前端(frontEnd),优化器(Optimizer)和后端(backEnd)

2025-06-16 15:06:08 971

原创 编译器基础概念

程序主要有两种运行方式:选 JIT 当:选 AOT 当:

2025-06-13 18:03:22 971

原创 开源大模型使用总结

2.推荐使用的大模型:gemini-2.0-flash-hinking-exp以及gemini-2.0-pro-exp。3.使用cherry studio调用,添加API以及添加模型。(3)打开cherry-studio,将API密钥copy过来。(2)在cherry-studio中设置密钥以及模型。添加模型id到cherry-studio。4.可以在cursor的设置如下。2.在cursor中配置API。在cursor中增加模型。1.创建API key。选择免费的bge-m3。(1)创建API密钥。

2025-03-25 22:27:04 571

原创 AI agent(MCP)尝鲜小结

如果你要调用采集工具,那就接个 Pupprteer MCP Servers。它在能力上类似Manus,但形式上则是采用自由画布+工作流进行呈现的。如果你要实现文生图能力,那就接一个Magic MCP Servers。cherry studio已经支持MCP!AI agent功能位置。

2025-03-25 07:50:09 1780

原创 Cursor从小白到专家

在使用 Accept All 时需谨慎:虽然 Accept All 可以快速应用所有建议,但在应用之前最好仔细检查 Cursor 提供的建议是否符合你的需求,避免引入不必要的错误。composer模式下,cursor不仅会进行长篇代码的编写,更改还会帮你把生成的代码直接弄到文件里,不用我们手动复制粘贴。chat模式下,cursor会根据我们的开发需求给出相应的代码,但是需要我们手动创建相关的文件并把代码复制进去。接着就是根据cursor的提示,以及你自己的需求一步步完善这个插件的代码。

2025-03-22 23:44:28 1470

原创 Cursor的五种高级用法

只需使用 Composer(Ctrl+I),描述你想要实现的功能,Cursor 就能生成相应的代码。你可以让它生成大纲,然后根据大纲写出完整文稿。让 AI 为代码添加注释,或者直接告诉它你想要的改动。无论是数据清洗、格式转换,还是生成测试数据,都可以通过简单的自然语言指令完成,无需编写复杂的代码。只需导入相关文档,让 AI 理解平台的功能和节点,然后让它设计一个工作流并生成配置文件。eg:微调,把hugging face上的数据集修改成标准格式的数据集。打开dify,通过导入的方式打开工作流。

2025-03-22 22:31:29 2646

原创 Cursor基本使用教程

智能代码补全:Cursor 能预测下一个编辑操作,帮助快速完成代码。自然语言编辑:可以使用自然语言指令来编写或修改代码,简化开发过程。代码库理解:Cursor 能够理解整个代码库,提供相关建议和答案。隐私与安全:提供隐私模式,确保代码仅存储在本地,并已通过 SOC 2 认证。兼容性:支持导入个人喜爱的扩展、主题和快捷键,提供熟悉的开发环境。

2025-03-22 15:25:07 3236

原创 gitlab自动code review

前文中的自动化评审机器人封装在 docker 镜像中,其角色声明为资深编程专家,以精炼、严厉的语气给出审查建议。如果想让机器人“注入感情”,可以自定义角色声明,例如定义一个傲娇少女来评审。创建 ai_code_review.py 文件,编写代码实现自动化评审功能,核心函数包括:(1)ai_code_review:调用 openai.ChatCompletion.create() 方法基于预设 prompt 角色发起对话,得到评审结果。

2025-03-22 15:22:59 749

原创 AI创业指南

发现需求->AI产品设计->制作MVP->验证MVP->商业模式验证->迭代优化。找到一个问题,洞察到一个别人根本没注意到的需求,这是最重要的一步。AI会帮你分析用户需求、市场竞争情况,甚至告诉你是否值得尝试。将AI当作产品经理和市场调研员,帮你完善想法并做初步判断。利用社交平台的精准流量分发机制,找到你的目标用户。根据用户反馈不断改进产品,提高获客效率和变现效率。让AI帮你创建最小可行产品,快速验证你的想法。找到1000个目标用户,验证产品是否满足需求。关注产品的点击率、留存率等关键指标。

2025-03-22 13:25:01 1340

原创 【AI】AI编程助手:Cursor、Codeium、GitHub Copilot、Roo Cline、Tabnine

代码生成 - 定义代码风格,如私有变量前缀规则测试生成 - 指定测试框架等测试相关要求代码审查 - 设置代码审查重点提交信息生成 - 规范提交信息格式官网文档讲解很详细,有需要可以直接看官网:https://code.visualstudio.com/docs/copilot/copilot-customization自定义模式让你能够调整 Roo Code 的角色、指令和权限:1)内置模式Code – 默认的多用途编码助手Architect – 提供高级系统架构和设计见解。

2025-03-20 23:51:18 3138

原创 Linux 检测内存泄漏方法总结

gcc和clang编译选项:主要是-fsanitize=address。如果 malloc 数量远大于 free,说明可能有 内存泄漏。

2025-02-28 09:08:00 652

原创 【C++】手搓variant

在 visit 函数中,std::common_type 确保 Lambda 适用于所有 Ts,并且它的返回类型是 所有返回值类型的公共类型。std::common_type<T1, T2, …>::type 计算出 所有 T1, T2, T3, …即,Lambda 作用于 T1 &, T2 &, T3 &, …封装个简单variant,为了防止类型是int,但是赋得的却是double类型的。它的作用是 推导出 Lambda 作用于所有 Ts 类型的返回值的公共类型。是 Variant 的所有可能类型。

2025-02-20 08:42:41 191

原创 【C/C++】printf后并不会立即显示?文件流的缓冲机制探究

模式触发输出的条件终端输出情况_IONBF(无缓冲)每次调用putchar()立即输出依次出现_IOLBF(行缓冲)遇到\n时刷新缓冲区Hello直到\n才一次性出现_IOFBF(全缓冲)缓冲区满了,或程序结束时才刷新可能什么都看不到,除非手动flush()

2025-02-20 08:41:03 300

原创 【C++20】编译期检测所有未定义行为和内存泄露

数组指针加法,超出了数组的范围也会报错,clang++会直接报错,gcc只在解引用的时候报错。std::end(a) 返回数组 a 尾后位置(即 &a[32],超出数组范围的一个位置)。使用 std::begin() 和 std::end() 初始化 std::vector。= std::end(a) 避免访问 a[32] 这个非法位置。std::begin(a) 返回数组 a 的首地址(即 &a[0])。结合 std::begin() 和 std::end()下面的会死循环,int越界是未定义行为。

2025-02-20 08:39:34 258

原创 【C++】实现一个JSON解析器

123。

2025-02-19 18:05:21 255

原创 【C++】静态反射实现自动JSON序列化

123。

2025-02-19 18:03:45 244

原创 【C++STL】自制标准库系列之map与set

123。

2025-02-19 17:41:08 191

原创 【现代C++】cpp 20自制携程库

123。

2025-02-19 17:37:26 229

原创 AI效率工具总结

(1)提问+同时上传简历:我是前端开发工程师,我现在要找工作,我想你帮我优化一下简历,量化我的成果,要让面试官看到简历就想让我去面试的那种。TalenCat 简历生成器(CV Maker)是一款专业且易于使用的在线简历制作工具。(2)打开TalentCat,导入生成的简历(通过markdown填写)Deepseak提问方法:我是谁+我要干啥+我的目标是啥。

2025-02-13 11:26:28 1277

原创 对rust的全局变量使用drop方法

全局变量的生命周期应该和main的程序生命周期是一样长的,所以可以在main中创建一个CleanUp局部对象,为CleanUp()实现Drop特征,在Drop()特征中,完成释放全局变量的资源的功能。Rust 的静态变量不会在程序退出时自动调用 Drop,因为它们的生命周期与进程绑定。

2024-12-13 11:58:36 475

kali中安装burpsuit profession脚本工具

kali中安装burpsuit profession脚本工具,一件安装方便使用;支持 Linux和WIndows

2024-01-20

划词翻译v8.7.6用于Chrome和Edge

划词翻译v8.7.6用于Chrome和Edge

2022-09-06

vscode的remote ssh中需要的ubuntu服务器中的sshd配置文件

客户端:win10,服务器端:ubuntu,使用vscode免密登录ubuntu时,会需要到的sshd配置文件

2022-06-19

postgresql数据库插件PG-Strom中Scan算子执行流程分析

postgresql数据库插件PG-Strom中Scan算子执行流程分析; 资源中的.mdj文件请由StartUML软件打开;

2022-03-16

CUDAppt.zip

https://www.bilibili.com/video/BV1kx411m7Fk?p=2&spm_id_from=pageDriver对应的CUDA教程PPT课件

2021-12-28

RF自动化ppt.7z

这是rf自动化的ppt资料,主要包括四个章节:包括接口,Fiddler,RF接口自动化测试,Jmeter测试接口等,

2020-01-07

postgres.zip

pg11源码

2021-11-25

PostGreSQL资料.zip

PostGreSQL资料.

2021-11-25

跟我一起学C++.zip

这是C++教程网的和我一起学习C++的ppt和代码,可惜只有1-25节,后面的代码我会持续补充进去。链接:https://blog.csdn.net/u011436427/article/details/105442484

2020-05-06

20+张高清技能图谱.7z

20+张高清技能图谱.7z,包括:区块链,云计算,ios,linux,前端工程师,hadoop家族等等涵盖了所有软件开发的图谱内容

2020-03-02

Downloads.zip

C /C++常见面试题和简历模板

2021-06-26

MobaXterm12hanhua.rar

这是一种Linux终端登录软件,版本是Moba12,中文版的,里面可以设置moba的背景颜色,真的很不错哦

2020-06-22

ant-learn-python-concurrent-main.zip

python并发编程的一些资料

2021-05-24

Linux函数手册等.zip

Linux函数手册等.zip

2021-04-18

xshell6pjb_4614.zip

这是从xshell官网下载的xshell6,非常好用的免费版。里面的exe文件是64bit的,32bit也有下载链接,下载速度很快

2020-09-24

Shell编程ppt[C++教程网cppcourse[1].com].zip

这是C++教程网的Linux入门的相关ppt,如果需要可以看看。我觉得非常不错的哦,ppt很全的。请各位入门Linux敬请想用

2020-05-06

NetworkProgramming-master.zip

这是C++教程网之网络编程部分的所有代码,代码应该都可以用,大部分代码使用C语言编写。目录:https://blog.csdn.net/u011436427/article/details/105882800

2020-05-06

Docker学习资料总结.7z

这是我研究Dicker一周以来学习的Docker资料的总结,里面包括:namespace,cgroup等对Docker核心原理的认识和理解,还有一些关于Docke自己做的实验

2020-02-08

mingw-w64.7z

需要下载的mingw-w64的链接,他需要配合llvm使用才可以在vs code编译C/C++代码,积分我设置的很低,只为帮助大家,希望大家能喜欢

2019-12-20

muduo_server_learn.zip

大并发服务器开发(实战)https://www.bilibili.com/video/av45560719课程的所有ppt和代码资料,里面还有muduo网络库的使用手册

2020-03-12

olla linux arm64 3 安装包

olla linux arm64 3 安装包

2025-05-28

olla linux arm64 2 安装包

olla linux arm64 2 安装包

2025-05-28

olla linux arm64 1 安装包

olla linux arm64 1 安装包

2025-05-28

qwq3 model 12 use for ollama

qwq3 model 12 use for ollama

2025-05-22

qwq3 model 11 use for ollama

qwq3 model 11 use for ollama

2025-05-22

qwq3 model 10 use for ollama

qwq3 model 10 use for ollama

2025-05-22

qwq3 model 9 use for ollama

qwq3 model 9 use for ollama

2025-05-22

qwq3 model 8 use for ollama

qwq3 model 8 use for ollama

2025-05-22

qwq3 model 7 use for ollama

qwq3 model 7 use for ollama

2025-05-22

qwq3 model 6 use for ollama

qwq3 model 6 use for ollama

2025-05-22

qwq3 model 13 use for ollama

qwq3 model 13 use for ollama

2025-05-22

qwq3 model 5 use for ollama

qwq3 model 5 use for ollama

2025-05-22

qwq3 model 4 use for ollama

qwq3 model 4 use for ollama

2025-05-22

qwq3 model 3 use for ollama

qwq3 model 3 use for ollama

2025-05-22

qwq3 model 2 use for ollama

qwq3 model 2 use for ollama

2025-05-22

qwq3 model 1use for ollama

qwq3 model 1use for ollama

2025-05-22

ollama windows setup + models location

ollama windows setup + models location

2025-05-21

chat-box1.12.3 版本windows专用

chat-box1.12.3 版本windows专用

2025-05-21

M301H镜像固件版本

M301H镜像固件版本,刷写办法如下:U盘格式化FAT32格式 刷机包不解压 复制到U盘 U盘插到盒子上 盒子关机

2025-02-12

chrom,edge浏览器插件

chrom,edge浏览器插件

2024-12-23

空空如也

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

TA关注的人

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