Reporting Services不会使用超过25%的CPU

时间:2009-02-12 16:27:29

标签: reporting-services

我已经建立了一个解决方案,可以创建快速的PDF报告。目前,我似乎无法让Reporting Services使用它可用的所有资源。系统似乎不是IO绑定,CPU绑定或内存绑定。有关试图找出它运行原因的任何建议吗?

应用程序不是网络IO绑定的,它是多线程的,是处理器数量的2倍。

6 个答案:

答案 0 :(得分:2)

SQL Server Reporting Services将运行的报告数限制为2个同时的临时报告和2个同步的Web报告。这是服务器强加的硬限制。

答案 1 :(得分:0)

这是不使用多线程方法的情况吗?机器是否使用处理器的一个核心的100%并且这是瓶颈?

编辑:很抱歉,在您提到它已经是多线程之前,只是一个想法。我恐怕无法提供更多建议。

答案 2 :(得分:0)

Robin Day可能是正确的,但是如果您使用支持超线程的处理器,则可能通过在BIOS中关闭它来获得性能优势。您可以尝试进行A / B性能测试。

您还可以检查SQL实例(当您说报告服务时,您的意思是SSRS正确?)没有设置处理器关联。

答案 3 :(得分:0)

  

有关试图弄清楚它为什么会这样运行的任何建议吗?

a)有一个API可以将整个过程限制在一个CPU上:使用GetProcessAffinityMask进行测试。

b)'线程状态'和'线程等待原因'是两个性能计数器...也许你可以阅读这个,看看为什么你认为应该运行的线程不是。

答案 4 :(得分:0)

您的应用程序的所有线程都在争夺一个锁定。使用分析器查看某处是否存在拥塞。

如果你有四个内核,那就可以解释为什么你会看到25%的CPU使用率。

答案 5 :(得分:-2)

也许服务器无法通过网络提供更多数据(因此它受网络IO限制)?