# @name SMP CPU Affinity
# @desc Check that processes assigned to multiple CPUs complete without errors
# @requires smp
# @setup_requires

SMP_S_FUNC_CPUAFFINITY_NO-LB_CORE1
source 'common.sh';  num_cores=`cat /sys/devices/system/cpu/online`;
echo $num_cores | grep -E '[[:digit:]]+\-' > /dev/null &&
multi_run_processes.sh -s "dd if=/dev/urandom of=/dev/null bs=1M
count=10" -l "-n 10 -a 0x1 -d 0"

SMP_S_FUNC_CPUAFFINITY_NO-LB_CORE2
source 'common.sh';  num_cores=`cat /sys/devices/system/cpu/online`;
echo $num_cores | grep -E '[[:digit:]]+\-' > /dev/null &&
multi_run_processes.sh -s "dd if=/dev/urandom of=/dev/null bs=1M
count=10" -l "-n 10 -a 0x2 -d 0"

SMP_S_FUNC_CPUAFFINITY_LB
source 'common.sh';  num_cores=`cat /sys/devices/system/cpu/online`;
echo $num_cores | grep -E '[[:digit:]]+\-' > /dev/null &&
multi_run_processes.sh -s "dd if=/dev/urandom of=/dev/null bs=1M
count=10" -l "-n 20 -a 0xFFFFFFFF -d 0"

 
multi_run_processes.sh -s "dd if=/dev/urandom of=/dev/null bs=1M count=10" -l "-n 10 -a 0x1 -d 0"
 
# usage:
# multi_run_processes.sh <process list> [<process list2> ...] -v
#   where        -v is an optional flag and when present indicates that priority
#                 of two processes has to be verified using time taken
#                 for process execution
#
#                 process_list= -s "#-separated commands" -l "-n <num_instances>
#                        -a <cpu affinity mask> -d <inter-process start delay>
#                        -p <priority> -r <realtime priority>"
 
-s "dd if=/dev/urandom of=/dev/null bs=1M count=10"
-l "-n 10 -a 0x1 -d 0"
 
 
run_processes.sh -c  "dd if=/dev/urandom of=/dev/null bs=1M count=10" -n 10 -a 0x1 -d 0
 
# usage: run_processes.sh -c <"#-separated commands">
#                  [-n <num_of_instances> ]
#                  [-a <cpu_affinity_mask>]
#                  [-d <delay_in_sec> ]
#                  [-p <priority> ]
#                  [-r <realtime priority> ]
#                  [-w] On first failure, wait for all processes
# if cpu affinity is set, then taskset is used to spawn the processes
 
[-a <cpu_affinity_mask>]
在哪个CPU上运行,二进制就在哪一个上赋值为1
那么例如出现pid 8987's current affinity mask: ff   ff是16进制,转换二进制:11111111,意思就是在8个CPU上运行!
比如说16进制的40,那么转换二进制01000000,意思就是在第7块CPU上运作
 

ltp-ddt smp_cpu_affinity的更多相关文章

  1. LTP随笔——本地调用ltp之ltp4j

    关于ltp本地调用的相关参考请见LTP的Git项目:https://github.com/HIT-SCIR 以下以/home/lion/Desktop路径为例下面教程中出现的具体路径以你实际配置的为准 ...

  2. ZH奶酪:自然语言处理工具LTP语言云调用方法

    前言 LTP语言云平台 不支持离线调用: 支持分词.词性标注.命名实体识别.依存句法分析.语义角色标注: 不支持自定义词表,但是你可以先用其他支持自定义分词的工具(例如中科院的NLPIR)把文本进行分 ...

  3. Eclipse DDT

    http://www.eclipse.org/downloads/ https://github.com/DDT-IDE/DDT/blob/latest/documentation/UserGuide ...

  4. ASP.NET中常用的几个李天平开源公共类LTP.Common,Maticsoft.DBUtility,LtpPageControl

    ASP.NET中常用的几个开源公共类: LTP.Common.dll: 通用函数类库     源码下载Maticsoft.DBUtility.dll 数据访问类库组件     源码下载LtpPageC ...

  5. 很好的一篇讲LTP在编解码中的作用的文章

    原文链接 LONG-TERM PREDICTION by: Adit Aviv       Kfir Grichman introduction: The speech signal has been ...

  6. ASP.NET中常用的几个李天平开源公共类LTP.Common,Maticsoft.DBUtility,LtpPageControl (转)

    ASP.NET中常用的几个开源公共类: LTP.Common.dll: 通用函数类库     源码下载Maticsoft.DBUtility.dll 数据访问类库组件     源码下载LtpPageC ...

  7. 编译哈工大语言技术平台云LTP(C++)源码及LTP4J(Java)源码

    转自:编译哈工大语言技术平台云LTP(C++)源码及LTP4J(Java)源码 JDK:java version “1.8.0_31”Java(TM) SE Runtime Environment ( ...

  8. LTP学习

    下载LTP源码和模型文件: https://github.com/linux-test-project/ltp 官方说明文档 http://ltp.readthedocs.org/zh_CN/late ...

  9. LTP 分词算法实践

    参考链接: https://github.com/HIT-SCIR/ltp/blob/master/doc/install.rst http://www.xfyun.cn/index.php/serv ...

  10. ltp工具使用配置

    ltp是一个比较全的自然语言处理工具,可以用它进行分词.词性标注.语法分析等任务. ---- 准备 下载 下载ltp和ltp4j,在cmake官网下载并安装相应版本的cmake,并且下载ant. 构建 ...

随机推荐

  1. php array_search()函数 语法

    php array_search()函数 语法 作用:在数组中搜索某个键值,并返回对应的键名.dd马达生产厂家 语法:array_search(value,array,strict) 参数: 参数 描 ...

  2. unique && stl的全排列

    stl的全排列: 看代码. #include<iostream> #include<cstdio> #include<algorithm> #include< ...

  3. 在成为测试大牛的路上,我推荐BestTest

    BestTest-Python自动化测试9月份班开始招生啦! 网络+现场同步进行,课程新升级,web自动化+接口自动化双管齐下,一线互联网测试开发工程师带你在自动化的世界里自由翱翔! 推荐优惠多多,欢 ...

  4. php面试专题---19、MySQL高可扩展和高可用考点

    php面试专题---19.MySQL高可扩展和高可用考点 一.总结 一句话总结: 要区别分区和分库分表,分区的话对用户是透明的,分库分表的话需要程序员做点事情,主从数据库同步的话借助的是二进制日志 1 ...

  5. Sending form data

    https://developer.mozilla.org/en-US/docs/Learn/HTML/Forms/Sending_and_retrieving_form_data This arti ...

  6. 20150909—Win10系统80端口被System占用

    安装了Windows10系统后,首先是查看80端口是不是被占用, 运行netstat -aon | findstr :80 ,发现pid是4的进程占用着80端口,这还是一个系统进程,kill不掉. 所 ...

  7. 【转载】Spring Boot:常用属性汇总

    附录A.常用应用程序属性 摘自:https://docs.spring.io/spring-boot/docs/current/reference/html/common-application-pr ...

  8. vue-安装及新建一个项目

    1.首先我们需要安装node.js,下载地址是:https://nodejs.org/en/ 之后是node.js的正常安装步骤: 接着打开window+R输入cmd回车进入命令行模块 2.确认nod ...

  9. 在Lua中进行运算符重载

    在C++里面运算符是可以重载的,这一点也是C++比较方便的一个地方.在Lua中其实也是可以模拟出运算符的重载的. 在Lua中table中元素的运算都是和一个叫做元表有关的,在一个table型的变量上都 ...

  10. dp或dfs(01背包问题)

    链接:https://ac.nowcoder.com/acm/contest/993/C来源:牛客网题意:n头牛,给出它们的H高度,问这些牛的高度叠加起来大于等于书架高度,问叠加后的高度与书架的差值最 ...