cpu参数

Linux stress 命令

为君一笑 提交于 2020-01-31 06:04:21
stress 命令主要用来模拟系统负载较高时的场景,本文介绍其基本用法。文中 demo 的演示环境为 ubuntu 18.04。 基本语法 语法格式: stress <options> 常用选项: -c, --cpu N 产生 N 个进程,每个进程都反复不停的计算随机数的平方根 -i, --io N 产生 N 个进程,每个进程反复调用 sync() 将内存上的内容写到硬盘上 -m, --vm N 产生 N 个进程,每个进程不断分配和释放内存 --vm-bytes B 指定分配内存的大小 --vm-stride B 不断的给部分内存赋值,让 COW(Copy On Write)发生 --vm-hang N 指示每个消耗内存的进程在分配到内存后转入睡眠状态 N 秒,然后释放内存,一直重复执行这个过程 --vm-keep 一直占用内存,区别于不断的释放和重新分配(默认是不断释放并重新分配内存) -d, --hadd N 产生 N 个不断执行 write 和 unlink 函数的进程(创建文件,写入内容,删除文件) --hadd-bytes B 指定文件大小 -t, --timeout N 在 N 秒后结束程序 --backoff N 等待N微妙后开始运行 -q, --quiet 程序在运行的过程中不输出信息 -n, --dry-run 输出程序会做什么而并不实际执行相关的操作 -

Java并发67问

守給你的承諾、 提交于 2020-01-31 04:00:54
1. 并发和并行 2. 进程和线程 对于操作系统来说,一个任务就是一个进程(Process),比如打开一个浏览器就是启动一个浏览器进程,打开一个记事本就启动了一个记事本进程,打开两个记事本就启动了两个记事本进程,打开一个Word就启动了一个Word进程。 而在多个进程之间切换的时候,需要进行上下文切换。但是上下文切换势必会耗费一些资源。于是人们考虑,能不能在一个进程中增加一些“子任务”,这样减少上下文切换的成本。比如我们使用Word的时候,它可以同时进行打字、拼写检查、字数统计等,这些子任务之间共用同一个进程资源,但是他们之间的切换不需要进行上下文切换。 在一个进程内部,要同时干多件事,就需要同时运行多个“子任务”,我们把进程内的这些“子任务”称为线程。 随着时间的慢慢发展,人们进一步的切分了进程和线程之间的职责。 把进程当做资源分配的基本单元,把线程当做执行的基本单元,同一个进程的多个线程之间共享资源 3. 类变量,成员变量和局部变量 Java中共有三种变量,分别是类变量、成员变量和局部变量。他们分别存放在JVM的方法区、堆内存和栈内存中 public class Variables { /** * 类变量 */ private static int a ; /** * 成员变量 */ private int b ; /** * 局部变量 * @param c */ public

数组和链表区别?为什么链表查找慢?数组查找快?为什么连续内存就方便查找?

拥有回忆 提交于 2020-01-31 02:14:05
数组与链表的优缺点; 数组: 优点:使用方便 ,查询效率 比链表高,内存为一连续的区域 缺点:大小固定,不适合动态存储,不方便动态添加 链表: 优点:可动态添加删除 大小可变 ,内存可能是不连续内存,链式存储。 缺点:只能通过顺次指针访问,查询效率低 链表和数组的本质差异 1 在访问方式上 数组可以随机访问其中的元素 链表则必须是顺序访问,不能随机访问 2 空间的使用上 链表可以随意扩大 数组则不能 从CPU的角度 CPU 寄存器 – immediate access (0-1个CPU时钟周期) CPU L1 缓存 – fast access (3个CPU时钟周期) CPU L2 缓存 – slightly slower access (10个CPU时钟周期) 内存 (RAM) – slow access (100个CPU时钟周期) 硬盘 (file system) – very slow (10,000,000个CPU时钟周期) 各级别的存储器速度差异非常大,CPU寄存器速度是内存速度的100倍! 这就是为什么CPU产商发明了CPU缓存。 而这个CPU缓存,就是数组和链表的区别的关键所在。 CPU缓存会把一片连续的内存空间读入 ,因为数组结构是连续的内存地址,所以数组全部或者部分元素被连续存在CPU缓存里面,平均读取 每个元素的时间只要3个CPU时钟时间。

苹果CMS cpu跑满占用高开启Redis高速缓存加快访问速度性能调优【转】

╄→гoц情女王★ 提交于 2020-01-30 23:34:55
由于采集的影片数据过多,如果不设置缓存,可能会造成网站访问缓慢,或者CPU消耗过高。随着用户访问量的上升,添加缓存设置是有这个必要的,众所周知,redis作为一款非常优秀的缓存工具,非常适合苹果cmsv10 redis的优点: redis支持简单的k/v类型的数据,还支持list,set,zset,hash等类型 redis支持主从模式应用 redis支持数据持久化,可以将内存中的数据保持在磁盘中,重启的时候可以再次加载进行使用 redis单个value的最大限制是1GB,memcached是1MB 下面的教程适合在宝塔面板下设置完成: 1,来到宝塔面板>>软件商店:安装Redis,安装好即可 其余不用管。 2,然后再找到你的网站环境所使用的php版本点击设置。 3,进入你所使用的php版本设置,安装扩展,安装redis缓存器 4,进入苹果CMS后台,网站参数设置-性能优化,缓存方式设置为Redis,IP:127.0.0.1端口:6379然后测试连接 连接成功代表能正常使用该缓存,然后开启: 数据缓存/页面缓存(如下图) 5,最后一步非常重要,那就是重载php配置,重启网站才能生效,小伙伴们别忘啦! 来源: CSDN 作者: Hello World程序员 链接: https://blog.csdn.net/qq_27500493/article/details/104118279

我的第一次diy装机记录——小白的配置篇

 ̄綄美尐妖づ 提交于 2020-01-30 10:12:32
工欲善其事,必先利其器 相对于IT人来说,电脑是个好东西,应该是第二个除了手机陪伴我们最长的东西。今年4月份来的杭州,留下了那款陪我征战4年的笔记本,没有电脑,下班后的夜晚索然无味,身心的需求也日渐强盛。。。 一,台式机 or 笔记本? 有需求就得有解决方案,分析一下两个的区别: 1,便携性:台式机笨重不便于携带;笔记本轻巧说走就走,合适经常出差的 2,性能:两者都有高低之分,不过笔记本散热没台式好 3,价格:一般同等配置的笔记本要比台式机贵点,毕竟多了块屏幕 。。。 所以作为家境贫寒的我,又不会经常出差,被台式机的性价比所吸引,虽然后面搬家可能会麻烦一点 二,台式机配置 选择了台式机,那么是选择品牌整机还是diy一台,这是个问题! 作为一个千翻(折腾)的测试员,简单纯粹,当然diy啊,因为整机是没有灵魂的! 接下来准备该配置了,一般来说,什么配置由使用需求决定。不要最好,只要更好。那么中上级别的配置怎么选择: (网上资料很多,以下仅供参考) 1,CPU cpu相当于人类的大脑,一般来说频率越高,脑袋瓜越灵活。cpu分Intel和AMD两个阵营,我截个cpu天梯图如下,越靠上的越牛逼,问Intel和AMD的谁最好?(就像问什么语言是世界上最好的编程语言?) 我选的是Ryzen 5 2600x,买新不买旧,主要是性价比高。 2,主板 主板就相当于人体的骨骼系统

Intel CPU

寵の児 提交于 2020-01-30 08:29:17
Intel旗下 赛扬(Celeron)——桌面低端 奔腾(Pentium)—— 桌面中端 酷睿 (Core)——桌面高端 至强(Xeon)——服务器中端 安腾(Itanium)——服务器高端 凌动(Atom) ——移动平台 现在市场的CPU有T系列、P系列、E系列、还有i3、i5、i7。 1,T系列双核本。包括奔腾双核和酷睿双核,2以下的,比如T2140,是奔腾双核。2以上,T5800、T9600,数字越大功能越强。当然还有,酷睿双核要比奔腾双核好,奔腾的时代已经过去了。 2,P系列,也是inter酷睿双核的升级版,旨在减少功耗。同数字的P要好于同数字的T,比如P8600好于T8600。 3,E系列,同T一样,是inter双核,也包括奔腾双核和酷睿双核,但是应用于台式机。 关于功能 i7>i5>i3>(P>T) 至于E,它是和P、T同一个时代的产物,主要看主频、缓存这些参数。 P系列:笔记本的CPU,性能强于T系列 T系列:为笔记本CPU,大体为后边数字越大性能越强 Q系列:英特尔桌面平台最早推出的4核产品,不是原生4核心,相当于只是将两个 酷睿双核CPU封装在一起 E系列:桌面平台CPU,由低端入门奔 腾E系列至酷睿E系列中高端都有 Q是指台式的45nm和65nm酷睿四核CPU E是指台式的65nm酷睿双核CPU(如E6300) 和台式的65nm的奔腾双核CPU(如E2160)

Spark性能调优-集群资源分配策略

懵懂的女人 提交于 2020-01-30 06:28:51
展开 开发完成Spark作业之后,我们在运行Spark作业的时候需要为其配置一些资源参数,比如num-executors,executor-memory等,这些参数基本上都是可以在spark-submit命令中作为参数设置,但是如何设置合适的参数值是需要我们权衡考虑的(集群资源,调优经验,任务大小等)。参数设置的不合适往往会导致集群资源得不到有效的利用,设置的太大可能会导致资源不够而引发异常,太小的话会使得闲置的资源得不到有效利用,作业运行的极为缓慢。所以,如何合理有效的分配Spark作业资源是需要Spark学习者重点考虑的。下面将一些理论知识结合自己的实践进行讲解。 集群资源情况 我们在为自己的Spark作业设置资源参数的时候,需要对公司的集群资源使用情况有一个较为清晰的了解,主要了解以下几个方面: (1)集群总体情况 公司集群的整体配置信息,比如总内存,内存使用情况,节点数等,对集群的资源有一个整体的认识。 可以从Yarn页面来了解集群整体情况,如红线圈出的一些重要信息: (2)资源队列配置 一般使用资源管理器,比如Yarn,都会设置一些资源队列,比如Hadoop,Spark,default队列等。这里以讯飞公司情况为例讲解,讯飞使用Yarn资源管理器,这里采用Capacity Scheduler任务调度模式,设置了两个资源队列:default和Spark

NUMA特性禁用

寵の児 提交于 2020-01-29 22:03:22
numa把一台计算机分成多个节点(node),每个节点内部拥有多个CPU,节点内部使用共有的内存控制器,节点之间是通过互联模块进行连接和信息交互。 因此节点的所有内存对于本节点所有的CPU都是等同的,对于其他节点中的所有CPU都不同。因此每个CPU可以访问整个系统内存,但是访问本地节点的内存速度 最快(不经过互联模块),访问非本地节点的内存速度较慢(需要经过互联模块),即CPU访问内存的速度与节点的距离有关,该距离成为Node Distance。 查看当前numa的节点情况: numactl --hardware 节点之间的距离(Node Distance)指从节点1上访问节点0上的内存需要付出的代价的一种表现形式。 Numa内存分配策略有一下四种: 缺省default:总是在本地节点分配(当前进程运行的节点上)。 绑定bind:强制分配到指定节点上。 交叉interleavel:在所有节点或者指定节点上交叉分配内存。 优先preferred:在指定节点上分配,失败则在其他节点上分配。 查看当前系统numa策略: numactl --show 因为numa默认的内存分配策略是优先在进程所在CPU的本地内存中分配,会导致CPU节点之间内存分配不均衡, 当某个CPU节点内存不足时,会导致swap产生,而不是从远程节点分配内存,这就是swap insanity现象。

计算机组成:输入输出系统

老子叫甜甜 提交于 2020-01-29 18:22:09
输入输出系统 通道可以看做是DMA的升级版,通道有自己的控制器甚至是存储器、内存 通道可以执行由通道指令编写的程序,由操作系统完成 如果使用通道,就不是连接接口了,而是连接设备管理器 I/O处理机可以使用微处理器甚至直接使用和主处理器相同的处理器来做,当然这就不是家用电脑的范畴了,强大的I/O处理机甚至在没有IO工作时,可以作为主机的处理器来使用 I/O和主机的连接方式 统一编址:将io地址看成内存地址的一部分。这种方式实现了io和内存的统一不需要单独的io指令,CPU指令集相对简单,如果内存空间比较大(eg.64位)可以采用这种方式 单独编址: 串行速度慢,但是适合长距离传输 不便于增删设备 外部设备输出的数据可以先缓存到io接口,进行数据格式的转换等操作再输入主机 便于增删设备、采用标准接口,可移植性强 信息传送的控制方式 CPU直接对IO进行管理 缺点就是广为人知的,浪费CPU DMA请求:向CPU申请占用一个存取周期的总线控制权从而将外部设备的数据加载到内存中,这个周期内CPU不能使用总线对内存进行访问,但是这段时间CPU依然可以正常使用(由于CPU会预先取一部分指令,这段时间不能访问内存有可能影响不大) 外部设备简介 主观图像:用户绘制的图像,由点线面构成,就是简单的那种 客观图像:eg.GUI A:模拟信号 D:数字信号 IO接口 为什么使用接口 主机可能使用并行传输

性能监视器- Performance Monitor

时间秒杀一切 提交于 2020-01-29 13:53:27
转载: http://kms.lenovots.com/kb/article.php?id=7045 Windows 性能监视器的基本指标(CPU,内存,硬盘参数) 作为一个系统工程师来说,要看懂监控的数据至关重要,关系着优化和分析出现的问题,因此,今天给出Windows 性能监视器的一些基本指标(CPU,内存,硬盘参数),希望对大家将来优化和分析问题提供帮忙。 Windows -Processor 指标名称 指标描述 指标范围 指标单位 CPU利用率 (% Processor Time) % Processor Time指处理器执行非闲置线程时间的百分比。这个计数器设计成用来作为处理器活动的主要指示器。它通过在每个时间间隔中衡量处理器用于执行闲置处理线程的时间,并且用100%减去该值得出。可将其视为范例间隔用于做有用工作的百分比。 根据应用系统情况,在80%±5%范围内波动为宜。过低,则服务器CPU利用率不高;过高,则CPU可能成为系统的处理瓶颈。 % 中断率 (Interrupts/sec.) 每秒钟设备中断处理器的次数。在完成一个任务或需要注意时,装置会发出中断讯号给处理器。可以产生中断的装置包括系统定时器、鼠标、数据通讯联机、网络卡以及其它的外部装置。在中断过程中,一般的执行绪执行将被暂停,而且一个中断可以使处理器切换到另一个具有较高优先等级的执行绪