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
**HardwareStress** is a .NET library that provides a mechanism to stress hardware resources, such as CPU, Disk or RAM.
4
+
5
+
<u>**As any other software focused to stress hardware resources, you must use it at your own risk. I don't take any responsability of a hardware fail.**</u>
6
+
7
+
## Donations
8
+
9
+
Any code within the namespace "DevCase" is freely distributed as part of "DevCase for .NET Framework" commercial source-code.
10
+
11
+
Maybe you would like to consider to buy this powerful set of libraries to support me. You can do loads of things with my libraries for a big amount of diverse thematics, not only related to devices and so.
Usage is very simple, there are 3 classes: **CpuStress**, **DiskStress** and **MemoryStress**, which provides an **Allocate()** method to start stressing resources, and a **Deallocate()** method to stop it.
22
+
23
+
## Usage Examples
24
+
25
+
##### CPU Stress
26
+
27
+
```vbnet
28
+
UsingcpuStressAsNewCpuStress()
29
+
DimpercentageAsSingle=20.5F20.50%
30
+
31
+
Console.WriteLine("Allocating CPU usage percentage...")
32
+
cpuStress.Allocate(percentage)
33
+
Thread.Sleep(TimeSpan.FromSeconds(5))
34
+
Console.WriteLine("Instance CPU average usage percentage: {0:F2}%",cpuStress.InstanceCpuPercentage)
35
+
Console.WriteLine("Process CPU average usage percentage: {0:F2}%",cpuStress.ProcessCpuPercentage)
36
+
Console.WriteLine()
37
+
38
+
Console.WriteLine("Deallocating CPU usage percentage...")
39
+
cpuStress.Deallocate()
40
+
Thread.Sleep(TimeSpan.FromSeconds(5))
41
+
Console.WriteLine("Instance CPU average usage percentage: {0:F2}%",cpuStress.InstanceCpuPercentage)
42
+
Console.WriteLine("Process CPU average usage percentage: {0:F2}%",cpuStress.ProcessCpuPercentage)
43
+
EndUsing
44
+
```
45
+
46
+

47
+
48
+
##### Disk Stress
49
+
50
+
```vbnet
51
+
UsingdiskStressAsNewDiskStress()
52
+
Console.WriteLine("Allocating disk I/O read and write operations...")
53
+
diskStress.Allocate(fileSize:=1048576)1MB
54
+
55
+
Thread.Sleep(TimeSpan.FromSeconds(10))
56
+
57
+
Console.WriteLine("Stopping disk I/O read and write operations...")
58
+
diskStress.Deallocate()
59
+
60
+
Console.WriteLine()
61
+
Console.WriteLine("Instance disk I/O read operations count: {0} (total of files read)",diskStress.InstanceReadCount)
62
+
Console.WriteLine("Process disk I/O read operations count: {0}",diskStress.ProcessReadCount)
63
+
Console.WriteLine()
64
+
Console.WriteLine("Instance disk I/O read data (in bytes): {0} ({1:F2} GB)",diskStress.InstanceReadBytes,(diskStress.InstanceReadBytes/1024.0F^3))
65
+
Console.WriteLine("Process disk I/O read data (in bytes): {0} ({1:F2} GB)",diskStress.ProcessReadBytes,(diskStress.ProcessReadBytes/1024.0F^3))
66
+
Console.WriteLine()
67
+
Console.WriteLine("Instance disk I/O write operations count: {0} (total of files written)",diskStress.InstanceWriteCount)
68
+
Console.WriteLine("Process disk I/O write operations count: {0}",diskStress.ProcessWriteCount)
69
+
Console.WriteLine()
70
+
Console.WriteLine("Instance disk I/O written data (in bytes): {0} ({1:F2} GB)",diskStress.InstanceWriteBytes,(diskStress.InstanceWriteBytes/1024.0F^3))
71
+
Console.WriteLine("Process disk I/O written data (in bytes): {0} ({1:F2} GB)",diskStress.ProcessWriteBytes,(diskStress.ProcessWriteBytes/1024.0F^3))
0 commit comments