• taskset使用和说明


    功能描述:查看和设置程序运行在哪些core上
    查看:taskset -p PID
    设置:taskset -c xxx(core) command(执行的命令)
    1,查看机器可以使用的核有哪些
    [root@template ~]# lscpu
    NUMA node0 CPU(s): 0-3
    2,设置程序运行在哪些核上
    [root@template ~]# taskset -c 2,3 screen -dmS vmstat vmstat 1
    3,使用ps查看程序的PID号,然后通过tastset -p PID查看运行在那个核上
    [root@template ~]# taskset -c 2,3 screen -dmS vmstat vmstat 1
    [root@template ~]# ps -ef |grep vmstat
    root 1593 1 0 21:21 ? 00:00:00 SCREEN -dmS vmstat vmstat 1
    root 1594 1593 0 21:21 pts/1 00:00:00 vmstat 1
    root 1599 1569 0 21:21 pts/2 00:00:00 grep --color=auto vmstat
    [root@template ~]# taskset -p 1594
    pid 1594’s current affinity mask: c #1100 (3210)表示位置参数,一个核代表一个位置,一个数代表8个位置,使用的位置放1 ,然后计算值,比如上面1100则为8+4+0+0=12 =c
    [root@template ~]# screen -X -s vmstat quit
    [root@template ~]# taskset -c 0 screen -dmS vmstat vmstat 1
    [root@template ~]# ps -ef |grep vmstat
    root 1606 1 0 21:25 ? 00:00:00 SCREEN -dmS vmstat vmstat 1
    root 1607 1606 0 21:25 pts/1 00:00:00 vmstat 1
    root 1609 1569 0 21:25 pts/2 00:00:00 grep --color=auto vmstat
    [root@template ~]# taskset -p 1607
    pid 1607’s current affinity mask: 1 #在第一个位置 0001=1
    [root@template ~]# screen -X -s vmstat quit
    [root@template ~]# taskset -c 1 screen -dmS vmstat vmstat 1
    [root@template ~]# ps -ef |grep vmstat
    root 1613 1 0 21:26 ? 00:00:00 SCREEN -dmS vmstat vmstat 1
    root 1614 1613 0 21:26 pts/1 00:00:00 vmstat 1
    root 1616 1569 0 21:26 pts/2 00:00:00 grep --color=auto vmstat
    [root@template ~]# taskset -p 1614
    pid 1614’s current affinity mask: 2 #在第2个位置 0010=2

    [root@template ~]# taskset -h
    Usage: taskset [options] [mask | cpu-list] [pid|cmd [args…]]

    Options:
    -a, --all-tasks operate on all the tasks (threads) for a given pid
    -p, --pid operate on existing given pid
    -c, --cpu-list display and specify cpus in list format
    -h, --help display this help
    -V, --version output version information

    The default behavior is to run a new command:
    taskset 03 sshd -b 1024
    You can retrieve the mask of an existing task:
    taskset -p 700
    Or set it:
    taskset -p 03 700
    List format uses a comma-separated list instead of a mask:
    taskset -pc 0,3,7-11 700
    Ranges in list format can take a stride argument:
    e.g. 0-31:2 is equivalent to mask 0x55555555

  • 相关阅读:
    STM32-EXTI中断
    「湖仓一体」释放全量数据价值!巨杉数据库亮相2022沙丘大会
    练习一:用python发邮件
    UVA-1374 旋转游戏 题解答案代码 算法竞赛入门经典第二版
    工作中 常用的linux命令
    XMLHttpRequest拦截请求和响应
    Spring Boot Actuator详解与漏洞利用
    【0基础学Java第七课】-- 类和对象02
    【Azure 应用服务】部署Jar到App Service for Linux,因启动命令路径配置错误而引起:( Application Error 问题
    暴力递归转动态规划(七)
  • 原文地址:https://blog.csdn.net/marc_chen/article/details/125606087