ember-tune-pc1.ps1: the copy runs with Power control off (the installed setting is read and reported, never a prompt: the project lead, 6 October 2026 07:20Z), the kit paths after the update, the AMD card reset to factory at the end
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
This commit is contained in:
parent
f5dfdbf443
commit
e941588c58
1 changed files with 21 additions and 4 deletions
|
|
@ -40,15 +40,17 @@ $sLogs = Join-Path $root 'logs'
|
|||
New-Item -ItemType Directory -Force -Path $root, $sApp, $sLogs | Out-Null
|
||||
if (Test-Path $bin) { Remove-Item -LiteralPath $bin -Recurse -Force -ErrorAction SilentlyContinue }
|
||||
Copy-Item -LiteralPath $installDir -Destination $bin -Recurse -Force
|
||||
$ember = Join-Path $appDir 'jobs\ember-kit-1\igneum-app-ember.exe'
|
||||
if (Test-Path $ember) {
|
||||
$ember = $null
|
||||
foreach ($cand in @((Join-Path $appDir 'jobs\ember-kit-2\igneum-app-ember.exe'), (Join-Path $appDir 'jobs\ember-kit-1\igneum-app-ember.exe'))) { if (Test-Path $cand) { $ember = $cand; break } }
|
||||
if ($ember) {
|
||||
Copy-Item -LiteralPath $ember -Destination (Join-Path $bin 'igneum-app.exe') -Force
|
||||
Say ("engine: the Ember build from " + $ember)
|
||||
} else {
|
||||
Say 'engine: the installed one (no jobs\ember-kit-1\igneum-app-ember.exe); an older engine ignores the tune and reports no_rows'
|
||||
}
|
||||
$helper = Join-Path $appDir 'jobs\amd-kit-1\kit\igneum-gpu-telemetry.exe'
|
||||
if (Test-Path $helper) {
|
||||
$helper = $null
|
||||
foreach ($cand in @((Join-Path $appDir 'jobs\amd-kit-2\igneum-gpu-telemetry.exe'), (Join-Path $appDir 'jobs\amd-kit-1\kit\igneum-gpu-telemetry.exe'))) { if (Test-Path $cand) { $helper = $cand; break } }
|
||||
if ($helper) {
|
||||
Copy-Item -LiteralPath $helper -Destination (Join-Path $bin 'igneum-gpu-telemetry.exe') -Force
|
||||
Say ("helper: the Ember build of igneum-gpu-telemetry from " + $helper + " sha256=" + (Get-FileHash -LiteralPath $helper -Algorithm SHA256).Hash.ToLower())
|
||||
} else { Say 'helper: the installed igneum-gpu-telemetry (no jobs\amd-kit-1\kit\igneum-gpu-telemetry.exe); without --tune the AMD card measures only' }
|
||||
|
|
@ -68,6 +70,13 @@ if (Test-Path $sj) {
|
|||
try {
|
||||
$j = Get-Content -LiteralPath $sj -Raw | ConvertFrom-Json
|
||||
$j.remote_jobs = $false; $j.auto_update = $false; $j.prove = $false; $j.paused = $false; $j.setup_done = $true; $j.sweep = $true
|
||||
# the project lead, 6 October 2026, 07:20Z: never raise an administrator prompt. The installed app's Power control is READ and
|
||||
# reported, but the copy runs with it OFF so the second engine can never start the elevated helper; the 5090 is
|
||||
# measured as it runs either way (the two-knob tune is the installed engine's job once it carries Ember Tune)
|
||||
$installedPowerControl = $false
|
||||
try { $installedPowerControl = [bool]$j.power_control } catch { }
|
||||
Write-Output ('RESULT TUNE installed_power_control=' + $installedPowerControl.ToString().ToLower() + ' (the copy runs with it off: no prompt)')
|
||||
if ($j.PSObject.Properties.Name -contains 'power_control') { $j.power_control = $false } else { $j | Add-Member -NotePropertyName power_control -NotePropertyValue $false }
|
||||
# every card is due: the stored results are cleared in the COPY only
|
||||
if ($j.cards) { foreach ($p in $j.cards.PSObject.Properties) { $p.Value.sweep_at = 0; $p.Value.pinned = $false } }
|
||||
$j | ConvertTo-Json -Depth 8 | Set-Content -LiteralPath $sj -Encoding utf8
|
||||
|
|
@ -144,6 +153,14 @@ $all = @(); if (Test-Path -LiteralPath $outFile) { $all = @(Get-Content -Literal
|
|||
while ($seen -lt $all.Count) { $l = [string]$all[$seen]; $seen++; if ($l -match '^TUNE ') { Write-Output ('RESULT ' + $l); if ($l -match '^TUNE card=') { $rows++ } } }
|
||||
Say ("tune engine exited " + $p.ExitCode + " after " + [int]((Get-Date) - $started).TotalSeconds + " s, " + $rows + " table rows")
|
||||
EndTree $p.Id 'end of run'
|
||||
# the AMD card back to factory: the measurement leaves PC 1 as found (the product pins the point; the installed app
|
||||
# does not carry Ember Tune yet, so a pinned ADLX setting would be invisible to it)
|
||||
if (Test-Path $tele) {
|
||||
$tl = (& $tele --tune 2>&1 | Out-String)
|
||||
foreach ($m in [regex]::Matches($tl, 'tune (\d+) name "([^"]+)" gmax ([-\d]+) gmax_range')) {
|
||||
if ($m.Groups[3].Value -ne '-') { $r = (& $tele --card $m.Groups[1].Value --reset 2>&1 | Out-String).Trim(); Write-Output ('RESULT TUNE reset card ' + $m.Groups[1].Value + ' (' + $m.Groups[2].Value + '): ' + ($r -replace "`r?`n", ' | ')) }
|
||||
}
|
||||
}
|
||||
Snapshot 'after'
|
||||
# the tune engine's own log: the TUNE lines and what happened around them
|
||||
$log = Get-ChildItem -Path $sLogs -Filter 'app-*.log' -ErrorAction SilentlyContinue | Sort-Object LastWriteTime -Descending | Select-Object -First 1
|
||||
|
|
|
|||
Loading…
Reference in a new issue