首页 > 其他分享 >用pytorch 2.1 加速 numpy 代码

用pytorch 2.1 加速 numpy 代码

时间:2023-10-23 19:33:31浏览次数:43  
标签:10 means pred pytorch time np 2.1 numpy

brew install libomp
python test_np.py

image

  • test_np.py 代码如下
import time
import numpy as np

def kmeans(X, means):
    return np.argmin(np.linalg.norm(X - means[:, None], axis=2), axis=0)

t1 = time.time()
npts = 10_000_000
X = np.repeat([[5, 5], [10, 10]], [npts, npts], axis=0)
X = X + np.random.randn(*X.shape)  # 2 distinct "blobs"
means = np.array([[5, 5], [10, 10]])
np_pred = kmeans(X, means)
t2 = time.time()
import torch
compiled_fn = torch.compile(kmeans)
t3 = time.time()
compiled_pred = compiled_fn(X, means)
t4 = time.time()
assert np.allclose(np_pred, compiled_pred)
print(t2 - t1 , '时间torch = ' ,  t4 - t3 )

标签:10,means,pred,pytorch,time,np,2.1,numpy
From: https://www.cnblogs.com/bregman/p/17783268.html

相关文章

  • Python网页应用开发神器fac 0.2.10版本新功能介绍
    fac项目地址:https://github.com/CNFeffery/feffery-antd-components欢迎star支持⭐大家好我是费老师,由我开源维护的Python网页通用组件库fac前不久更新至0.2.10新版本,使用下列命令可快速完成更新:pipinstallfeffery-antd-components-U-ihttps://mirrors.aliyun.com/p......
  • pytorch(10.5) Transformer 用到视觉模块
    ViT|VisionTransformer|理论+代码_哔哩哔哩_bilibili   1不用卷积神经网络那些东西(CNN)了全部用Transforme 。2大规模数据训练,小规模数据应用。3效果相当计算训练资源更少。 转换思想224*224像素图像-单个像素(视为一个词token)-16*16个像素图像块patches(......
  • 《动手学深度学习 Pytorch版》 10.1 注意力提示
    10.1.1生物学中的注意力提示“美国心理学之父”威廉·詹姆斯提出的双组件(two-component)框架:非自主性提示:基于环境中物体的突出性和易见性自主性提示:受到了认知和意识的控制10.1.2查询、键和值注意力机制与全连接层或汇聚层区别开来的元素:是否包含自主性提示在......
  • 1.参考例5.2.1,设计一个序列检测器。功能是检测出串行输入数据Sin中的4位二进制序列010
    设计块:moduleDetector2(inputCP,Sin,nCR,outputregOut);reg[1:0]Current_state,Next_state;parameterS0=2'b00,S1=2'b01,S2=2'b10,S3=2'b11;always@(posedgeCP,negedgenCR)begin if(~nCR)   begin    Current_state......
  • Ubuntu 22.10 阿里云源
    Ubuntu22.10更换阿里云源sudovim/etc/apt/sources.list```debhttp://mirrors.aliyun.com/ubuntu/kineticmainrestricteduniversemultiversedeb-srchttp://mirrors.aliyun.com/ubuntu/kineticmainrestricteduniversemultiversedebhttp://mirrors.aliyun.com/ubunt......
  • Numpy填充或截断数组到固定长度
    首先我们先了解数组对于列表的优势由于在数组中所有的数据类型都是一样的所以,数组的运算效率相对于列表来说是快得多通过效率对比可以发现,数组处理数据的效率要远远高于列表的我们再来介绍如何截断截断很简单,填充使用numpy.pad()numpy.padnp.pad()的参考文档:https://numpy.org/doc......
  • 模拟集成电路设计系列博客——3.2.1 恒定固定跨导电路
    3.2.1基本恒定跨导电路我们知道晶体管的跨导可能是模拟放大器中最重要的参数,因此必须要保持稳定。其稳定性可以通过[Steininger,1990]首次采用的电路来实现,该电路将晶体管的跨导匹配到一个电阻的电导上。作为结果,对于一阶效应来说,晶体管的跨导独立于电源电压以及工艺和温度误差......
  • windows下的深度学习环境软件版本(cuda/cudnn/pytorch)
    为了方便多个深度学习框架的环境配置,推荐使用anoconda进行搭建。1.anaconda/miniconda下载地址anacoonda官方下载地址:FreeDownload|Anacondaminiconda官方下载地址: LatestMinicondainstallerlinksbyPythonversion—minicondadocumentation清华镜像源的下载地......
  • Pytorch深度学习环境配置 | NVIDIA-driver + Pytorch + miniconda
    本贴为实战,看理论请移步【地表最强】深度学习环境配置攻略|【nvidia-driver】,【cudatoolkit】,【cudnn】,【pytorch】为了验证我的环境配置方法没有问题,我特意租了两小时云服务器来从0配置环境。云服务器厂家:Ucloudubuntu22.043090*21.装NVIDIA-driver参考:http......
  • dolphinscheduler报错:Connect to 192.168.xx.xx:8088 [192.168.xx.xx/110.173.196.1]
    报错信息:在dophin中抽取mysql的数据到hive中报错[ERROR]2023-10-2015:33:10.461org.apache.dolphinscheduler.common.utils.HttpUtils:[73]-Connectto192.168.xx.xx:8088[192.168.xx.xx/110.173.196.1]failed:connecttimedoutorg.apache.http.conn.ConnectTimeout......