问题标签 [dottrace]
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.
c# - 使用性能分析器找出某些线程是否被阻止的最佳方法?
我正在使用 dotTrace 2017 形式的 jetBrains。我的目标是提高页面上某些 WPF 组件的性能。似乎简化 Visual Tree、冻结 IFreezables、避免资源重复等典型改进并没有产生预期的效果。由于 UI 本身并没有那么复杂,主要是数据视图:文本框、chechboxex、几个按钮、tabes 等等——没有任何复杂的动画或其他渲染密集型的东西……在我看来,问题隐藏在更深的地方.
项目严重依赖响应式扩展,所以我开始怀疑一些负责从数据库收集数据的线程被简单地阻塞了。但我不确定哪种方式是最简单可靠的结账方式?我应该尝试总结后台线程等待的时间吗?也许有一些更具体的工具可以使用?有什么建议么?
提前致谢。
c# - Json.NET 和 GC 等待的 C# 服务性能问题
我有一个做一些业务工作的 Windows 服务。我用 dotTrace 对其进行分析以发现性能问题并有这样的图片: GC Wait 88%
GC Wait 需要 88% 的时间似乎很奇怪,所以我关闭了一些小间隔并得到: Thread stats
我发现在非阻塞期间,线程通过 JSON.Net 反序列化分配对象,并且这段代码被 GC 阻塞:
有没有人有类似的问题?还是我错过了什么?
jetbrains-ide - 在 Windows 8.1 Pro 上安装后在哪里可以找到 dotTrace
我已经在 Windows 8.1 Pro 上安装了 JetBrains dotTrace ( https://www.jetbrains.com/profiler/ )。安装已成功完成。
现在如何打开dotTrace界面?我在“开始”菜单中进行了搜索,但找不到。我用“dottrace”和“jetbrains”关键字搜索,但没有成功。
installation - 无法在 Windows Server 2012 R2 上启动 dotTrace 分析
我们正在尝试在生产服务器上运行 dotTrace,但它失败了。我们在重新启动后也尝试过,但没有奏效。
dotTrace:https ://www.jetbrains.com/profiler/
操作系统:Windows Server 2012 R2
系统类型:64位
这是 IIS 应用程序,我们正在尝试将 w3wp.exe 工作进程附加到 dotTrace。
我们在这台机器上有 NewRelic 状态监视器。
有什么建议吗?
.net - .net 程序在运行时逐行跟踪
我正在处理一个项目要求,以逐行跟踪正在运行的程序。这些程序/Web 应用程序/Windows 服务是很久以前开发的,pdb 文件可用。我在看 CLRprofilercallback 但它是在 C++ 中的。是否有任何工具可以发出此信息。
profiler - 线程视图在性能/cpu 分析器中有何用处?
在我分析 ASP.NET Core 应用程序后,JetBrain 的 dotTrace工具默认打开All Calls
选项卡并显示线程列表。
你能澄清我的一些问题吗?
在我的分析会话期间,我向 Web 应用程序发送了大约 10 万个请求。这些线程(除了
Main
一些系统线程,如Finalizer
线程)是线程池用来根据下图处理所有这些请求的唯一线程吗?理想情况下,我希望了解占用大量 CPU 的函数的详细信息(即分析会话中最热门的方法),所以我一直想知道这个线程视图实际上有什么帮助?
您是否认为线程池中可能有更多线程可以被使用并返回到线程池,但是分析器只能“捕获”特定线程池线程的信息,因为这些线程池线程是在那段时间执行?我这样说是因为对于 ~100K 请求,这里显示的线程数似乎更少,但我可能是错的。(可能是基于执行的并发请求数?)
memory-profiling - 如何知道我是否也必须进行内存分析?
我目前对 ASP.NET Core 应用程序进行 CPU 采样,向它发送大量请求(> 500K)。我看到应用程序的峰值工作集约为 300 MB,考虑到对应用程序发出的请求数量,我认为这并不大。但是我观察到的是,当我在我的应用程序中启用某些功能时,每秒请求数会大幅下降。
问题: 我也应该进行内存分析吗?我问这个是因为即使峰值工作集约为 300MB,可能会有大量的短期对象可以由 GC 创建和收集,并且由于 GC 的工作也算作 CPU,我是否也应该进行内存分析以查看是否我分配太多?
dottrace - 如何从代码分析中排除方法
我正在使用 dotTrace 执行代码分析,并且我希望能够从代码分析中排除特定方法 - 即调用外部服务并且我无法控制其性能的方法。有没有办法做到这一点?我正在尝试使用 dotTrace 子系统过滤我的结果,但我无法从分析结果中“隐藏”这些方法调用。提前致谢
ajax - 点跟踪显示在执行多个 ASP.NET MVC 操作时等待 CPU
我目前正在尝试提高我的 Asp.Net 应用程序的性能。在此期间,我发现当我通过 ajax 调用多次调用同一操作或同一控制器内的不同操作时,所花费的时间不相等。请参考下图。
请求时间线 在使用点跟踪工具进行挖掘时,我发现这种差异被跟踪为“等待 CPU”,即任务正在等待线程分配。我们如何优化这一点,以便所有相同的操作都有相同的时间来执行它们的功能。