• performanceWindows Performance Monitor is a tool shipped with Windows that can be used to monitor and examine how applications affect computer performance. It can measure real-time server performance ...
performanceWindows Performance Monitor is a tool shipped with Windows that can be used to monitor and examine how applications affect computer performance. It can measure real-time server performance and save the measured values into a log file that can be analyzed later. It enables real time system and SQL Server performance monitoring, tracking the performance impact of applications and services, setting threshold for each monitored metric, and generating an alert or performing a specific action when the defined threshold is exceeded
Windows Performance Monitor是Windows附带的工具，可用于监视和检查应用程序如何影响计算机性能。 它可以测量实时服务器性能，并将测量值保存到日志文件中，以便以后进行分析。 它启用了实时系统和SQL Server性能监视，跟踪应用程序和服务对性能的影响，为每个监视的指标设置阈值以及在超出定义的阈值时生成警报或执行特定操作 Windows Server 2003 had a utility named System Monitor. Later versions – Windows 7, Windows 8, Windows Server 2008 R2, and Windows Server 2012 have Performance Monitor as a part of Performance Monitor, or Reliability and Performance Monitor parent snap-in. Earlier Windows versions had Performance Monitor Wizard – a utility that was not shipped with Windows, so it had to be downloaded and installed additionally
Windows Server 2003具有名为“系统监视器”的实用程序。 更高版本– Windows 7，Windows 8，Windows Server 2008 R2和Windows Server 2012将性能监视器作为性能监视器或可靠性和性能监视器父级管理单元的一部分。 Windows的早期版本具有Performance Monitor Wizard（性能监视器向导）– Windows尚未附带的实用程序，因此必须另外下载并安装它。
The Windows Performance Monitor parent snap-in consists of three elements – Monitoring Tools (this is where Performance Monitor is), Data Collector Sets, and Reports. The focus of this article is on Monitoring Tools Performance Monitor, also known as Performance Monitor or PerfMon
Windows Performance Monitor父管理单元由三个元素组成-监视工具（这是Performance Monitor所在的位置），数据收集器集和报告。 本文的重点是监视工具性能监视器，也称为性能监视器或PerfMon

Performance Monitor provides a wide range of measures that can be monitored. Monitoring the right set of available counters narrows down the problem origin to a specific component or application and enables efficient and quick problem troubleshooting. Some of the performance counters don’t provide enough information when monitored alone. When their values are above the recommended threshold, they don’t clearly indicate performance problems. To be able to determine whether there is a performance problem, other counters should be monitored and their values compared
性能监视器提供了可以监视的多种措施。 监视正确的可用计数器集可以将问题的根源缩小到特定的组件或应用程序，并实现高效，快速的问题排查。 当单独监视某些性能计数器时，它们不能提供足够的信息。 当它们的值超过建议的阈值时，它们并不能清楚地表明性能问题。 为了能够确定是否存在性能问题，应该监视其他计数器并比较它们的值
For example, the Page faults/sec counter shows both hard and soft page faults. Soft page faults don’t affect SQL Server performance, but hard page faults do. That’s why high Page faults/sec values don’t necessarily indicate performance problems. To determine whether that is the case, monitoring another counter that also indicates hard page faults – the Page reads/sec value is recommended. If it is also high, there is most likely a performance problem. To be sure, monitor disk behavior and paging via memory and disk counters, such as Pages Output/sec, Pages Input/sec, Disk Reads/sec, and Avg. Disk Read Bytes/sec
例如， 页面错误/秒计数器同时显示硬页面错误和软页面错误。 软页面错误不会影响SQL Server性能，但硬页面错误会影响SQL Server性能。 这就是为什么高Page Faults / sec值不一定表示性能问题的原因。 要确定是否是这种情况，请监视另一个也指示硬页面错误的计数器-建议“ 页面读取/秒”值。 如果它也很高，则很可能是性能问题。 可以肯定的是，通过内存和磁盘计数器（例如， Pages Output / sec，Pages Input / sec，Disk Reads / sec和Avg）监视磁盘行为和分页。 磁盘读取字节/秒
Without monitoring all necessary counters, the information obtained can be insufficient or misleading for determining the system state and making correct decisions
如果不监视所有必要的计数器，则所获得的信息可能不足或误导您确定系统状态并做出正确的决定
When it comes to selecting the counters, it’s necessary to understand what they represent, what are acceptable values, is there an exact threshold, or is the value determined based on a trend line
在选择计数器时，有必要了解它们代表什么，可接受的值，是否有确切的阈值或根据趋势线确定的值
Performance Monitor provides graphical presentation of the metrics collected by Data Collector Sets and Event Trace Sessions, both in real time and as historical data
性能监视器以图形方式展示了实时和作为历史数据的数据收集器集和事件跟踪会话收集的指标
Besides the Windows performance parameters, Performance Monitor provides a range of parameters useful for SQL Server performance monitoring. On a machine where SQL Server is installed, SQL Server related counters are automatically added to Performance Monitor
除了Windows性能参数外， 性能监视器还提供了一系列可用于SQL Server性能监视的参数。 在安装了SQL Server的计算机上，与SQL Server相关的计数器会自动添加到性能监视器中
性能监视器的工作原理 (How Performance Monitor works)
Performance Monitor presents built-in Windows and application performance counters in easy-to read graphs. It can show live, real time data as well as data stored in *.blg, *.csv, or *.tsv log files. The latter feature makes is useful for performance analysis and determining performance trends. All data can be presented as line graphs, histogram bars, or reports
性能监视器以易于阅读的图形显示内置的Windows和应用程序性能计数器。 它可以显示实时，实时数据以及存储在* .blg，*。csv或* .tsv日志文件中的数据。 后一个功能对于性能分析和确定性能趋势很有用。 所有数据都可以表示为折线图，直方图条形图或报告
The performance counters presented in Performance Monitor can be defined via custom Data Collector Sets
可以通过自定义数据收集器集来定义性能监视器中显示的性能计数器
Data Collector Sets contain performance counters, event trace data, and system configuration information. Performance counters measure system state and activity. Performance Monitor periodically requests the current value of performance counters and represents them graphically, or in the reports. Event trace data is gathered from trace files created by the system or application. Configuration information is obtained from the Windows registry 数据收集器集包含性能计数器，事件跟踪数据和系统配置信息。 性能计数器可测量系统状态和活动。 性能监视器定期请求性能计数器的当前值，并以图形方式或在报告中表示它们。 事件跟踪数据是从系统或应用程序创建的跟踪文件中收集的。 配置信息是从Windows注册表获得的
To be able to set monitored metrics and use all Performance Monitor features, a user has to be a member of the local Administrators group. A member of the Users group can only open saved log files in Performance Monitor and set the graph properties. Real time monitoring is not possible for these users
There are two more user groups specific for this utility: Performance Monitor Users and Performance Log Users. The first one allows viewing real time and saved log files in Performance Monitor and setting the graph properties for both. Creating and modifying Data Collector Sets is not allowed. In addition to the features available for the Performance Monitor Users group users, the Performance Log Users group allows creating and modifying Data Collector Sets, except the NT Kernel trace
此实用程序还有另外两个用户组：性能监视器用户和性能日志用户。 第一个允许在Performance Monitor中查看实时和已保存的日志文件，并设置两者的图形属性。 不允许创建和修改数据收集器集。 除了“性能监视器用户”组用户可用的功能外，“性能日志用户”组还允许创建和修改数据收集器集，NT内核跟踪除外。
性能监视器可以收集哪些信息？ (What information can Performance Monitor gather?)
The counters that can be monitored in Performance Monitor are grouped for easier referencing. The available groups depend on the operating system and applications installed on the monitored machine. Available groups are: Memory, Network Interface, Physical Disk, Process, Processor, Server, System, and many more
可在Performance Monitor中监视的计数器被分组以便于参考。 可用组取决于被监视计算机上安装的操作系统和应用程序。 可用的组是：内存，网络接口，物理磁盘，进程，处理器，服务器，系统等等。
When it comes to SQL Server, counter groups are named MSSQL$SQL<version>:<counter_name>. For SQL Server 2012, there are more than 30 groups. For example, the MSSQL$SQL2012:Databases counter group contains more than 600 counters that monitor data and log file size, growth, truncation, shrinks, percentage and KB of log file used, various metrics about transactions, log cache, log flush, and many more. The MSSQL$SQL2012:Locks group contains more than 100 counters that monitor lock requests, timeouts, wait time, and more on various resources – database files, index rows, catalog information, table, view, stored procedure or other database object, etc. 对于SQL Server，计数器组名为MSSQL$ SQL <版本>：<计数器名称>。 对于SQL Server 2012，有30多个组。 例如，MSSQL $SQL2012：Databases计数器组包含600多个计数器，它们监视数据和日志文件的大小，使用的日志文件的大小，增长，截断，收缩，百分比和KB，有关事务，日志高速缓存，日志刷新和还有很多。 MSSQL$ SQL2012：Locks组包含100多个计数器，这些计数器监视锁定请求，超时，等待时间以及各种资源（数据库文件，索引行，目录信息，表，视图，存储过程或其他数据库对象等）上的更多资源。
While the MSSQL$SQL counters enable detailed and in-depth analysis of the SQL Server performance, the most commonly monitored counters for troubleshooting SQL Server performance issues belong to the Memory, Processor, Physical Disk, and Network Interface groups 虽然MSSQL$ SQL计数器可以对SQL Server性能进行详细的深入分析，但用于故障排除SQL Server性能问题的最常用监视计数器属于“内存”，“处理器”，“物理磁盘”和“网络接口”组。
Each of these groups contains multiple counters. For example, the Memory group contains more than 30 counters among which the most important are Available Bytes, Page Faults/sec, Page reads/sec, Page Writes/sec, Pages Input/sec, Pages Output/sec, and Pages/sec
这些组中的每一个都包含多个计数器。 例如，“内存”组包含30多个计数器，其中最重要的计数器是“ 可用字节”，“页面错误/秒”，“页面读取/秒”，“页面写入/秒”，“页面输入/秒”，“页面输出/秒”和“ 页面/秒”。

Multiple instances are shown for a counter if there are multiple processors on the machine and if tracking the counter per processor makes sense, such as for Processor and Processor Information counters. You can monitor each processor individually, or all instances
如果计算机上有多个处理器，并且跟踪每个处理器的计数器是否有意义（例如，对于“处理器”和“处理器信息”计数器），则将为该计数器显示多个实例。 您可以单独监视每个处理器或所有实例

Although active monitoring makes little overhead, to avoid monitoring the overhead along with the system and application performance, use Performance Monitor to monitor a remote machine
尽管主动监视的开销很小，但为避免监视开销以及系统和应用程序性能，请使用性能监视器来监视远程计算机。
In SQL Server performance tuning using Performance Monitor, we give detailed steps for using Windows Performance Monitor
在使用Performance Monitor进行SQL Server性能调整中 ，我们提供了使用Windows Performance Monitor的详细步骤。
翻译自: https://www.sqlshack.com/windows-performance-monitor-basics/performance
展开全文
• Performance Table For simplicity reason, I only listed the best top1 and top5 accuracy on ImageNet from the papers. Note that this does not necessarily mean one network is better than another when the...
Performance Table
For simplicity reason, I only listed the best top1 and top5 accuracy on ImageNet from the papers. Note that this does not necessarily mean one network is better than another when the acc is higher, cause some networks are focused on reducing the model complexity instead of improving accuracy, or some papers only give the single crop results on ImageNet, but others give the model fusion or multicrop results.

ConvNet: name of the covolution network
ImageNet top1 acc: best top1 accuracy on ImageNet from the Paper
ImageNet top5 acc: best top5 accuracy on ImageNet from the Paper
Published In: which conference or journal the paper was published in.

ConvNet
ImageNet top1 acc
ImageNet top5 acc
Published In

Vgg
76.3
93.2
ICLR2015

-
93.33
CVPR2015

PReLU-nets
-
95.06
ICCV2015

ResNet
-
96.43
CVPR2015

PreActResNet
79.9
95.2
CVPR2016

Inceptionv3
82.8
96.42
CVPR2016

Inceptionv4
82.3
96.2
AAAI2016

Inception-ResNet-v2
82.4
96.3
AAAI2016

Inceptionv4 + Inception-ResNet-v2
83.5
96.92
AAAI2016

RiR
-
-
ICLR Workshop2016

Stochastic Depth ResNet
78.02
-
ECCV2016

WRN
78.1
94.21
BMVC2016

SqueezeNet
60.4
82.5
arXiv2017(rejected by ICLR2017)

GeNet
72.13
90.26
ICCV2017

MetaQNN
-
-
ICLR2017

PyramidNet
80.8
95.3
CVPR2017

DenseNet
79.2
94.71
ECCV2017

FractalNet
75.8
92.61
ICLR2017

ResNext
-
96.97
CVPR2017

IGCV1
73.05
91.08
ICCV2017

Residual Attention Network
80.5
95.2
CVPR2017

Xception
79
94.5
CVPR2017

MobileNet
70.6
-
arXiv2017

PolyNet
82.64
96.55
CVPR2017

DPN
79
94.5
NIPS2017

Block-QNN
77.4
93.54
CVPR2018

CRU-Net
79.7
94.7
IJCAI2018

ShuffleNet
75.3
-
CVPR2018

CondenseNet
73.8
91.7
CVPR2018

NasNet
82.7
96.2
CVPR2018

MobileNetV2
74.7
-
CVPR2018

IGCV2
70.07
-
CVPR2018

hier
79.7
94.8
ICLR2018

PNasNet
82.9
96.2
ECCV2018

AmoebaNet
83.9
96.6
arXiv2018

SENet
-
97.749
CVPR2018

ShuffleNetV2
81.44
-
ECCV2018

IGCV3
72.2
-
BMVC2018

MnasNet
76.13
92.85
CVPR2018

SKNet
80.60
-
CVPR2019

DARTS
73.3
91.3
ICLR2019

ProxylessNAS
75.1
92.5
ICLR2019

MobileNetV3
75.2
-
arXiv2019

Res2Net
79.2
94.37
arXiv2019


展开全文
• 1.6 performance Assessing the performance of computers can be quite challenging. The scale and intricacy of modern software systems, together with the wide range of performance improvement t...

1.6 performance

Assessing the performance  of computers can be quite challenging. The scale and intricacy of modern software systems, together with the wide range of performance improvement techniques employed by hardware designers,have made performance assement much more difficult.
When trying to choose among different computers, performance is an important attribute. Accurately measuring and comparing different computers is critical to purchasers  and therefore to designers. The people selling computers know this as well. Often, salespeople would like you to see their computer in the best possible light, whether or not this light accurately reflects the needs of the purchaser's application. Hence, understanding how best to measure performance and the limitations of performance measurements  is important in selecting a computer.
The rest of this section describes different ways in which performance can be determined; then, we describe the metrics for measuring performance from the viewpoint of both a computer user and a designer. We also look at how these metrics are related and present the classical processor performance equation, which we will use throughout the text.
Defining performance

When we say one computer has better performance than another, what do we mean? Although this question might seem simple, an analogy with passenger airplanes shows how subtle the question of performance can be. Figure 1.14 lists some typical passenger airplanes, together with their cruising speed, range, and capacity. If we wanted to know which of the planes in this table had the best performance, we would first need to define performance. For example, considering different measures of performance,we see that a plane with the highest cruising speed was Concorde (retired from service in 2003), the plane with the longest range is the DC-8, and the plane with the largest capacity is the 747.
Let's suppose we define performance in terms of speed. This still leaves two possible definitions. You could define the fastest plane as the one with the highest cruising speed, talking a single passenger from one point to another in the least time.  If you were interested in transporting 450 passengers from one point to another, however, the 747 would clearly be the fastest, as the last column of the figure show. Similarly,we can define computer performance in several different ways.
If you were running a program on two different  desktop computers, you'd say that the faster one is the desktop computer that gets the job done first. If you were running a datacenter that had several servers running jobs subnitted by many users, you'd say that the faster computer was the one that completed the most jobs during a day. As  an individual computer user, you are interested in reducing respone time-- the time between the start and completion of a task---also referred to as execution time. Datacenter managers are often interested in increasing throughput or bandwidth--- the total amount of work done in a given time. Hence, in most cases, we will need different performance metrics as well as different sets of applications to benchmark personal mobile devices, which are more focused on response time, versus servers, which are more focused on throughput.

Measuring Performance

Time is the measure of computer performance: the computer that performs the same amount of work in the least time is the fastest. Program execution time

转载于:https://www.cnblogs.com/666638zhangqiang/p/4998329.html
展开全文
• performance.timing对象 performance.now() performance.mark() performance.getEntries() performance.navigation对象 参考链接 重要说明：本教程已经搬迁，此处不再维护，请访问新网址：wangdoc.com/ja...
来自《JavaScript 标准参考教程（alpha）》，by 阮一峰

目录

performance.timing对象
performance.now()
performance.mark()
performance.getEntries()
参考链接
重要说明：本教程已经搬迁，此处不再维护，请访问新网址：wangdoc.com/javascript。

Performance API用于精确度量、控制、增强浏览器的性能表现。这个API为测量网站性能，提供以前没有办法做到的精度。

比如，为了得到脚本运行的准确耗时，需要一个高精度时间戳。传统的做法是使用Date对象的getTime方法。


var start = new Date().getTime();

// do something here

var now = new Date().getTime();
var latency = now - start;
console.log("任务运行时间：" + latency);



上面这种做法有两个不足之处。首先，getTime方法（以及Date对象的其他方法）都只能精确到毫秒级别（一秒的千分之一），想要得到更小的时间差别就无能为力了；其次，这种写法只能获取代码运行过程中的时间进度，无法知道一些后台事件的时间进度，比如浏览器用了多少时间从服务器加载网页。

为了解决这两个不足之处，ECMAScript 5引入“高精度时间戳”这个API，部署在performance对象上。它的精度可以达到1毫秒的千分之一（1秒的百万分之一），这对于衡量的程序的细微差别，提高程序运行速度很有好处，而且还可以获取后台事件的时间进度。

目前，所有主要浏览器都已经支持performance对象，包括Chrome 20+、Firefox 15+、IE 10+、Opera 15+。

performance.timing对象


// 13260687



上面代码表示距离浏览器开始处理当前网页，已经过了13260687毫秒。

下面是另一个例子。

var t = performance.timing;
var dns = t.domainLookupEnd - t.domainLookupStart;
var tcp = t.connectEnd - t.connectStart;
var ttfb = t.responseStart - t.navigationStart;


上面代码依次得到页面加载的耗时、域名解析的耗时、TCP连接的耗时、读取页面第一个字节之前的耗时。

performance.timing对象包含以下属性（全部为只读）：

redirectStart：返回第一个HTTP跳转开始时的Unix毫秒时间戳。如果没有跳转，或者不是同一个域名内部的跳转，则返回值为0。

redirectEnd：返回最后一个HTTP跳转结束时（即跳转回应的最后一个字节接受完成时）的Unix毫秒时间戳。如果没有跳转，或者不是同一个域名内部的跳转，则返回值为0。

fetchStart：返回浏览器准备使用HTTP请求读取文档时的Unix毫秒时间戳。该事件在网页查询本地缓存之前发生。

domainLookupStart：返回域名查询开始时的Unix毫秒时间戳。如果使用持久连接，或者信息是从本地缓存获取的，则返回值等同于fetchStart属性的值。

domainLookupEnd：返回域名查询结束时的Unix毫秒时间戳。如果使用持久连接，或者信息是从本地缓存获取的，则返回值等同于fetchStart属性的值。

connectStart：返回HTTP请求开始向服务器发送时的Unix毫秒时间戳。如果使用持久连接（persistent connection），则返回值等同于fetchStart属性的值。

connectEnd：返回浏览器与服务器之间的连接建立时的Unix毫秒时间戳。如果建立的是持久连接，则返回值等同于fetchStart属性的值。连接建立指的是所有握手和认证过程全部结束。

secureConnectionStart：返回浏览器与服务器开始安全链接的握手时的Unix毫秒时间戳。如果当前网页不要求安全连接，则返回0。

requestStart：返回浏览器向服务器发出HTTP请求时（或开始读取本地缓存时）的Unix毫秒时间戳。

responseStart：返回浏览器从服务器收到（或从本地缓存读取）第一个字节时的Unix毫秒时间戳。

responseEnd：返回浏览器从服务器收到（或从本地缓存读取）最后一个字节时（如果在此之前HTTP连接已经关闭，则返回关闭时）的Unix毫秒时间戳。

根据上面这些属性，可以计算出网页加载各个阶段的耗时。比如，网页加载整个过程的耗时的计算方法如下：


var t = performance.timing;



performance.now()

performance.now()
// 23493457.476999998

// -0.64306640625

通过两次调用performance.now方法，可以得到间隔的准确时间，用来衡量某种操作的耗时。

var start = performance.now();
var end = performance.now();

console.log('耗时：' + (end - start) + '微秒。');

performance.mark()

mark方法用于为相应的视点做标记。

window.performance.mark('mark_fully_loaded');

clearMarks方法用于清除标记，如果不加参数，就表示清除所有标记。

window.peformance.clearMarks('mark_fully_loaded');

window.performance.clearMarks();

performance.getEntries()

浏览器获取网页时，会对网页中每一个对象（脚本文件、样式表、图片文件等等）发出一个HTTP请求。performance.getEntries方法以数组形式，返回这些请求的时间统计信息，有多少个请求，返回数组就会有多少个成员。

由于该方法与浏览器处理网页的过程相关，所以只能在浏览器中使用。


window.performance.getEntries()[0]

// PerformanceResourceTiming {
//   responseEnd: 4121.6200000017125,
//   responseStart: 4120.0690000005125,
//   requestStart: 3315.355000002455,
//   ...
// }



上面代码返回第一个HTTP请求（即网页的HTML源码）的时间统计信息。该信息以一个高精度时间戳的对象形式返回，每个属性的单位是微秒（microsecond），即百万分之一秒。

它有两个属性：

该属性返回一个整数值，表示网页的加载来源，可能有以下4种情况：

该属性表示当前网页经过了多少次重定向跳转。

参考链接

W3C, HTML5, A vocabulary and associated APIs for HTML and XHTML
Matt West, Timing JavaScript Code with High Resolution Timestamps

展开全文
• Common Storage Performance Categories
• 19 Performance
• <div><p>Performance tests are environment dependent.For this reason performance tests sometimes fail on local machines.Created maven performance profile. Perfomance profile only runs performance tests...
• Engineer for performance up front.Manage performance risks.Map business requirements to performance objectives.Balance performance against other quality-of-service requirements.Identify
• C++ High Performance Boost and optimize the performance of your C++17 code. pdf 版的
• Windows Performance Analyzer.zip
• BPF-Performance-Tools-2019 Systems.Performance.Enterprise.and.the.Cloud.2013
• HTML5 Techniques for Optimizing Mobile Performance   Scrolling Performance   layout-performance
• C++ High Performance Boost and optimize the performance of your C++17 code_Code 源码 本资源转载自网络，如有侵权，请联系上传者或csdn删除 查看此书详细信息请在美国亚马逊官网搜索此书
• C++ High Performance A Boost and optimize the performance of you C++17 code.pdf
• Linux Performance Analysis and Tools Linux Performance Analysis and Tools Linux Performance Analysis and Tools
• C++ High Performance Boost and optimize the performance of your C++17 code 英文epub 本资源转载自网络，如有侵权，请联系上传者或csdn删除 查看此书详细信息请在美国亚马逊官网搜索此书
• 高清彩版 SQL Performance Explained Everything Developers Need to Know about SQL Performance
• Unity Performance https://forum.unity.com/threads/onrenderimage-is-slow-when-msaa-is-on.427006/； 有些机器在每个批次2500个顶点左右，FPS最高。 ...
• BPF and related observability tools give software professionals unprecedented visibility into software, helping them analyze operating system and application performance, troubleshoot code, and ...
• high Performance Computing with Python
• performance的兼容性 performance.timing对应时间节点 performance的获取方式 window.performance performance.timing的常用监测时间 DNS解析时间： domainLookupEnd - domainLookupStart TCP建立连接...
• ## Performance Testing

千次阅读 2015-05-20 09:10:51
What is performance testing? It is a type of non-functional testing. Performance testing is testing that is performed, to determine how fast some aspect of a system performs under a particular workloa
• Rational Performance Tester
• Ants Performance Profiler 8 最新版，包含Performance和Profiler两个工具，仅供学习使用
• Then, we move on to monitor techniques that enable us to identify performance bottlenecks and optimize performance metrics. Next, we look at techniques that help us achieve high performance: memory ...
• 环境准备 【匿名模式】：匿名模式可以保证Chrome...使用performance工具进行性能分析的数据准备 进入开发者工具后，点击performance 点击录制按钮，开始录制，在对应页面进行有关操作，然后点击停止，停止录制、处...

...