MxNet系列——how_to——perf

2023-05-16

博客新址: http://blog.xuezhisd.top
邮箱:xuezhisd@126.com


性能

下面是一些技巧,以尽可能的获取MXNet的最佳性能。

数据

对于输入数据,需要注意以下内容:

  • 数据格式。尽量使用 rec 格式。
  • 解码。MXNet默认使用4个线程对图像进行解码。这对于每秒钟解码1000张图像来说,已经足够了。但如果你的CPU性能很差,或你的GPU性能很高,你可以增加线程数。
  • 存储位置。任何的本地或分布式文件系统(HDFS, Amazon S3)都可以。但当多个设备同时从网络文件系统(NFS)读取数据时,就会出现问题。
  • 使用较大的批。我们一般使用能填满GPU内存的最大批。如果批大小的值太大,会减慢收敛速度。例如,对于CIFAR10来说,安全的批大小大约为200;然而对于ImageNet1000来说,批大小的值可以超过1000。

后端

  • 使用一个快速的线性代数计算库(BLAS):比如,openblas, atlas, 或 MKL。只有使用CPU时,这一条才是必要的。如果使用GPU的话,强烈建议使用 CUDNN。
  • 如果使用多个GPU,选择合适的 kvstore。需要更多信息,请查看 doc/developer-guide/multi_node.md。
  • 对于单个设备,默认值 local 一般已经足够了。对于大于100 MB的网络模型,比如 AlexNet和VGG,你可能会希望使用 local_allreduce_devicelocal_allreduce_device 比其它设置获取更多的GPU内存。
  • 对于多个设备,首先尝试使用 dist_sync。如果模型非常大,或正在使用大量的设备,你可能会希望使用 dist_async
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

MxNet系列——how_to——perf 的相关文章

  • 测试 使用 perf 进行性能分析时如何获取准确的调用栈

    测试 使用 perf 进行性能分析时如何获取准确的调用栈 ifonly 2020年02月27日 101 次阅读 目录 perf 是 Linux 下重要的性能分析工具 xff0c perf 可以通过采样获取很多性能指标 xff0c 其中最常用
  • how to solveE:Unmet dependencies.Try‘apt --fix ^^^^^

    span class token function sudo span span class token function apt span span class token function install span span class
  • How do I install Active Directory on my Windows Server 2003 server?

    How do I install Active Directory on my Windows Server 2003 server by Daniel Petri January 8 2009 Printer Friendly Versi
  • HOW TO install nam for ns2 on debian

    Debian is convinent to install software packages for the tool aptl Like many other packages we can use apt get install n
  • react性能优化

    写在前面的话 要想解决问题 首先得找到问题的根源 所以 说起性能分析 还是要从其生命周期和渲染机制说起 1 渲染机制 react的组件渲染分为初始化渲染和更新渲染 在初始化渲染的时候会调用根组件下的所有组件的render方法进行渲染 但是当
  • 配置MXNET、Pytorch、Tensorflow环境详细教程

    最近学习计算机视觉 用了两天配置了三个框架的环境 配置过程可谓是十分艰辛 特此写个博客来记录配置过程 等忘记了可以回来看看 无论配置何种框架的环境 都离不开一个宝贝应用 anaconda 这是一个配置虚拟环境的宝贝应用 有着无限可能 当然
  • How to use jupyterlab in Ubuntu 22.04

    How to use jupyterlab in Ubuntu 22 04 Install Start Stop Install lwk qwfys pip install jupyterlab upgrade i http mirrors
  • MXNET下载训练好的模型

    MXNet中有很多训练好的模型 直接在网页上下载一直报错 后来在https github com apache incubator mxnet blob master example image classification common
  • ubuntu14.04安装CUDA7.0、CUDNN7.0详细步骤

    一 安装CUDA7 0 CUDA 7 0在Linux下的安装步骤参见官网手册 CUDA Getting Started Linux 其中提及了 run deb 等安装 1 检查你的电脑是否支持CUDA 检查GPU是否支持 输入如下命令 如果
  • PMU x86-64 性能计数器未显示在 AWS 下的性能中

    我正在针对特定应用程序运行 C 基准测试 在此测试中 我在关键部分之前打开性能计数器文件 NR perf event open syscall 继续该部分 然后在读取指定的指标 指令 周期 分支 缓存未命中等 之后 我验证了这需要在 sud
  • perf-report显示CPU寄存器的值

    我跟随这个文件并使用perf record with intr regs ax bx r15 尝试使用 PEBS 记录记录其他 CPU 寄存器信息 但是我如何从 perf data 查看这些信息 原来的命令是perf report 并且只显
  • 记录 Linux 中任何可执行文件/进程的所有内存访问

    我一直在寻找一种方法来记录 Linux 中进程 执行的所有内存访问 我知道之前有人就这个话题提出过这样的问题 记录Linux中整个系统的内存访问足迹 但我想知道是否有任何非仪器工具可以执行此活动 我是不寻找 QEMU VALGRIND为此目
  • perf中的时间戳是什么意思?

    我想使用 perf 来测量函数的实际执行时间 perf script 命令给出调用函数时的时间戳 Xorg 1523 001 25712 423702 probe sock write iter ffffffff95cd8b80 时间戳字段
  • 了解 lfence 对具有两个长依赖链的循环的影响,以增加长度

    我正在玩代码这个答案 https stackoverflow com a 50496379 5801661 稍微修改一下 BITS 64 GLOBAL start SECTION text start mov ecx 1000000 loo
  • Linux perf 中的运行时间和报告的周期计数

    我在 4 核 Intel CPU 每个核心 1 个线程 上运行了单线程矩阵乘法 但 perf 中的数字没有意义 Performance counter stats for system wide 31 728 397 287 cpu cyc
  • DRAM 访问的性能计数器

    我想找回DRAM 存取次数在我的应用程序中 准确地说 我需要区分数据和代码访问之间 该处理器是一个Intel R Core TM i7 4720HQ CPU 2 60GHz Haswell 基于英特尔软件开发人员手册 第 3 卷 https
  • 使用 MXnet 时如何保存模型

    我正在使用 MXnet 训练 CNN 在 R 中 并且可以使用以下代码训练模型 不会出现任何错误 model lt mx model FeedForward create symbol network X train iter ctx mx
  • 计算 Amd Zen 2 处理器上的 L3 缓存访问事件

    我试图找出与 perf stat 命令一起使用的事件来计算 AMD Zen 2 处理器上的 L3 缓存访问次数 根据 PPR http developer amd com wordpress media 2017 11 54945 PPR
  • 有没有办法使用 perf 工具查找流程中各个功能的性能?

    我正在尝试在流程中实现各个功能的性能 我该如何使用 perf 工具来做到这一点 还有其他工具吗 例如 假设 main 函数调用函数 A B C 我想分别获得主要功能以及功能 A B C 的性能 有没有一个很好的文档来了解 perf 源代码
  • linux perf:如何解释和查找热点

    我尝试了linux perf https perf wiki kernel org index php Main Page今天很实用 但在解释其结果时遇到了困难 我习惯了 valgrind 的 callgrind 这当然是与基于采样的 pe

随机推荐

  • PCL系列——拼接两个点云

    博客新址 http blog xuezhisd top 邮箱 xff1a xuezhisd 64 126 com PCL系列 PCL系列 读入PCD格式文件操作PCL系列 将点云数据写入PCD格式文件PCL系列 拼接两个点云PCL系列 从深
  • PCL系列——从深度图像(RangeImage)中提取NARF关键点

    博客新址 http blog xuezhisd top 邮箱 xff1a xuezhisd 64 126 com PCL系列 PCL系列 读入PCD格式文件操作PCL系列 将点云数据写入PCD格式文件PCL系列 拼接两个点云PCL系列 从深
  • PCL系列——如何可视化深度图像

    博客新址 http blog xuezhisd top 邮箱 xff1a xuezhisd 64 126 com PCL系列 PCL系列 读入PCD格式文件操作PCL系列 将点云数据写入PCD格式文件PCL系列 拼接两个点云PCL系列 从深
  • PCL系列——如何使用迭代最近点法(ICP)配准

    博客新址 http blog xuezhisd top 邮箱 xff1a xuezhisd 64 126 com PCL系列 PCL系列 读入PCD格式文件操作PCL系列 将点云数据写入PCD格式文件PCL系列 拼接两个点云PCL系列 从深
  • PCL系列——如何逐渐地配准一对点云

    博客新址 http blog xuezhisd top 邮箱 xff1a xuezhisd 64 126 com PCL系列 PCL系列 读入PCD格式文件操作PCL系列 将点云数据写入PCD格式文件PCL系列 拼接两个点云PCL系列 从深
  • PCL系列——三维重构之泊松重构

    博客新址 http blog xuezhisd top 邮箱 xff1a xuezhisd 64 126 com PCL系列 PCL系列 读入PCD格式文件操作PCL系列 将点云数据写入PCD格式文件PCL系列 拼接两个点云PCL系列 从深
  • PCL系列——三维重构之贪婪三角投影算法

    博客新址 http blog xuezhisd top 邮箱 xff1a xuezhisd 64 126 com PCL系列 PCL系列 读入PCD格式文件操作PCL系列 将点云数据写入PCD格式文件PCL系列 拼接两个点云PCL系列 从深
  • PCL系列——三维重构之移动立方体算法

    博客新址 http blog xuezhisd top 邮箱 xff1a xuezhisd 64 126 com PCL系列 PCL系列 读入PCD格式文件操作PCL系列 将点云数据写入PCD格式文件PCL系列 拼接两个点云PCL系列 从深
  • 解决Ubuntu中文显示为乱码

    博客新址 http blog xuezhisd top 邮箱 xff1a xuezhisd 64 126 com 1 安装所需软件 sudo apt get install zh autoconvert sudo apt get insta
  • hexo教程系列——hexo安装教程

    博客新址 http blog xuezhisd top 邮箱 xff1a xuezhisd 64 126 com 本文详细描述了如何在Github上 xff0c 使用hexo部署博客 安装Hexo 安装node js node js官方下载
  • Python中类成员函数均为虚函数的理解

    python中类成员函数均为虚函数 我们可以通过下面的函数见识其威力 class A def foo self print 39 a 39 class B A def foo self print 39 b 39 for x in A B
  • MxNet系列——Windows上安装MxNet

    博客新址 http blog xuezhisd top 邮箱 xff1a xuezhisd 64 126 com 开发环境 操作系统 xff1a Win7 64bit C 43 43 编译器 xff1a Visual Studio 2010
  • Eigen教程1 - 基础

    博客新址 http blog xuezhisd top 邮箱 xff1a xuezhisd 64 126 com 固定大小的矩阵和向量 参考链接 xff1a http eigen tuxfamily org dox 2 0 Tutorial
  • Eigen教程2 - 入门

    博客新址 http blog xuezhisd top 邮箱 xff1a xuezhisd 64 126 com 安装Eigen 无需安装 只需将Eigen位置添加到include路径中 Demo 1 MatrixXd xff0c X表示动
  • Eigen教程3 - 稀疏矩阵操作

    博客新址 http blog xuezhisd top 邮箱 xff1a xuezhisd 64 126 com 稀疏矩阵操作 操作和求解稀疏问题需要的模块 xff1a SparseCore SparseMatrix 和 SparseVec
  • Eigen教程4 - 稀疏矩阵快速参考指南

    博客新址 http blog xuezhisd top 邮箱 xff1a xuezhisd 64 126 com 本文对稀疏矩阵SparseMatrix的主要操作进行了总结 首先 xff0c 建议先阅读 Eigen教程2 稀疏矩阵操作 关于
  • Eigen教程5 - 求解稀疏线性方程组

    博客新址 http blog xuezhisd top 邮箱 xff1a xuezhisd 64 126 com Eigen中有一些求解稀疏系数矩阵的线性方程组 由于稀疏矩阵的特殊的表示方式 xff0c 因此获得较好的性能需要格外注意 查看
  • Eigen教程6 - Matrix-free solvers

    博客新址 http blog xuezhisd top 邮箱 xff1a xuezhisd 64 126 com Matrix free solvers 像ConjugateGradient 和 BiCGSTAB这样的迭代求解器可以用在 m
  • Eigen教程7 - Eigen和Matlab的比较

    博客新址 http blog xuezhisd top 邮箱 xff1a xuezhisd 64 126 com Eigen和Matlab比较 参考 http eigen tuxfamily org dox AsciiQuickRefere
  • MxNet系列——how_to——perf

    博客新址 http blog xuezhisd top 邮箱 xff1a xuezhisd 64 126 com 性能 下面是一些技巧 xff0c 以尽可能的获取MXNet的最佳性能 数据 对于输入数据 xff0c 需要注意以下内容 xff