当前位置: 首页 > 软件库 > 管理和监控 > 性能优化 >

PerfView

CPU和内存性能分析工具
授权协议 MIT
开发语言 C# JavaScript
所属分类 管理和监控、 性能优化
软件类型 开源软件
地区 不详
投 递 者 明正德
操作系统 Windows
开源组织 微软
适用人群 未知
 软件概览

PerfView 是微软开源的 CPU 和内存性能分析工具。它能以多种方式收集和观察 ETL 文件,拥有强大的群组运算能力。主要功能如下:

  • 非侵入性收集 

  • Xcopy 部署

  • 千兆字节堆栈

  • 快照对比

  • 文件转储

  • 配置文件比较

  • CPU 性能追踪

  • 原生和混合代码托管

  • XPerf 日志阅读

建立 perfview 需要的工具

Visual Studio 2013 或更高版本,建议 Visual Studio 2015 。

怎么创建和生成 perfvie

在 Visual Studio 中打开 src/PerfView/Perfview.sln 文件,选择 Build -> Build Solution ,即可创建。生成的 PerfView.exe 文件是以 src/PerfView/bin/BuildType/PerfView.exe 命名,配置好后即可使用。

视频教程

  • ## 一:背景 准备开个系列来聊一下 PerfView 这款工具,熟悉我的朋友都知道我喜欢用 WinDbg,这东西虽然很牛,但也不是万能的,也有一些场景他解决不了或者很难解决,这时候借助一些其他的工具来辅助,是一个很不错的主意。 很多朋友喜欢在项目中以记录日志的方式来监控项目的流转情况,其实 CoreCLR 也是这样的,参考如下代码: ``` C++ void gc_heap::fix_alloc

  • PerfView 是微软开源的 CPU 和内存性能分析工具。它能以多种方式收集和观察 ETL 文件,拥有强大的群组运算能力。主要功能如下: 非侵入性收集 Xcopy 部署 千兆字节堆栈 快照对比 文件转储 配置文件比较 CPU 性能追踪 原生和混合代码托管 XPerf 日志阅读 建立 perfview 需要的工具: Visual Studio 2013 或更高版本,建议 Visual Studio

  • http://blogs.msdn.com/b/vancem/

 相关资料
  • valgrind一个很好用的内存和CPU分析工具,srs由于使用了st(state-threads),st是基于c函数setjmp和longjmp,valgrind不支持这两个函数,所以srs没法用valgrind分析内存错误和泄漏。 gperf是google用作内存和CPU分析的工具,基于tcmalloc(也是google内存分配库,替换glibc的malloc和free)。好消息是gperf可

  • ObQuote... "One serious obstacle to the adoption of good programming languages is the notion that everything has to be sacrificed for speed. In computer languages as in life, speed kills." — Mike Vani

  • 由于事件处理程序可以为现代Web 应用程序提供交互能力,因此许多开发人员会不分青红皂白地向页面中添加大量的处理程序。在创建GUI 的语言(如C#)中,为GUI 中的每个按钮添加一个onclick事件处理程序是司空见惯的事,而且这样做也不会导致什么问题。可是在JavaScript 中,添加到页面上的事件处理程序数量将直接关系到页面的整体运行性能。导致这一问题的原因是多方面的。首先,每个函数都是对象,

  • 主要内容:一、查看系统性能参数,,二、定位执行慢的SQL:慢查询日志,三、查看 SQL 执行成本:SHOW PROFILE,四、分析查询语句:EXPLAIN,EXPLAIN各列作用:一、查看系统性能参数 通过SHOW STATUS语句查询一些MySQL数据库服务器的性能参数、执行频率。 一些常用的性能参数如下: Connections:连接MySQL服务器的次数。 Uptime:MySQL服务器的上线时间。单位:s Slow_queries:慢查询的次数。 Innodb_rows_read:Se

  • 问题内容: 我热衷于研究Scala,并提出了一个似乎无法找到答案的基本问题:一般来说,Scala和Java在性能和内存使用方面是否有所不同? 问题答案: Scala使得无需意识到即可轻松使用大量内存。这通常非常强大,但有时可能很烦人。例如,假设您有一个字符串数组(称为),以及从这些字符串到文件的映射(称为)。假设您要获取地图中所有来自长度大于两个的字符串的文件。在Java中,您可能 ew!辛苦了

  • 我正在写一份棘手的申请书。该应用程序运行在64位八核linux机器上 Netty应用程序是一个简单的路由器,它接受请求(传入管道),从请求中读取一些元数据,并将数据转发给远程服务(传出管道)。 此远程服务将向传出管道返回一个或多个响应。Netty应用程序将把响应路由回发起客户端(传入管道) 会有成千上万的客户。将会有成千上万的远程服务。 我正在做一些小规模的测试(十个客户端,十个远程服务),但我没

  • 性能分析 StackExchange.Redis 公开了少量的方法和类型来开启性能分析。由于其异步性和多路复用行为,性能分析是一个有点复杂的话题。 接口 性能分析接口是由这些组成的:IProfiler,ConnectionMultiplexer.RegisterProfiler(IProfiler),ConnectionMultiplexer.BeginProfiling(object), Con

  • 使用perf内核性能分析工具,可以分析出很多问题。具体参考perf命令的用法。 还有oprofile可以分析性能。mpstat查看cpu的使用分布。strace查看系统调用情况。参考:http://blog.csdn.net/win_lin/article/details/9377209