Ответ на пост «Тест моего старого сервачка на прочность. Пикабу, управляй моим PowerShell (я серьезно!)»⁠⁠

$duration = 120

$cores = [Environment]::ProcessorCount

$end = (Get-Date).AddSeconds($duration)

$testDir = Join-Path $env:TEMP "GrandpaStressTest"

$jobs = @()

New-Item -ItemType Directory -Force -Path $testDir | Out-Null

Write-Host "CPU THREADS : $cores"

Write-Host "DURATION : $duration seconds"

Write-Host "CPU : FULL LOAD"

Write-Host "RAM : UP TO 4 GB"

Write-Host "DISK : READ / WRITE"

Write-Host "========================================" -ForegroundColor Red

try {

for ($c = 0; $c -lt $cores; $c++) {

$jobs += Start-Job -ArgumentList $end -ScriptBlock {

param($end)

while ((Get-Date) -lt $end) {

$x = 0.0

for ($i = 1; $i -le 100000; $i++) {

$x += [Math]::Sqrt($i)

}

}

}

}

$availableMB = (Get-CimInstance Win32_OperatingSystem).FreePhysicalMemory / 1024

$targetMB = [int][Math]::Min(4096, $availableMB * 0.5)

$jobs += Start-Job -ArgumentList $end,$targetMB -ScriptBlock {

param($end,$targetMB)

$blocks = New-Object 'System.Collections.Generic.List[byte[]]'

try {

for ($n = 0; $n -lt $targetMB; $n += 16) {

if ((Get-Date) -ge $end) { break }

$block = New-Object byte[] (16MB)

for ($i = 0; $i -lt $block.Length; $i += 4096) {

$block[$i] = 255

}

$blocks.Add($block)

}

while ((Get-Date) -lt $end) {

foreach ($block in $blocks) {

$block[0] = [byte](($block[0] + 1) % 256)

}

Start-Sleep -Milliseconds 100

}

}

finally {

$blocks.Clear()

}

}

$jobs += Start-Job -ArgumentList $end,$testDir -ScriptBlock {

param($end,$dir)

$file = Join-Path $dir "stress.bin"

$buffer = New-Object byte[] (1MB)

$rng = New-Object Random

$rng.NextBytes($buffer)

try {

while ((Get-Date) -lt $end) {

$fs = [IO.File]::Open(

$file,

[IO.FileMode]::Create,

[IO.FileAccess]::ReadWrite,

[IO.FileShare]::None

)

try {

for ($i = 0; $i -lt 256; $i++) {

if ((Get-Date) -ge $end) { break }

$fs.Write($buffer, 0, $buffer.Length)

}

$fs.Flush($true)

$fs.Position = 0

while ($fs.Read($buffer, 0, $buffer.Length) -gt 0) {

if ((Get-Date) -ge $end) { break }

}

}

finally {

$fs.Dispose()

}

}

}

finally {

Remove-Item $file -Force -ErrorAction SilentlyContinue

}

}

Write-Host "STRESS TEST RUNNING..." -ForegroundColor Yellow

$jobs | Wait-Job | Out-Null

$failures = @($jobs | Where-Object { $_.State -ne 'Completed' })

if ($failures.Count -eq 0) {

Write-Host " Выжил!" -ForegroundColor Green

}

else {

Write-Host "Сдох...." -ForegroundColor Red

$jobs | Receive-Job

}

}

finally {

$jobs | Stop-Job -ErrorAction SilentlyContinue

$jobs | Remove-Job -Force -ErrorAction SilentlyContinue

Remove-Item $testDir -Recurse -Force -ErrorAction SilentlyContinue

}

Write-Host "TEST FINISHED." -ForegroundColor Cyan

Показать полностью

Тест моего старого сервачка на прочность. Пикабу, управляй моим PowerShell (я серьезно!)⁠⁠

Добрая ночь: 22:53

Достал с антресолей свой старый серверный ПК), сдул пыль и решил устроить ему настоящий стресс-тест ради чистого интереса и веселья.

Я абсолютно серьезно: ваш комментарий моя команда в PowerShell.

Всё, что вы напишете в комментариях (в пределелах разумного), я скопирую, и запущу в терминале от имени администратора и выложу скриншот/видео с результатом.

Посмотрим, сколько этот дедушка протянет и сможете ли вы его положить, заспамить или заставить говорить!

Правила игры:

  1. Пишите команду PowerShell в комментариях

  2. Я беру команду, запускаю, делаю скриншот результата и скидываю в ответ на ваш коммент.

  3. Откровенно штуки вроде форматирования системного диска C: или удаления критических файлов Windows (если они убьют систему сразу и навсегда) я, пожалуй, пропущу, но всё остальное легко! Нагрузка на проц, спам процессами, странные скрипты, вывод скрытой инфы, такие крутите его как хотите.))

Погнали! Кто первый положит систему? Скрипты, бенчмарки, дичь жду всё в комментах.


Показать полностью 2
Отличная работа, все прочитано!

Темы

Политика

Теги

Популярные авторы

Сообщества

18+

Теги

Популярные авторы

Сообщества

Игры

Теги

Популярные авторы

Сообщества

Юмор

Теги

Популярные авторы

Сообщества

Отношения

Теги

Популярные авторы

Сообщества

Здоровье

Теги

Популярные авторы

Сообщества

Путешествия

Теги

Популярные авторы

Сообщества

Спорт

Теги

Популярные авторы

Сообщества

Хобби

Теги

Популярные авторы

Сообщества

Сервис

Теги

Популярные авторы

Сообщества

Природа

Теги

Популярные авторы

Сообщества

Бизнес

Теги

Популярные авторы

Сообщества

Транспорт

Теги

Популярные авторы

Сообщества

Общение

Теги

Популярные авторы

Сообщества

Юриспруденция

Теги

Популярные авторы

Сообщества

Наука

Теги

Популярные авторы

Сообщества

IT

Теги

Популярные авторы

Сообщества

Животные

Теги

Популярные авторы

Сообщества

Кино и сериалы

Теги

Популярные авторы

Сообщества

Экономика

Теги

Популярные авторы

Сообщества

Кулинария

Теги

Популярные авторы

Сообщества

История

Теги

Популярные авторы

Сообщества

Недвижимость и ремонт

Теги

Популярные авторы

Сообщества