Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/reporting-services/3.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
Sas 总处理时间PROC SQL,了解日志_Sas_Proc Sql - Fatal编程技术网

Sas 总处理时间PROC SQL,了解日志

Sas 总处理时间PROC SQL,了解日志,sas,proc-sql,Sas,Proc Sql,我想更好地理解时间日志以提高性能 我的实时时间通常比cpu时间大得多。这是预期的吗 差异是由于磁盘访问造成的吗?内存中的操作是包含在CPU时间中还是实时中 日志的其他行中是否有关于性能优化的有用信息 例如: NOTE: PROCEDURE SQL used (Total process time): real time 9:06.00 user cpu time 1:36.79 system cpu time 19.11

我想更好地理解时间日志以提高性能

我的实时时间通常比cpu时间大得多。这是预期的吗

差异是由于磁盘访问造成的吗?内存中的操作是包含在CPU时间中还是实时中

日志的其他行中是否有关于性能优化的有用信息

例如:

NOTE: PROCEDURE SQL used (Total process time):
      real time           9:06.00
      user cpu time       1:36.79
      system cpu time     19.11 seconds
      memory              7463.31k
      OS Memory           24628.00k
      Timestamp           06/07/2018 12:45:31 PM
      Page Faults                       7
      Page Reclaims                     1566
      Page Swaps                        0
      Voluntary Context Switches        370694
      Involuntary Context Switches      36835
      Block Input Operations            0
      Block Output Operations           0

CPU时间是指CPU处理进行了多少—使用了多少CPU时钟周期。这是每个核心;如果使用多个内核(虚拟或物理),则它可以大于实时。例如,CPU密集型并行处理的东西在机器上使用4个内核2分钟,实时时间为2分钟,CPU时间可能高达8分钟

实时实际上是作业开始和作业结束之间的时钟时间。在
proc-sql
的情况下,直到到达
quit
为止-因此,如果您未退出而保持
proc-sql
打开,则实时时间可能会一直持续到下次运行一个proc

很多时候,CPU时间和实时时间之间的差异是磁盘i/o,正如您所说的——如果您正在通过网络或从旋转的磁盘进行读取,那么您的磁盘i/o很可能会花费比CPU时间更长的时间

从内存中读取“文件”不包括在CPU时间内,除非它涉及CPU

其他字段有助于诊断不同级别的性能问题。使用的内存量可能表明代码存在特定问题(如果代码使用了大量内存,则可能是您的工作效率低下)

您可能想阅读一些关于SQL效率和优化的文章,比如-特别是最后的_方法和_树讨论。当然,文章中提到了获取更多信息的各种方法,如刺激和反馈