- 博客(489)
- 资源 (13)
- 收藏
- 关注
原创 Ubuntu 24.04 抢先体验换国内源 清华源 阿里源 中科大源 163源
代号,即将与我们见面!Canonical 已经宣布,作为 LTS 版本,它会有 5 年的常规维护和安全更新。如果订阅Ubuntu Pro,还能享受额外 57年的支持。也就是说,Ubuntu Pro将享有长达 12 年的系统更新保障!!!接下来,我们将重点介绍中那些值得关注的新特性,以方便你决定是否进行升级。1.将引入最新的GNOME 46作为默认桌面环境。GNOME设置得到进一步的优化,带来更加整洁的布局和新增的实用功能在中,可以使用简单的命令快速安装一系列基于Snap发布的办公软件(基于。
2024-03-07 11:49:59 1705
原创 Windows下安装PyTorch1.0
PyTorch简介在2017年1月18日,facebook下的Torch7团队宣布PyTorch开源后就引来了剧烈的反响。PyTorch 是 Torch 在 Python 上的衍生版本。Torch 是一个使用 Lua 语言的神经网络库, Torch 很好用, 但是 Lua 流行度不够, 所以facebook开发团队将 Lua 的 Torch 移植到了更流行的语言 Python 上,推出了PyTo...
2019-01-11 14:45:12 31187 24
原创 Windows下安装PyTorch0.4.0
本文系转载,出处:https://blog.csdn.net/sunqiande88/article/details/80085569。PyTorch简介在2017年1月18日,facebook下的Torch7团队宣布PyTorch开源后就引来了剧烈的反响。PyTorch 是 Torch 在 Python 上的衍生版本。Torch 是一个使用 Lua 语言的神经网络库, Torch 很...
2018-04-27 09:21:52 51743 27
转载 Win10 Python3.6下安装PyTorch
更新提醒:本文已过期,PyTorch0.4.0已经有官方的Windows支持,Windows下安装最新的PyTorch0.4.0请移步本人另一篇博客:Windows下安装PyTorch0.4.0。2017年1月18日,周董生日这一天,facebook下的torch7团队宣布Pytorch开源,官网地址:pytorch。pytorch是一个python优先的深度学习框架,是一个和tensorfl...
2017-06-20 16:27:15 125210 57
原创 cuda从入门到精通(六)共享内存和循环分块实现CUDA矩阵乘
然后,我们可以使用另一个线程块来将这些子矩阵的结果相加,得到最终的矩阵乘法结果。例如,我们可以使用更复杂的内存访问模式来减少内存访问的冲突,或者使用更高效的算法来计算子矩阵的结果。在矩阵乘法中,我们可以将大的矩阵分解为一系列小的子矩阵,并分别对每个子矩阵进行乘法运算。在每个循环迭代中,我们首先将子矩阵A和B的数据加载到共享内存中,然后计算子矩阵的结果,并将结果写回全局内存。的子矩阵乘法,其中t是分块的大小。然后,我们可以使用多个线程块并行计算这些子矩阵的结果,最后将结果相加得到最终的矩阵乘法结果。
2024-03-19 13:19:02 815
原创 cuda从入门到精通(五)CUDA实现AI模型中的softmax
NVIDIA提供了许多CUDA库,如cuBLAS和cuDNN,这些库为许多常见的线性代数运算提供了高效的实现。例如,在上述示例中,我们在GPU上分配了额外的内存来存储输入和输出的副本。为了避免这种情况,我们可以从每个输入值中减去最大值,这样可以确保所有的输入值都在可接受的范围内。:了解你正在使用的硬件的特性,并根据这些特性进行优化。例如,不同的GPU可能有不同的内存带宽和计算能力,这可能会影响你的代码的性能。这些只是优化CUDA代码的一些基本建议,具体的优化策略可能会根据你的应用和硬件的特性而有所不同。
2024-03-19 13:08:39 223
原创 C++递归和非递归实现判断一个数是否为质数
在C++中,判断一个数是否为质数,可以编写一个函数来实现。这个函数首先检查输入的数是否小于等于1,如果是,则直接返回false。然后检查数是否为2,如果是,则返回。这个函数首先检查输入的数是否小于等于2,如果是,则直接返回。的所有奇数,如果num能被这些数中的任何一个整除,则返回。接着检查i的平方是否大于输入的数,如果是,则返回。函数来判断这个数是否为质数,并输出相应的结果。函数来判断这个数是否为质数,并输出相应的结果。然后检查数是否能被i整除,如果是,则返回。接着检查数是否为偶数,如果是,则返回。
2024-03-19 11:22:38 181
原创 leetcode 240. 搜索二维矩阵 II
由于每一列的元素都是升序排列的,那么在当前的搜索矩阵中,所有位于第 y 列的元素都是严格大于 target 的,因此我们可以将它们全部忽略,即将 y 减少 1;,由于每一行的元素都是升序排列的,那么在当前的搜索矩阵中,所有位于第 x 行的元素都是严格小于 target 的,因此我们可以将它们全部忽略,即将 x 增加 1。编写一个高效的算法来搜索 m x n 矩阵 matrix 中的一个目标值 target :如果搜索到返回true,否则返回false。每列的元素从上到下升序排列。
2024-03-07 19:19:03 290
原创 求每个cluster中box的个数
有一堆box,若干个box有交集就是一个簇,求每个cluster中box的个数。注意:可以自定义box的结构体, 无需考虑旋转角度。请用C+实现上述代码。
2024-03-07 11:12:28 163
原创 leetcode.15三数之和
然后,我们遍历数组,对于每个元素,我们使用两个指针分别指向当前元素的下一个元素和数组的末尾,然后向中间移动两个指针,直到两个指针相遇。在移动指针的过程中,我们需要判断三个指针指向的元素之和是否等于0,如果等于0,我们将这三个元素加入结果集中;然后,我们遍历数组,对于每个元素,我们使用两个指针分别指向当前元素的下一个元素和数组的末尾,然后向中间移动两个指针,直到两个指针相遇。同样地,在移动指针的过程中,我们也需要判断当前指针指向的元素是否与前一个元素相同,如果相同,我们也需要跳过当前元素,以避免重复计算。
2024-03-05 20:10:29 230
原创 leetcode 经典题目42.接雨水
如果当前元素的高度小于栈顶元素的高度,我们将当前元素的索引入栈;如果当前元素的高度大于或等于栈顶元素的高度,我们将栈顶元素出栈,并计算出栈元素对应的雨水量。首先,我们需要遍历数组,对于每个元素,我们将其高度与栈顶元素的高度进行比较。如果当前元素的高度小于栈顶元素的高度,我们将当前元素的索引入栈;如果当前元素的高度大于或等于栈顶元素的高度,我们将栈顶元素出栈,并计算出栈元素对应的雨水量。需要注意的是,在计算雨水量时,我们需要考虑当前元素与栈顶元素之间的距离,以及当前元素和栈顶元素之间的最小高度。
2024-03-05 20:00:50 632
原创 leetcode 11.盛最多水的容器
首先,我们需要两个指针,分别指向数组的左右两端。然后,我们比较两个指针指向的值,将较小的值对应的指针向中间移动,同时计算当前两个指针之间的面积。最后,我们比较所有计算出的面积,返回最大的面积即可。来确定当前两个指针之间的最大高度,这是因为如果两个指针之间的最大高度小于当前指针的高度,那么即使将指针向中间移动,也无法增加面积。的值,将较小的值对应的指针向中间移动,同时计算当前两个指针之间的面积,并更新最大面积。找出其中的两条线,使得它们与 x 轴共同构成的容器可以容纳最多的水。,分别指向数组的左右两端。
2024-03-05 19:54:43 351
原创 leetcode128. 最长连续序列
找出数字连续的最长序列(不要求序列元素在原数组中连续)的长度。请你设计并实现时间复杂度为。给定一个未排序的整数数组。解释:最长数字连续序列是。
2024-03-04 22:00:17 295
原创 迭代法实现二叉树前序/中序/后序遍历
二叉树前序/中序/后序遍历是最简单的题目之一,类似于二分/快排/链表反转,是在求职期间必熟必会的算法!在这里记录下三种遍历的迭代实现,动画版解释戳。
2024-03-03 19:22:53 202
原创 秒杀leetcode子数组问题的模板“前缀和+哈希表”
umap 的初始值为。以上代码实现了一个函数 subarraySum,用于计算一个整数数组 nums 中所有和为 k 的子数组的数量。中的每个元素 n,将其加到 sum 上,然后计算当前子数组和减去 k 的结果 cur。答: 假设当前前缀和为sum,我们的目标是求解一个连续的和为k的子数组,假设子数组标号从i到j,即求。给你一个整数数组 nums 和一个整数 k ,请你统计并返回 该数组中和为 k 的子数组的个数。中存在,则表示存在一个前缀和为 cur 的子数组,其和为 k,因此将。
2024-03-03 14:07:36 742
原创 C++ 大堆根/小堆根 priority_queue的区别
例如,下面的代码创建了一个 priority_queue,并使用 top() 和 pop() 方法访问和删除元素,并得到一个元素从大到小排序的vector。大堆是一种特殊的完全二叉树,其中每个节点的值都大于或等于其子节点的值。的元素总是按照优先级排序,最高优先级的元素总是在队列的顶部。是两种不同类型的堆数据结构,它们的主要区别在于堆顶元素的值。的元素总是按照优先级排序,最高优先级的元素总是在队列的顶部。是一个大堆,即堆顶元素是整个堆中最大的元素。的元素总是按照降序排列,堆顶元素是整个堆中最大的元素。
2024-03-03 11:42:54 262
原创 C++实现conv2D 卷积运算
具体来说,代码首先计算输出矩阵的大小,即输入矩阵的大小减去卷积核的大小再加一。然后,代码初始化输出矩阵,将其所有元素设置为零。接着,代码遍历输入矩阵,对于每个位置,计算卷积核在输入矩阵上的位置,然后遍历卷积核,计算卷积核和输入矩阵对应元素的乘积,并将结果累加到输出矩阵的对应位置上。最后,代码返回输出矩阵。代码首先计算输出矩阵的大小,然后初始化输出矩阵。接着,代码遍历输入矩阵,对于每个位置,计算卷积核在输入矩阵上的位置,然后遍历卷积核,计算卷积核和输入矩阵对应元素的乘积,并将结果累加到输出矩阵的对应位置上。
2024-03-03 11:08:21 226
原创 leetcode169. 多数元素的四种解法
给定一个大小为 n 的数组 nums ,返回其中的多数元素。多数元素是指在数组中出现次数 大于。摩尔投票法,投我++,不投–,超过一半以上的人投我,那我稳赢哇。你可以假设数组是非空的,并且给定的数组总是存在多数元素。leetcode169. 多数元素。
2024-03-02 22:09:52 280
原创 leetcode230. 二叉搜索树中第K小的元素
给定一个二叉搜索树的根节点 root ,和一个整数 k ,请你设计一个算法查找其中第 k 个最小元素(从 1 开始计数)。
2024-03-02 21:48:36 220
原创 经典动态规划题目leetcode322. 零钱兑换
如果没有任何一种硬币组合能组成总金额,返回 -1。然后,程序遍历每个硬币,对于每个硬币,程序遍历从该硬币面值到。被设置为0,其他位置被设置为一个很大的数(这里设置为。这个C++程序首先定义了一个动态规划数组dp,其中。的所有金额,更新dp数组。具体来说,对于每个金额。,程序比较兑换i元所需的最少硬币数量和兑换。(即使用当前硬币),取两者中的最小值。,表示不同面额的硬币;你可以认为每种硬币的数量是无限的。元所需的最少硬币数量。,则表示无法兑换,返回-1。元所需的最少硬币数量。元所需的最少硬币数量加上。
2024-03-02 20:11:29 417
转载 vscode升级1.86报错 waiting for server log解决
vscode自动升级1.86报错Waiting for server log
2024-02-02 16:39:13 1512
原创 unzip解压大文件失败提示End-of-central-directory signature not found
unzip解压大文件(>5G)报错。
2024-01-19 13:12:23 500
原创 CentOS7 下A10 GPU安装nvdia545驱动和cuda12.3和docker
【代码】CentOS7 下A10 GPU安装nvdia545驱动和cuda12.3。
2023-12-01 13:28:30 743
原创 CUDA纹理内存tex1D/tex2D/tex3D函数
如果纹理数据是聚合的,则可以使用tex1Dgather函数来替代tex1D函数。CUDA的tex1D是用于从一维纹理中读取数据的函数。tex2D函数可以用于从二维纹理中读取数据。如果纹理数据是二维的,则可以使用tex2D函数来替代tex1D函数。如果纹理数据是三维的,则可以使用tex3D函数来替代tex1D函数。使用tex2D函数取代tex1D函数可以提高性能,因为纹理数据是二维的,因此可以使用更少的纹理坐标来读取数据。tex1D函数可以用于从纹理中读取各种类型的数据,包括浮点数、整数和字符串。
2023-10-22 20:56:32 1112
原创 nndeploy:一款最新上线的支持多平台、简单易用、高性能的机器学习部署框架
nndeploy是一款最新上线的支持多平台、高性能、简单易用的机器学习部署框架。做到一个框架就可完成多端(云、边、端)模型的高性能部署。作为一个多平台模型部署工具,我们的框架最大的宗旨就是高性能以及使用简单贴心😚,目前nndeploy已完成TensorRTOpenVINOMNNTNNncnn六个业界知名的推理框架的集成,后续会继续接入TFLitecoreMLTVMAITemplate,在我们的框架下可使用一套代码轻松切换不同的推理后端进行推理,且不用担心部署框架对推理框架的抽象而带来的性能损失。
2023-09-22 10:42:42 160
原创 libnvjpeg各版本下载
https://developer.download.nvidia.com/compute/redist/libnvjpeg
2023-07-24 18:21:48 221
原创 打印ONNX/TRT文件的所有节点
给一段python代码 可以查看.onnx文件的所有节点。给一段python代码 可以查看.trt文件的所有节点。
2023-07-18 14:11:16 259
原创 Albumentations 对 PIL 图像进行数据增强
然后,我们定义了一个增强函数 transform,其中包含了一系列的增强操作,如随机裁剪、水平翻转和旋转。最后,我们将图像传递给增强函数 transform,并通过访问字典的键 ‘image’ 来获取增强后的 NumPy 数组。最后,我们将增强后的 NumPy 数组转换回 PIL 图像,并显示出来。要使用 Albumentations 对 PIL 图像进行数据增强,你需要将 PIL 图像转换为 NumPy 数组,并使用 Albumentations 库中的转换函数来进行数据增强。
2023-06-06 19:40:37 197
原创 Python和C++实现简易的扩展卡尔曼滤波EKF
扩展卡尔曼滤波器(EKF,Extended Kalman Filter)是一种非线性状态估计方法。下面是一个简单的二维EKF实现,输入为x和y坐标,输出为坐标(x, y)和速度(vx, vy)。
2023-03-25 10:26:49 1175 4
转载 docker-cuda之base,runtime,devel的区别
本文系转载,出处:https://blog.csdn.net/u011622208/article/details/113650011DescriptionCUDA图像有三种风格,可以通过NVIDIA公共集线器存储库获得。基础(base):从CUDA 9.0开始,包含了部署预构建CUDA应用程序的最低限度(libcudart)。如果你想手动选择你想要安装的CUDA包,请使用这个映像。运行时(runtime):通过添加CUDA工具包中的所有共享库扩展基本映像。如果您有一个使用多个CUDA库的预构建
2022-03-23 10:33:23 2080
orb_vocab.zip
2019-05-25
SSH.NET-1.0.zip
2019-05-17
SSH.NET最新dll集合(2017年8月)
2017-09-07
C# SSH.NET库Renci.SshNet.dll最新集合(8个)
2017-07-15
C#SSH.NET开发官方chm帮助文档
2017-07-15
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人