User Tools

Site Tools


realtime:documentation:howto:debugging:smi-latency:detection

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Next revision
Previous revision
realtime:documentation:howto:debugging:smi-latency:detection [2018/07/12 13:48]
ebugden created
realtime:documentation:howto:debugging:smi-latency:detection [2018/08/21 13:20]
ebugden [Identifying SMI Related Latencies] Update link
Line 3: Line 3:
 Below are some tools for confirming and characterizing SMIs presented in a suggested order of use. Counting SMIs with Cyclictest is a good place to start because it is a good idea to first confirm that SMIs are happening on a system before investigating the possibility that they are causing latencies. Below are some tools for confirming and characterizing SMIs presented in a suggested order of use. Counting SMIs with Cyclictest is a good place to start because it is a good idea to first confirm that SMIs are happening on a system before investigating the possibility that they are causing latencies.
  
-  * [[realtime:​documentation:​howto:​debugging:cyclictest-smi-count|Cyclictest - SMI count]] (Intel x86 only) +  * [[realtime:​documentation:​howto:​tools:cyclictest:options:smi-count|Cyclictest - SMI count]] (Intel x86 only) 
-  * [[realtime:​documentation:​howto:​debugging:​cyclictest-smi-ftrace|Cyclictest - SMI detection with function tracing]]+  * [[realtime:​documentation:​howto:​debugging:​smi-latency:​cyclictest-tracing|Cyclictest - SMI detection with function tracing]]
   * [[realtime:​documentation:​howto:​tools:​hwlat|Ftrace - hwlat tracer]]   * [[realtime:​documentation:​howto:​tools:​hwlat|Ftrace - hwlat tracer]]
-  * [[realtime:​documentation:​howto:​debugging:​perf-smi-cost|Perf stat - Cost of SMI handling]] (Intel x86 only)+  * [[realtime:​documentation:​howto:​tools:​perf-smi-cost|Perf stat - Cost of SMI handling]] (Intel x86 only)
  
 The concepts of SMI and SMM are specific to x86, but some of the techniques and tools mentioned above can be used to debug similar firmware or hardware issues on other architectures. The concepts of SMI and SMM are specific to x86, but some of the techniques and tools mentioned above can be used to debug similar firmware or hardware issues on other architectures.
Line 12: Line 12:
 ---- ----
  
-It is important to note that there are intentionally only a few vague suggestions about how long it should take to handle an SMI in the pages linked above. This is because, in the case of SMI handling, the definition of "too long" depends on the application'​s timing requirements. More specifically,​ the maximum number of SMIs, the maximum frequency at which they can occur, and the maximum amount of time it can take to handle ​them, all depend on the application'​s requirements. One application might be able to handle several SMIs that take 10-15 us to resolve whereas those times may be way too long for another application. Additionally,​ an SMI related latency of over 100 us is generally bad, but again the timing requirements of certain applications could allow for such latencies. So, a knowledge of the system'​s deadline requirements is absolutely necessary for interpreting the results of the suggested tests.+It is important to note that there are intentionally only a few vague suggestions about how long it should take to handle an SMI in the pages linked above. This is because, in the case of SMI handling, the definition of "too long" depends on the application'​s timing requirements. More specifically,​ the maximum number of SMIs, the maximum frequency at which SMIs can occur, and the maximum amount of time it can take to handle ​SMIs, all depend on the application'​s requirements. One application might be able to handle several SMIs that take 10-15 us to resolve whereas those times may be way too long for another application. Additionally,​ an SMI related latency of over 100 us is generally bad, but again the timing requirements of certain applications could allow for such latencies. So, a knowledge of the system'​s deadline requirements is absolutely necessary for interpreting the results of the suggested tests.
  
 ===== Common SMI Triggers ===== ===== Common SMI Triggers =====
realtime/documentation/howto/debugging/smi-latency/detection.txt · Last modified: 2018/08/21 13:20 by ebugden