首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏AI研习社

    PyTorch算法加速指南

    所有帖子都在这里: 1.加快算法速度,第1部分—PyTorch 2.加快算法速度,第2部分-Numba 3.加快算法速度,第3部分—并行化 4.加快算法速度,第4部分--Dask 这些与Jupyter 引言: 在本文中,我将展示如何使用torch和pycuda检查、初始化GPU设备,以及如何使算法更快。 PyTorch是建立在torch之上的机器学习库。它得到了Facebook AI研究小组的支持。 2.如何检查CUDA的可用性 ? x = torch.Tensor([1., 2.]).to(cuda2)y = torch.Tensor([3., 4.]).to(cuda2) # This Tensor will be saved 2.分散:在这些设备中的第一维上分配输入。 3.收集:从这些设备收集和连接第一维的输入。

    1.3K20发布于 2019-11-27
  • 来自专栏数据人生

    加速MapReduce2

    案例1:对Map的输出进行排序时的CPU缓存本地性加速 此案例中,我们发现WordCount上性能的降低:某个作业在MR1上只需运行375秒,在MR2集群上需要运行475秒,这比MR1上多运行了25% 更小的块可能更加适合CPU缓存,也就是说,当排序的时候,所有的内存加速都非常快,因此排序过程也非常快。更大的块可能不适合CPU缓存加速,这意味内存加速会在更高级别的缓存中进行,或者直接在内存中进行。 以前的版本中,为了加速map输出记录,我发现首先会存储第n个记录在meta数组中的索引,接着存放记录key的位置,接着存放value在原始数据的位置。 而缓存外内存加速的代价大于缓存内额外的内存移动的代价,因此这种方法值得一试。        为什么会加速呢?这是因为排序时,我们将可以操作一段连续的内存空间,而操作其中一块时,可以进行CPU缓存加速。 以前方法在进行寻址或者移动时,因为缓存区的元数据区段比较大,可能没法利用CPU缓存加速。 这个小的改变就像魔术一样。

    53110编辑于 2022-09-23
  • 来自专栏范传康的专栏

    Llama2.c 学习笔记2: 编译加速

    llama2.c使用纯C编写,不过不同的编译优化能够提供不同的加速性能。 相比原始的c编译(O3优化),叠满Fast,OMP,GNUC11后有了近10倍的加速。centos 安装 gcc 9.xubuntu20,22好像默认安装的gcc都是高版本的没有问题。 /run out/stories110M.bin图片2. Fast: 13.30 tok/sgcc -Ofast -o run run.c -lm.

    3.9K61编辑于 2023-08-04
  • 来自专栏技术总结

    算法2

    有两个算法 A 和 B ,假设两个算法的输入规模都是 n,算法 A 要做 2n+3 次操作,算法 B 要做 3n+1 次操作。觉得谁快?看下图: ? 而当 n = 2 时,两者效率相同;当 n > 2时,算法 A 就开始优于算法 B 了,随着 n 的增加, 算法 A 比算法 B 越来越好了,得出结论,算法 A 好过 算法 B 判断一个算法的效率时,函数中的常数和其他次要项常常可以忽略 2、在修改后的运行次数函数中,只保留最高阶项。 3、如果最高阶项存在且不是1,则去除与这个项相乘的常数,得到的结果就是大O阶 3、常数阶 高斯算法,时间复杂度不是O(3),而是O(1)。 //第二种算法 int sum = 0, n = 100; /*执行1次*/ sum = (1 + n) * n/2; /*执行1次*/ printf( 也就是说,有多少个2相乘后大于n,则会退出循环。由2× = n ,得到 x = ㏒2n (2缩小)。所以这个循环的时间复杂度为O(㏒n)。

    1.1K90发布于 2018-05-22
  • 来自专栏一心无二用,本人只专注于基础图像算法的实现与优化。

    AVX图像算法优化系列二: 使用AVX2指令集加速查表算法

      查表算法,无疑也是一种非常常用、有效而且快捷的算法,我们在很多算法加速过程中都能看到他的影子,在图像处理中,尤其常用,比如我们常见的各种基于直方图的增强,可以说,在photoshop中的调整菜单里 快速实现,详见【算法随记七】巧用SIMD指令实现急速的字节流按位反转算法。  ,或其他各种复杂的计算参与,这个时候用SIMD指令计算这些过程是能起到很大的加速作用的,在我们没有AVX2之前,使用SSE实现时,到了进行查表时通常的做法都是把前通过SSE计算得到的坐标的_m128i元素的每个值使用 最后说明一点,经过在其他一些机器上测试,似乎有些初代即使支持AVX2的CPU,使用这些函数后相应的算法的执行速度反而有下降的可能性,不知道为什么。     本文可执行Demo下载地址:  https://files.cnblogs.com/files/Imageshop/SSE_Optimization_Demo.rar,菜单中蓝色字体显示的部分为已经使用AVX加速算法

    2.3K10编辑于 2022-10-28
  • 来自专栏FPGA技术江湖

    基于 FPGA 的压缩算法加速实现

    基于 FPGA 的压缩算法加速实现 第一部分 设计概述 /Design Introduction 1.1设计目的 本设计中,计划实现对文件的压缩及解压,同时优化压缩中所涉及的信号处理和计算密集型功能,实现对其的加速处理 Gzip对文件进行了压缩算法加速实现。 XFL (eXtraFLags):该字段是用来记录gzip文件中所使用的压缩方法,由于当前gzip只使用一种压缩算法,即deflate,所以针对deflate,该字段有如下含义, XFL= 2 – 压缩率最大但是压缩速度最慢 ISIZE (InputSIZE):将原始数据大小对2^32取模的结果。 上面已经将整个gzip文件的基本文件格式分析完毕,下面简单介绍gzip文件的文件体。该文件体主要与压缩算法deflate相关。 并具备一定的加速效果,相比纯arm进行压缩速度提高了1.6倍。Vivado硬件工程能够通过综合、应用、生成比特流。最后通过Jupyter Notebook在pynq z2平台上进行功能验证。

    55000编辑于 2025-07-08
  • P2P加速技术概览

    P2P加速技术是一种利用网络中每个参与者的带宽和存储资源来提高数据传输效率的技术。它通过分布式网络架构,允许用户之间直接交换数据,从而减轻中心服务器的负担,提高下载速度和降低延迟。 腾讯云X-P2P产品介绍 腾讯云X-P2P是一款高效的P2P加速产品,旨在为用户提供更快的下载速度和更低的带宽成本。该产品通过智能调度算法,优化数据传输路径,实现快速内容分发。 优势: 高效的带宽利用:X-P2P通过优化传输路径,减少带宽浪费,提升传输效率。 降低延迟:分布式架构减少了数据传输的中间环节,有效降低延迟。 劣势: 对网络环境要求较高:在网络不稳定或带宽受限的环境下,P2P加速效果可能受到影响。 总结 P2P加速技术以其高效的数据传输和成本效益在现代网络中扮演着重要角色。 随着技术的不断进步,P2P加速技术有望在未来实现更广泛的应用和更优的性能表现。

    43810编辑于 2025-07-28
  • GPU加速MIP原始启发式算法

    MIP求解器的加速原始启发式算法,是在不穷举搜索整个解空间的前提下,提供高质量可行解的算法加速启发式算法通过利用并行性和更智能的搜索策略来减少求解时间,使企业能够响应中断并做出低延迟决策。 现在将此方法与广泛使用的开源求解器进行比较:图2展示了CPU与GPU在可行解数量和求解器测量时间上的对比。图3展示了CPU与GPU在平均归一化积分上的对比。 图表显示,与包含复杂割平面算法和特定问题方法的求解器相比,速度有显著提升。这表明存在进一步改进的潜力,以及可以用前述GPU加速原始启发式算法来增强任何现有求解器的可能性。 某机构cuOpt利用GPU加速使这些启发式算法在大规模下变得实用,产生更快的解、缩小目标间隙,并实现持续、自适应的决策流水线。

    10710编辑于 2026-04-08
  • 来自专栏自然语言处理(NLP)论文速递

    加速2-3倍,哈工大|提出多模态大模型自适应剪枝算法:SmartTrim

    为了解决上述这些问题,哈工大联合度小满推出针对多模态模型的自适应剪枝算法 SmartTrim,论文已被自然语言处理顶级会议 COLING 24 接收。 (2)Token 的冗余度随着深度而逐渐增加。(3)不同实例之间的冗余程度差异较大,进一步说明依赖于输入的自适应剪枝对于 VLM 加速的重要性。 2-3 倍,同时性能下降最小。 具有不同加速比下的 VLM 加速方法结果。 不同 VLM 加速方法在 NLVR2 上的效率与性能权衡的帕累托前沿。

    1.1K10编辑于 2024-03-25
  • 来自专栏姜媚的专栏

    CNN 模型压缩与加速算法综述

    操作,而直接利用gemm进行矩阵加速运算,因此对速度的优化是有一定的作用的。 Deep Compression的算法流程包含三步,如图2所示: 图2 Deep Compression Pipeline[6] 1、Pruning(权值剪枝) 剪枝的思想其实早已在早期论文中可以窥见 因此Song H.等人专门针对压缩后的模型设计了一套基于FPGA的硬件前向加速框架EIE[12],有兴趣的可以研究一下。 三、XNorNet 二值网络一直是模型压缩和加速领域经久不衰的研究课题之一。 四、Distilling Distilling算法是Hinton等人在论文Distilling the Knowledge in a Neural Network中提出的一种类似网络迁移的学习算法。 而对于caffe等采用矩阵运算GEMM实现卷积的深度学习框架,1x1卷积无需进行im2col操作,因此可以直接利用矩阵运算加速库进行快速计算,从而提升了计算效率。

    16.2K70发布于 2017-08-21
  • 来自专栏AngelNI

    排序算法-2

    start++] =arr[p]; } } void mergesort(ll *A,ll start,ll end) { if(start<end) { ll mid = (start+end)/2; = a[i]; a[i] = a[j]; a[j] = t; } void heapify(ll *tree,ll n,ll i) { if(i>=n) return ; ll c1 = 2* i+1; ll c2 = 2*i+2; ll max = i; if(c1<n&&tree[c1]>tree[max]) { max = c1; } if(c2<n&&tree[c2]> tree[max]) { max = c2; } if(max ! = i) { swap(tree,max,i); heapify(tree,n,max); } } void heapsort(ll *a,ll n) { for(ll i =n/2-1;

    30610发布于 2020-04-14
  • 来自专栏修也的进阶日记

    算法手记2

    NC296 最小花费爬楼梯 牛客网题目链接(点击即可跳转):NC296 最小花费爬楼梯 题目详情: 本题详情如下图: 题目思路: 本题解题思路如下: 基础动态规划,1.写出动态转换方程2. vector<int>& cost) { vector<int> dp; dp.resize(cost.size()+1); for(int i=2; i<=cost.size();i++) dp[i]=min(dp[i-1]+cost[i-1],dp[i-2]+cost[i-2]); return dp[cost.size ()]; } }; 结语 说点啥好呢...不断修补细节然后提高效率,不断学习算法并应用出肌肉记忆.

    13200编辑于 2025-03-14
  • 来自专栏Article

    算法 Day 2

    冒泡排序 平均时间复杂度 O(n2) 空间复杂度 O(1) function bubbleSort(arr) { var i = arr.length; var position =

    13010编辑于 2022-06-14
  • 来自专栏GiantPandaCV

    详解卷积中的Winograd加速算法

    「GiantPandaCV导语」:这篇文章为大家介绍一下用来加速卷积运算的WinoGrad算法的原理,工程实现以及相关优化思路,如果你对卷积加速算法感兴趣可以看看这篇文章。 所以在这种情况下,针对卷积的WinoGrad算法出现了,它不仅可以类似FFT一样降低计算量,它还不会引入复数,使得卷积的运算加速成为了可能。 因此,本文尝试从工程实现的角度来看一下WinoGrad,希望对从事算法加速的小伙伴有一些帮助。 2. 为什么会有这篇文章? 相比于普通的矩阵乘法,使用WinoGrad算法之后乘法次数减少了,这样就可以达到加速的目的了。 这个例子实际上是「1D的WinoGrad算法」,我们将上面的计算过程写成矩阵的形式如下: ? ,就可以实现卷积的加速了,那么如何从1维扩展到2维呢?

    5.4K42发布于 2020-10-10
  • 来自专栏云深之无迹

    Python 算法.2

    如果 a+b+c=1000,且 a^2+b^2=c^2(a,b,c 为自然数),如何求出所有a、b、c可能的组合? + b**2 == c**2 and a+b+c == 1000: print("a, b, c: %d, %d, %d" % (a, b, c)) end_time + b**2 == c**2: print("a, b, c: %d, %d, %d" % (a, b, c)) end_time = time.time() print("elapsed (nlogn) < O(n2) < O(n3) < O(2n) < O(n!) = Timer("test2()", "from __main__ import test2") print("append ", t2.timeit(number=1000), "seconds")

    57630发布于 2021-04-28
  • 来自专栏数据云团

    算法篇-python排序算法-2

    让指定的元素归位,就是放到它应该放的位置(左边元素比它小,右边元素比他大),然后对每个元素归位,完成排序。

    65330发布于 2019-07-18
  • 来自专栏码农帮派

    LeetCode中级算法-回溯算法2

    子集 [题目] 给定一个不包含重复元素的数组,返回该数组所有可能的子集 [输入] [1,2,3] [返回] [[] [3] [2] [2 3] [1] [1 3] [1 2] [1 2 3]] [解法 所以我们在回溯index元素的时候,可以根据这两种状态分别进行回溯 [代码实现] package main import "fmt" func main() { input := []int {1,2,3 [ ["A","B","C","E"], ["S","F","C","S"], ["A","D","E","E"], ] [输入1] "ABCCED" [返回1] true [输入2] "ABCS" [返回2] false [解法] 这个题目的解点是第i个元素的上下左右是不是下一个元素,遍历整个字符串,当遍历到第i个字符串的时候,需要在上一个字母的坐标周围(上下左右)找到第i个字母

    48620发布于 2021-01-12
  • 来自专栏机器人课程与技术

    ROS 2 感知节点的硬件加速

    ROS 2 提供了各种预构建的节点(Components更具体地说),可用于轻松构建感知管道。 之前的一篇文章介绍了硬件加速如何帮助加速 ROS 2 计算图(包括感知图)。 关于感知模块在 ROS 2 节点中对硬件加速进行基准测试 为了比较 ROS 2Nodes在 FPGA 和 GPU 加速器上的感知任务,我们选择 AMD 的 Kria KV260 FPGA 板和 NVIDIA 例如,为了Node使用Harris Corner Detector算法比较 ROS 2 感知,我们利用[2]和[3]分别用于FPGA和GPU比较。 跨感知 ROS 2 节点获得的结果表明FPGA 在机器人感知方面的性能优于 GPU,速度差异达 500 倍在流行的算法中,例如定向梯度直方图 (HOG): 在测量功耗的同时,我们还观察到FPGA 进一步改进 ROS 2 需要将计算技术以正确的方式组合在一起,并针对每项任务:CPU、GPU 和 FPGA。如果您对找到正确的组合感兴趣,请关注ROS 2 硬件加速工作组。

    1.1K40编辑于 2022-05-01
  • 来自专栏强化学习专栏

    聚类算法2)--- ISODATA算法

    文章分类在AI学习笔记: AI学习笔记(8)---《聚类算法2)--- ISODATA算法》 聚类算法2)--- ISODATA算法 一、 ISODATA算法 ISODATA 其他聚类算法见: 聚类算法(1)---最大最小距离、C-均值算法 1.1算法原理 SODATA算法采用迭代的方式动态地更新簇的数目和簇的中心,根据设定的参数来调整簇的数量以及样本点与簇之间的距离等 (4)簇分裂:重复执行步骤2和步骤3,直至满足终止条件(如簇中心不再发生大的变化、达到最大迭代次数等)。 算法注意事项 ISODATA算法相比于传统的K-means算法增加了簇合并和簇分裂的步骤,这使得算法能够动态地调整簇的数量和形状,适应数据的复杂性。 三、 ISODATA算法实验结果 相关参数设置: 参数类型 数值 预期的聚类数 2 初始聚类中心个数 3 每类的最小样本数 3 标准差阈值 0.1 最小中心距离 2 每次可合并的最多对数 3 迭代次数

    53110编辑于 2024-12-03
  • 来自专栏OpenMMLab

    试试这个加速算法

    我们都知道,在视频上训练深度网络 3D CNN 比训练 2D CNN 图像模型的计算量更大,可能要大一个数量级。 今天我们将解读该篇论文,带领大家一起了解 Multigrid 训练加速算法的具体细节。 目前 MMAction2 v0.22.0 已经支持了 Multigrid 训练加速策略,接下来我们将带领大家一起学习 Multigrid 在 MMAction2 的使用方法。 MMAction2 的使用方法✦ MMAction2 目前支持了 SlowFast 模型在 Kinetics400 数据集上的 Multigrid 训练加速策略。 如果大家想要进行更深入地学习,可以借助我们 MMAction2算法库,非常欢迎大家来使用,Star, Fork 和 PR !

    68340编辑于 2022-04-09
领券