Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/objective-c/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# .NET核心CLR有一半时间在等待ntdll.dll_C#_.net_Performance_Profiling - Fatal编程技术网

C# .NET核心CLR有一半时间在等待ntdll.dll

C# .NET核心CLR有一半时间在等待ntdll.dll,c#,.net,performance,profiling,C#,.net,Performance,Profiling,我正在用dotTrace分析一个高度并行的项目,并注意到CLR花费了将近50%的时间等待ntdll.dll。我很难弄清楚这是什么原因造成的 我有没有办法确定是什么原因导致CLR花这么多时间调用内核的?我已经开发了一个尽可能低分配的项目,与运行时间相比,垃圾收集的使用可以忽略不计。我能想到的唯一原因是内存延迟或CPU缓存未命中,因为一些CPU密集型计算使用随机内存访问。您使用的是哪个版本的.NET Core和哪种应用程序?另外,您是否尝试启用并检查ETW以查看发生了什么?启用本机代码调试,查看是

我正在用dotTrace分析一个高度并行的项目,并注意到CLR花费了将近50%的时间等待
ntdll.dll
。我很难弄清楚这是什么原因造成的


我有没有办法确定是什么原因导致CLR花这么多时间调用内核的?我已经开发了一个尽可能低分配的项目,与运行时间相比,垃圾收集的使用可以忽略不计。我能想到的唯一原因是内存延迟或CPU缓存未命中,因为一些CPU密集型计算使用随机内存访问。

您使用的是哪个版本的.NET Core和哪种应用程序?另外,您是否尝试启用并检查ETW以查看发生了什么?启用
本机代码调试
,查看是否出现一些本机异常。异常处理是昂贵的。另外,检查您是否有一些线程锁定问题。