@Evileddie79
Wenn Du bisher kein Problem bemerkt hast, dann brauchste Dir keine weiteren Gedanken machen. Falls Du aber trotzden gerne messen willst, ob das Problem besteht und sich nur nicht bemerkbar macht, kannst Du es mit einem Programm testen. Dazu reicht es aber nicht das Programm zu starten und die Ausgabe anzusehen. Man muss mehr tun.
Wie genau Du vorgehen musst erfährst Du
hier.
Zu Deiner Frage, was eine DPC Latency ist - sehr grob im Zusammenhang erklärt:
Wenn eine Hardwarekomponente, wie z.B. eine Netzwerkkarte, ein Datenpaket empfängt, so muss dieses vom
Betriebssystemkern "abgeholt" und an die entsprechende Anwendung (z.B. Browser) weitergeleitet werden. Dazu verursacht die Netzwerkkarte einen
Interrupt und unterbricht damit das Programm, welches von der CPU gerade ausgeführt wird. Nach dieser sogenannten Unterbrechungsanforderung wird von der CPU eine Unterbrechungsroutine ausgeführt, die im Treiber der Netzwerkkarte programmiert ist.
Diese Routine kümmert sich dann darum, dass das empfangene Datenpaket aus dem Speicher der Netzwerkkarte ausgelesen und in einen Puffer im Arbeitsspeicher gespeichert wird. Dieser Puffer muss dann an den Betriebssystemkern weiter gegeben werden, welcher den
Header (Kopf) des Datenpakets einliest, um zu prüfen, ob die Daten korrekt empfangen wurden etc. und um diese dann an die zugehörige Anwendung weiterleiten zu können.
Der Puffer wird aber von der Unterbrechungsroutine nicht direkt an den Betriebssystemkern weitergegeben, weil die genannten Aufgaben eine "längere Zeit" in Anspruch nehmen würden. In dieser Zeit kann dann keine andere Unterbrechungsaufforderung bearbeitet werden. Somit würden Interrupts anderer Geräte (wie z.B. einer Soundkarte) nicht abgearbeitet werden können, die aber schnellstmöglich abgearbeitet werden müssen, weil sie zeitkritisch sind.
Anstatt also den Puffer mit dem empfangenen Datenpaket an den kernel weiterzugeben und auf dessen Verarbeitung zu warten, reiht die Unterbrechungsroutine der Netzwerkkarte diese Aufgabe in die DPC queue (DPC Schlange) ein. Dies erfolgt in sehr kurzer Zeit, sodass die gesamte Unterbrechungsroutine sehr kurz ist und die CPU fortfahren kann.
Wenn die CPU dann schlussendlich alle anstehenden Interrupts abgearbeitet hat, werden vom
Dispatcher des Kerns die Aufgaben in der DPC queue abgearbeitet, bevor er mit der Ausführung des unterbrochenen Programms fortfährt. Dies geschieht genau der Reihenfolge nach, wie die Aufgaben in die DPC queue eingereiht worden sind. (Also die Aufgaben der Netzwerkkarten, Soundkarten, Grafikkarten etc.)
Wenn nun z.B. die Aufgaben der Grafikkarte eine unzulässig lange Zeit in Anspruch nehmen, können andere Aufgaben (der Netzwekkarte, Soundkarte etc.) nicht schnell genug abgearbeitet werden.
Die Zeitspanne vom Einreihen der Aufgabe durch die jeweilige Unterbrechungsroutine in die DPC queue bis zu ihrer Abarbeitung nennt man DPC Latency. Wenn also eine Aufgabe in der DPC queue die anderen lange blockiert, wird deren DPC Latency sehr groß.
Die DPC Latency kann man mit dem DPC Latency Checker messen. Ist sie zu hoch, dann ist es also ein Indiz dafür, dass womöglich ein Treiber fehlerhaft programmiert ist oder ein anderes Problem besteht.
Bei der Netzwerkkarte kann es dann zu Datenverlusten kommen, wenn also die Datenpakete nicht schnell genug abgeholt werden und der interne Speicher der Netzwerkkarte vollläuft, wobei das nicht unbedingt zu Fehlern führen muss, die man als Anwender bemerkt, weil die Datenpakete je nach verwendetem Protokoll automatisch erneut angefordert werden können. Bei einer Soundkarte kann es aber z.B. dazu führen, dass der Datenstrom immer wieder abbricht, was zu Tonaussetzern führen kann.
Ich hoffe, ich habe das verständlich genug erklärt.
Grüße