You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: defender-endpoint/tune-performance-defender-antivirus.md
+23-25Lines changed: 23 additions & 25 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -43,9 +43,9 @@ Microsoft Defender Antivirus performance analyzer has the following prerequisite
43
43
44
44
## What is the Microsoft Defender Antivirus performance analyzer?
45
45
46
-
If computers running Microsoft Defender Antivirus are experiencing performance issues, you can use performance analyzer to improve the performance of Microsoft Defender Antivirus. Performance analyzer for Microsoft Defender Antivirus in Windows 10, Windows 11, and Windows Server, is a PowerShell command-line tool that helps you determine files, file extensions, and processes that might be causing performance issues on individual endpoints during antivirus scans. You can use the information gathered by performance analyzer to assess performance issues and apply remediation actions.
46
+
If devices running Microsoft Defender Antivirus are experiencing performance issues, you can use the performance analyzer to improve the performance of Microsoft Defender Antivirus. The performance analyzer is a PowerShell command-line tool that helps you determine files, file extensions, and processes that might be causing performance issues on individual endpoints during antivirus scans. You can use the information gathered by performance analyzer to assess performance issues and apply remediation actions.
47
47
48
-
Similar to the way mechanics perform diagnostics and service on a vehicle that has performance problems, performance analyzer can help you improve Defender Antivirus performance.
48
+
Similar to the way mechanics perform diagnostics and service on a vehicle that has performance problems, the performance analyzer can help you improve Microsoft Defender Antivirus performance.
49
49
50
50
:::image type="content" source="media/performance-analyzer-improve-defender-antivirus-performance.png" alt-text="Conceptual performance analyzer image for Microsoft Defender Antivirus." lightbox="media/performance-analyzer-improve-defender-antivirus-performance.png":::
51
51
@@ -64,18 +64,18 @@ Some options to analyze include:
64
64
65
65
## Running performance analyzer
66
66
67
-
The high-level process for running performance analyzer involves the following steps:
67
+
The high-level process for running the performance analyzer involves the following steps:
68
68
69
-
1. Run performance analyzer to collect a performance recording of Microsoft Defender Antivirus events on the endpoint.
69
+
1. Run the performance analyzer to collect a performance recording of Microsoft Defender Antivirus events on the endpoint.
70
70
71
71
> [!NOTE]
72
-
> Performance of Microsoft Defender Antivirus events of the type **Microsoft-Antimalware-Engine** are recorded through the performance analyzer.
72
+
> Performance of Microsoft Defender Antivirus events of the type `Microsoft-Antimalware-Engine` are recorded through the performance analyzer.
73
73
74
74
2. Analyze the scan results using different recording reports.
75
75
76
76
## Using performance analyzer
77
77
78
-
To start recording system events, open PowerShell in administrative mode and perform the following steps:
78
+
To start recording system events, open PowerShell in administrator mode and perform the following steps:
79
79
80
80
1. Run the following command to start the recording:
81
81
@@ -94,21 +94,19 @@ To start recording system events, open PowerShell in administrative mode and per
94
94
For more information on command-line parameters and options, see the [New-MpPerformanceRecording](#new-mpperformancerecording) and [Get-MpPerformanceReport](#get-mpperformancereport).
95
95
96
96
> [!NOTE]
97
-
> When running a recording, if you get the error "Cannot start performance recording because Windows Performance Recorder is already recording", run the following command to stop the existing trace with the new command:
> When running a recording, if you get the error "Cannot start performance recording because Windows Performance Recorder is already recording", run the following command to stop the existing trace with the new command: `wpr -cancel -instancename MSFT_MpPerformanceRecording`.
99
98
100
99
## Performance tuning data and information
101
100
102
-
Based on the query, the user is able to view data for scan counts, duration (total/min/average/max/median), path, process, and **reason for scan**. The following image shows sample output for a simple query of the top 10 files for scan impact.
101
+
Based on the query, the user is able to view data for scan counts, duration (total/min/average/max/median), path, process, and reason for scan. The following image shows sample output for a simple query of the top 10 files for scan impact.
103
102
104
103
:::image type="content" source="media/example-output.png" alt-text="Example output for a basic TopFiles query" lightbox="media/example-output.png":::
105
104
106
105
## Exporting and converting to CSV and JSON
107
106
108
-
The results of the performance analyzer can also be exported and converted to a CSV or JSON file.
109
-
For examples that describe the process of "export" and "convert" through sample codes, see the following sections.
107
+
The results of the performance analyzer can also be exported and converted to a CSV or JSON file. This article includes examples that describe the process of "export" and "convert" through sample code.
110
108
111
-
Starting with Defender version `4.18.2206.X`, users are able to view scan skip reason information under "SkipReason" column. The possible values are:
109
+
Starting with Defender version `4.18.2206.X`, users are able to view scan skip reason information under `SkipReason` column. The possible values are:
112
110
113
111
- Not Skipped
114
112
- Optimization (typically due to performance reasons)
@@ -145,7 +143,7 @@ There are two new PowerShell cmdlets used to tune performance of Microsoft Defen
145
143
146
144
### New-MpPerformanceRecording
147
145
148
-
The following section describes the reference for the new PowerShell cmdlet New-MpPerformanceRecording. This cmdlet Collects a performance recording of Microsoft Defender Antivirus scans.
146
+
The following section describes the reference for the new PowerShell cmdlet `New-MpPerformanceRecording`. This cmdlet Collects a performance recording of Microsoft Defender Antivirus scans.
The `New-MpPerformanceRecording` cmdlet collects a performance recording of Microsoft Defender Antivirus scans. These performance recordings contain Microsoft-Antimalware-Engine and NT kernel process events and can be analyzed after collection using the [Get-MpPerformanceReport](#get-mpperformancereport) cmdlet.
159
157
160
-
This `New-MpPerformanceRecording` cmdlet provides an insight into problematic files that could cause a degradation in the performance of Microsoft Defender Antivirus. This tool is provided "AS IS", and isn't intended to provide suggestions on exclusions. Exclusions can reduce the level of protection on your endpoints. Exclusions, if any, should be defined with caution.
158
+
This `New-MpPerformanceRecording` cmdlet provides an insight into problematic files that could cause a degradation in the performance of Microsoft Defender Antivirus. This tool is provided "as is", and isn't intended to provide suggestions on exclusions. Exclusions can reduce the level of protection on your endpoints. Exclusions, if any, should be defined with caution.
161
159
162
160
For more information on the performance analyzer, see [Performance Analyzer](/windows-hardware/test/wpt/windows-performance-analyzer) docs.
163
161
@@ -345,17 +343,17 @@ This flag can accompany all other Top Path options. If missing, a default value
345
343
346
344
| flag | definition |
347
345
|:---|:---|
348
-
| -**TopScansPerPath** | Specifies how many top scans to specify for each top path. |
349
-
| -**TopFilesPerPath** | Specifies how many top files to specify for each top path. |
350
-
| -**TopScansPerFilePerPath** | Specifies how many top scans to output for each top file for each top path, sorted by "Duration" |
351
-
| -**TopExtensionsPerPath** | Specifies how many top extensions to output for each top path |
352
-
| -**TopScansPerExtensionPerPath** | Specifies how many top scans to output for each top extension for each top path |
353
-
| -**TopProcessesPerPath** | Specifies how many top processes to output for each top path |
354
-
| -**TopScansPerProcessPerPath** | Specifies how many top scans to output for each top process for each top path |
355
-
| -**TopPathsPerExtension** | Specifies how many top paths to output for each top extension |
356
-
| -**TopScansPerPathPerExtension** | Specifies how many top scans to output for each top path for each top extension |
357
-
| -**TopPathsPerProcess** | Specifies how many top paths to output for each top process |
358
-
| -**TopScansPerPathPerProcess** | Specifies how many top scans to output for each top path for each top process |
346
+
| -`TopScansPerPath` | Specifies how many top scans to specify for each top path. |
347
+
| -`TopFilesPerPath` | Specifies how many top files to specify for each top path. |
348
+
| -`TopScansPerFilePerPath` | Specifies how many top scans to output for each top file for each top path, sorted by "Duration" |
349
+
| -`TopExtensionsPerPath` | Specifies how many top extensions to output for each top path |
350
+
| -`TopScansPerExtensionPerPath` | Specifies how many top scans to output for each top extension for each top path |
351
+
| -`TopProcessesPerPath` | Specifies how many top processes to output for each top path |
352
+
| -`TopScansPerProcessPerPath` | Specifies how many top scans to output for each top process for each top path |
353
+
| -`TopPathsPerExtension` | Specifies how many top paths to output for each top extension |
354
+
| -`TopScansPerPathPerExtension` | Specifies how many top scans to output for each top path for each top extension |
355
+
| -`TopPathsPerProcess` | Specifies how many top paths to output for each top process |
356
+
| -`TopScansPerPathPerProcess` | Specifies how many top scans to output for each top path for each top process |
0 commit comments