自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 [cuda graph 系列] cuda graph基本介绍

CUDA Graph 是 NVIDIA CUDA 编程模型中用来优化 GPU 程序性能的一种技术。它允许我们把一系列连续的 GPU 操作(例如计算和数据传输)连接成一个“图”结构,并一次性提交给 GPU 来执行。这样可以减少 CPU 和 GPU 之间的通信开销,让 GPU 更流畅、高效地工作。CUDA Graph 是一种加速 GPU 程序执行的技术,它通过将任务组织成图结构,减少了 CPU 和 GPU 之间的通信开销,并且允许 GPU 自己安排任务的执行顺序,从而显著提高了性能。

2024-11-05 19:31:12 442

原创 Linux 查看可执行文件所依赖的动态库

文件没有被剥离调试符号(即包含符号表、调试信息),因此文件体积较大,且在调试工具中可以查看完整的符号和源信息。:文件是为 ARM 的 64 位架构(aarch64)编译的,适用于 ARM64 或者 ARMv8 架构。该输出描述了一个 ARM 架构的 ELF 可执行文件的详细信息。:这是针对 GNU/Linux 系统编译的版本 1 格式的可执行文件。:这是一个 64 位的小端序(LSB)的 ELF 格式的可执行文件。:这是一个动态链接的可执行文件,因此依赖外部共享库 (命令来查看该文件依赖的所有共享库。

2024-11-01 11:53:02 239

原创 [shell 脚本系列-3] 命令行传参 使用

例子假设脚本内容为:SRC_ROOT=$1RES_DIR=$2echo "Source root directory: $SRC_ROOT"echo "Results directory: $RES_DIR"如果用以下命令运行该脚本:./script.sh /home/user/project /home/user/results输出将是:Source root directory: /home/user/projectResults directory: /home/user/r

2024-10-31 10:51:10 115

原创 [持续更新] c++ 代码静态问题汇总

解决方法:is of typeuint64_t *input_numbytes.

2024-10-28 11:29:01 407

原创 [shell 脚本系列-2] 基本语法,基本命令

bin/bash如果你已经在系统中定义了/bin/bash$0:表示当前脚本的名字,可以是相对路径或绝对路径。dirname:获取文件路径中的目录部分,用于确定文件所在的目录。realpath:获取文件或目录的绝对路径,确保路径是标准化的。环境变量(如:用于在脚本中存储和传递重要的目录或文件路径信息。组合使用:通过结合dirname和realpath,你可以准确地获取脚本所在的目录,结合环境变量,让脚本更灵活和可移植。是一种在 Bash 中使用参数扩展。

2024-10-24 17:48:07 787

原创 【shell脚本系列-1】shell 脚本第一行为什么是 #! /bin/bash

在 Shell 脚本中使用。

2024-10-24 15:54:49 276

原创 常用 CMake 指令

用于指定目标的头文件搜索路径。可以使用INTERFACEPUBLIC或PRIVATE来控制可见性。虽然常见用法是紧随或后面,但只要在目标编译之前设置好包含目录即可。是 CMake 中用于链接外部库的命令。通过指定PRIVATEPUBLIC和INTERFACE,您可以控制库的可见性。这个命令帮助您将不同模块组合在一起,构建可执行文件和库。如果您有更具体的需求或其他问题,请随时告诉我!

2024-10-18 11:51:59 774

原创 std::variant 详解

通过类型安全、自动管理生命周期、异常处理等机制,提供了更高级别的安全性。而union则是一个低级的、没有类型检查和自动管理的内存共用机制,因此需要开发者手动保证其安全性。

2024-10-18 10:20:03 645

原创 c++结构体内存对齐 #pragma pack(push, 1) 和 #pragma pop()

将默认的对齐从8字节,转换成1字节,上面的结构体就占用 15 字节;如果想要恢复到原先的对齐方式(8字节),我们只要使用。

2024-10-14 14:19:54 76

原创 常用shell命令

tar -czvf archive.tar.gz /path/to/directory:将目录压缩为 .tar.gz 文件。zip archive.zip file1 file2:将文件 file1 和 file2 压缩为 archive.zip。find /path -name filename:在指定路径下查找名为 filename 的文件。wget http://example.com/file.zip:下载指定文件。tar -xzvf archive.tar.gz:解压 .tar.gz 文件。

2024-09-19 14:53:45 410

原创 环境变量,LD_PRELOAD和LD_LIBRARY_PATH区别

当你运行一个依赖共享库的程序时,动态链接器会根据该路径列表,优先搜索目录中的动态库文件,而非默认的 /usr/lib 路径。原理: linux的动态链接器 ld.so 会优先加载 LD_PRELOAD 中的库,覆盖或替换程序原本链接的库。用于存储配置信息的变量,每个系统进程都可以访问这些变量,并根据它们的值来改变自己的执行方式或操作环境;一个环境变量,用于在运行时强制加载一个动态库,它的优先级最高,比编译时绑定的动态库优先级还高;子进程继承父进程的环境变量,但子进程中新添加的环境变量不会被父进程拿到。

2024-09-19 14:18:00 182

原创 nfs-mount in linux

【代码】nfs-mount in linux。

2024-09-12 20:46:04 204 1

原创 解决 VMWARE 虚拟机下 UBUNTU 18 无法连接网络问题

DHCP重新分配:在NAT模式下,VMnet8通过DHCP服务器分配IP地址。禁用并重新启用网卡会触发DHCP重新分配IP地址,确保虚拟机获得正确的网络配置。网络配置刷新:禁用并重新启用网卡会强制刷新网络配置,重新分配IP地址和网络参数。这有助于解决由于配置错误或冲突导致的网络连接问题。虚拟网络适配器重置:有时虚拟网络适配器可能会出现故障或配置错误,禁用并重新启用可以重置适配器,恢复正常功能。在网络连接中禁用VMWARE Network Adapter 1 和 8,之后重新启用,即可恢复。

2024-09-12 00:42:22 443

原创 install NVIDIA-driver from run-file

【代码】install NVIDIA-driver from run-file。

2023-10-06 10:47:21 220 1

原创 解决修改linux系统中sshd_config无法保存的问题

sudo vim /etc/ssh/sshd_config #添加sudo赋予root权限。强制保存(即便你是readonly)

2023-10-02 10:29:16 894 1

原创 [C++ Primer] C16 一起粗略了解c++的类

A function parameter, like any other variable, is an lvalue expression. 即函数的参数都默认视为左值。在模板定义中,针对某个特定的类型或值,定义一个特殊的版本(或多个版本)来处理该类型或值。模板特化允许我们为特定的类型或值提供特殊的处理方式,使代码更加灵活和通用。在上面的例子中,如果我有多个参数会怎么样?我要把overload函数按照不同的参数数目重写吗?用typename…

2023-05-16 09:48:41 242

原创 在linux中配置c++和cmake环境

Prefix: 熟悉常见Linux开发命令,并熟悉Linux中的cmake等操作。

2023-05-14 14:08:06 2974

原创 [C++ Primer] C15 关于c++的继承,你需要知道的一些知识

不能被实例化。

2023-05-11 01:38:23 80

原创 [C++ Primer] C14 关于c++重载,你需要知道的一些知识

在上例中,如果我们用cout << a1 << endl;-> 编译报错,因为cout不支持我们定义的类A,所以我们要在A类中重写cout。类内写会自动绑定lhs为this,类外就不会。

2023-05-07 05:01:37 113

原创 c++手写NMS算法

【代码】c++手写NMS算法。

2023-05-05 03:05:54 161

原创 [C++ Primer] C13 Copy control(重点章节)

【代码】[C++ Primer] C13 Copy control(重点章节)

2023-05-03 12:15:13 83

原创 [C++ Primer] C12(重点章节)

【代码】[C++ Primer] C12(重点章节)

2023-04-24 02:59:18 343

原创 [C++ Primer] C11 Associative Containers

/ 我们自定义了变量A,也要同时定义映射关系(comparator),map本身就是一种hash结构,他把key映射到空间上// 注意定义的map也要有WannaBigger!!!it!return 0;

2023-04-20 11:18:00 80

原创 [C++ Primer] C10 Generic Algorithms

标准库自带的比较器:std::less。

2023-04-20 11:17:28 54

原创 [C++ Primer] C7(重点章节)

介绍如何定义一个类以及类的成员。类的成员包括数据成员和成员函数,数据成员表示类的状态,而成员函数则表示类的行为。在定义一个类时,需要确定类的数据成员和成员函数的访问权限。

2023-04-19 00:41:04 107

原创 [C++ Primer] C5,6

【代码】[C++ Primer] C5,6。

2023-04-19 00:39:46 50

原创 constexpr and its difference between define:

Def: constexpr is a keyword that specifies that an expression can be evaluated at compile timeFeatures:Note that constexpr functions can also be used in non-constant expressions, in which case they will be evaluated at runtime just like regular functions

2023-04-18 05:23:18 50

原创 [C++ Primer] C4

4.2 关联性和优先级 precedence & asscotiatity。左值(location in memory) 和右值(contents)不要再同一个表达式既改变值又引用它!

2023-04-17 22:29:34 103

原创 [C++ Primer] C3

有一些数据结构无序hashset, hashmap(空间不连续),所以用iterator。Name -> 不要再头文件中使用 using。

2023-04-17 22:26:56 80 1

原创 [C++ Primer] C1,2

/ scope: 尽量不要把local和全局变量同名。-c 直接编译然后和别的文件link。-o 直接生成二进制文件。写一个脚本 run.sh。

2023-04-17 22:26:11 336 1

原创 c++ map 使用方法

map是存储排序的键值对的关联容器,其中每个键都是唯一的,可以插入或删除,但不能更改。但是与键关联的值可以更改。

2023-04-17 08:04:47 539 1

空空如也

空空如也

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

TA关注的人

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