AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / server / 问题 / 1066053
Accepted
user728899
user728899
Asked: 2021-06-09 03:40:46 +0800 CST2021-06-09 03:40:46 +0800 CST 2021-06-09 03:40:46 +0800 CST

针对不同参数的 CPU/RAM 消耗对脚本性能进行基准测试

  • 772

我有一个图像处理 shell 脚本,可以提供不同的参数集,这些参数都为我产生有效的输出。我正在尝试识别具有最低资源(CPU/RAM)使用率的参数集,因为该脚本将在云上运行。有什么工具可以用来做基准测试吗?我正在寻找可以为我提供脚本使用的总 cpu 周期或我可以比较的任何其他相关数据/指标的东西。

操作系统:Ubuntu 20.04,外壳:BASH

我正在寻找的示例:

magical-benchmark-tool -c pdftoppm -png test.pdf test

输出

time (seconds)   processor cycles   max memory used (MB)    mean memory used (MB)
--------------   ----------------   --------------------    --------------------
19               1253               250                     128

谢谢!

memory-usage cpu-usage
  • 1 1 个回答
  • 85 Views

1 个回答

  • Voted
  1. Best Answer
    p10l
    2021-06-09T04:42:47+08:002021-06-09T04:42:47+08:00

    您没有指定使用哪个 shell,所以我将假设 Bash。


    对于 CPU 使用率,您可以使用strace.

    strace -c script.sh
    

    对于一个简单的 Hello World 脚本

    #!/bin/bash
    echo "Hello World"
    

    输出

    Hello World
    % time     seconds  usecs/call     calls    errors syscall
    ------ ----------- ----------- --------- --------- ----------------
     17.70    0.000253          14        18           mmap
     11.69    0.000167          20         8           openat
      9.59    0.000137           9        14           rt_sigaction
      7.35    0.000105          13         8           fstat
      6.30    0.000090          15         6           mprotect
      5.60    0.000080          10         8           close
      5.32    0.000076          12         6           read
      5.11    0.000073          14         5           stat
      4.90    0.000070          70         1           execve
      3.50    0.000050          10         5           rt_sigprocmask
      2.59    0.000037          37         1           write
      2.24    0.000032          10         3           lseek
      2.24    0.000032          10         3           brk
      2.10    0.000030          10         3         2 ioctl
      1.89    0.000027           9         3         1 fcntl
      1.40    0.000020          20         1           munmap
      1.40    0.000020          20         1         1 access
      1.33    0.000019           9         2           getpid
      1.26    0.000018           9         2           prlimit64
      0.77    0.000011          11         1           dup2
      0.70    0.000010          10         1           sysinfo
      0.70    0.000010          10         1           getppid
      0.70    0.000010          10         1           arch_prctl
      0.63    0.000009           9         1           uname
      0.63    0.000009           9         1           getuid
      0.63    0.000009           9         1           getgid
      0.63    0.000009           9         1           getpgrp
      0.56    0.000008           8         1           geteuid
      0.56    0.000008           8         1           getegid
    ------ ----------- ----------- --------- --------- ----------------
    100.00    0.001429                   108         4 total
    

    对于内存,您可以使用top.
    运行时顶按o并键入 egCOMMAND=bash以显示COMMAND列中等于的条目bash。

    • 0

相关问题

  • 处理完成后创建大文件占用内存

  • 为什么 apache(httpd 进程)使用交换空间?

  • 估计 Linux 上进程所需的 RAM

  • 为什么 Linux 奇怪地报告“空闲”内存?

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    新安装后 postgres 的默认超级用户用户名/密码是什么?

    • 5 个回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve