问题标签 [performancecounter]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
4144 浏览

.net - 以编程方式监控磁盘活动 (Windows)

在 Windows 2008R2 中,在磁盘活动部分的资源监视器中,我可以看到从文件读取/写入文件的字节数。如何以编程方式执行此操作,最好使用 C#(或 Win32 API)?我研究了 WMI 和各种性能计数器,但是我无法弄清楚是否有适合我需要的东西。

0 投票
1 回答
138 浏览

sharepoint - 带有 [ACL] 的 sharepoit 性能计数器实例名称

选择一个 Sharepoint 性能计数器对象,我的每个网站都有两个实例。例如,对于 ssp 站点,这两个实例被命名为

  1. portnumber_ssp_admin
  2. portnumber_ssp_admin[ACL]

这两个实例有什么区别?[ACL] 是什么意思?

0 投票
2 回答
2879 浏览

c# - 如何在 C# 中使用性能计数器来监视 4 个同名进程?

我正在尝试创建一个可以监控应用程序性能时间的性能计数器,其中之一是 Google Chrome。但是,我注意到我为 chrome 获得的性能时间异常低 - 我在任务管理器下查看我的问题,即 chrome 有多个以完全相同的名称运行的进程,但每个进程都有不同的工作集大小因此(我相信)不同的处理器时间。我试过这样做:

但这似乎根本不起作用 - 我只是多次监控相同的过程。谁能告诉我一种方法来监视具有相同名称的单独进程?

0 投票
2 回答
9988 浏览

c# - 如何访问代码中的 C# 性能计数器?

我想在我的程序中使用性能计数器输出。如何在不使用 perfmon.exe 的情况下访问代码中的性能计数器。我想创建自己的性能计数器应用程序。

0 投票
1 回答
143 浏览

c# - 性能计数器主题中是否有 DecrementBy() 方法?

在书中我看到它存在,但 MSDN 说它不存在???

大家对这个话题有什么想说的???

稍后可能会加载 VS,看看它是否出现在 3.5 .Net 中。我问的是你们中的一些人都知道我正在为考试复习,我不希望像这样的小巧克力蛋糕让我大吃一惊。

TIA

0 投票
1 回答
669 浏览

wcf - 使用 WCF 性能计数器 (performanceCounters = "ALL") 对性能有何影响?

有没有人有在生产系统中使用 WCF 性能计数器并遇到任何性能问题的经验?我怀疑如果您正在监视所有服务、端点和操作并将所有计数器记录到文件中,每秒采样一次,那么这是最坏的情况。据我所知,当你实际采样时,点击就会出现,而不是在计数器打开时。有在生产中使用它们的实际经验吗?

0 投票
2 回答
3218 浏览

profiling - Linux内核中Perf事件子系统的性能开销

Linux 的性能计数器是一个新的基于内核的子系统,它为所有事物的性能分析提供了一个框架。它还涵盖了硬件级别(CPU/PMU、性能监控单元)功能和软件功能(软件计数器、跟踪点)。从 2.6.33 开始,内核提供 'perf_event_create_kernel_counter' 内核 api 供开发人员创建内核计数器以收集系统运行时信息。我最关心的是启用 tracepoint/ftrace 时对整个系统的性能影响。我找不到关于它们的文档。曾经有人告诉我,ftrace 是通过动态修补代码实现的,它会大大降低系统速度吗?

0 投票
2 回答
1500 浏览

assembly - 如何在多核处理器上进行基准测试

我正在寻找在多核处理器上执行微基准测试的方法。

语境:

几乎与此同时,桌面处理器引入了让性能难以预测的乱序执行,也许并非巧合,它们还引入了特殊指令来获得非常精确的时序。这些指令的示例rdtsc在 x86 和rftbPowerPC 上。这些指令给出的时间比系统调用所允许的更精确,允许程序员对他们的心进行微基准测试,无论好坏。

在具有多个内核的更现代的处理器上,其中一些内核有时会休眠,计数器在内核之间不同步。我们被告知rdtsc不再安全地用于基准测试,但是当我们被解释替代解决方案时,我一定是在打瞌睡。

问题:

一些系统可能会保存和恢复性能计数器,并提供 API 调用来读取正确的总和。如果您知道此调用适用于任何操作系统,请在答复中告知我们。

一些系统可能允许关闭核心,只留下一个运行。我知道 Mac OS X Leopard 在从开发人员工具安装正确的首选项窗格时会这样做。你认为这可以rdtsc安全地再次使用吗?

更多背景:

请假设我在尝试进行微基准测试时知道自己在做什么。如果您认为如果优化的收益不能通过计时整个应用程序来衡量,那么不值得优化,我同意您的观点,但是

  1. 在替代数据结构完成之前,我无法为整个应用程序计时,这需要很长时间。事实上,如果微基准没有希望,我现在可以决定放弃实施;

  2. 我需要在我无法控制截止日期的出版物中提供数据。

0 投票
0 回答
1101 浏览

process - 在 Windows Perfmon 中监视进程级性能计数器

我相信每个人都遇到过这个问题。当您扩展使用多个应用程序池的 Web 服务器时,为每个应用程序池 24x7 收集性能计数器是很有价值的。唯一的问题是 - Perfmon 通过进程 ID 将计数器链接到应用程序池,因此每当应用程序池回收时,您必须删除旧进程 ID 的计数器并将它们添加到新进程 ID。由于应用程序池经常回收(每当您发布新版本或修补服务器时),这是一个主要的痛苦。我想知道是否有人找到了解决方法?也许是一种在应用程序池启动时更新 Perfmon 设置的编程方式,或者以某种方式通过名称而不是进程 ID 来引用应用程序池?我将不胜感激任何提示!

0 投票
1 回答
850 浏览

asp.net - ASP.NET 检索平均 CPU 使用率

昨晚我在一个网站上做了一个负载测试。我发现我的一个共享缓存是一个瓶颈。我正在使用 ReaderWriterLockSlim 来控制数据的更新。不幸的是,大约有 200 个请求几乎在同一时间尝试更新数据。这也与 CPU 使用率峰值相吻合。

正在更新的数据位于 ASP.NET 缓存中。我想做的是如果 CPU 使用率在 75% 左右,我想跳过缓存并在另一台机器上访问数据库。

我的问题是我不知道创建一个新的性能计数器来检查 CPU 使用情况有多昂贵。另外,如果我可能想要过去 2 或 3 秒内的平均 CPU 使用率。但是,我不能坐在那里计算 CPU 时间,因为这比当前更新缓存所需的时间更长。

有没有一种简单的方法来获得平均 CPU 使用率?这有什么缺点吗?

我还在考虑总计锁定的等待计数,然后在某个阈值切换到数据库。我对这种方法的担忧是,改变硬件可能会允许更多的锁,而对系统的压力更小。并且为阈值找到正确的平衡也很麻烦,并且没有考虑机器上的任何其他负载。但这是一种简单的方法,而且简单在 99% 的情况下都更好。