Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

FATAL ERROR: Could not determine the stress test program process ID! (looking for 00-x86) #72

Open
Dahjiir opened this issue Jul 14, 2024 · 14 comments
Labels
can't reproduce The issue could not be reproduced

Comments

@Dahjiir
Copy link

Dahjiir commented Jul 14, 2024

I have downloaded an exact copy of someone elses corecycler folder and it still gives me this error.

@Dahjiir
Copy link
Author

Dahjiir commented Jul 14, 2024

update to this, ycruncher had been running in the background through core cycler and suddenly just popped up

@sp00n
Copy link
Owner

sp00n commented Jul 14, 2024

If this is still a problem, please provide the log files and a screenshot of what's happening if possible.
Also make sure you're running the latest version of CoreCycler (mentioning this because 00-x86 is only available if you specifically select YCRUNCHER_OLD as the test program now).

@Dahjiir
Copy link
Author

Dahjiir commented Jul 15, 2024

image
image
yCruncher_2024-07-15_12-08-36_mode_00-X86.txt

seemed to launch right away, still gives me the error, seems like it runs but it tells me theres an error, im using corecruncher v0.9.5.0alpha 2. im guessing it works as it should its just telling me its not

@sp00n
Copy link
Owner

sp00n commented Jul 18, 2024

Huh, apparently I forgot to hit the Comment button a couple of days ago when I intended to post.

Please update to the latest version, your alpha version is now over a year old now.
Be aware that it includes a new y-Cruncher version, which doesn't support the 00-x86 test mode anymore, so you'd need to change is accordingly. As well as the selected tests, since those have changed as well with the new y-Cruncher.
You can still run the old y-Cruncher version by selecting YCRUNCHER_OLD as the stress test program though.

And make sure to also upload the CoreCycler log file if you still encounter this error with the latest version.

@sp00n sp00n added the can't reproduce The issue could not be reproduced label Aug 20, 2024
@senposage
Copy link

same issue window opens but script fails to find threads
yCruncher_2024-08-30_01-00-35_mode_04-P4P.log

@sp00n
Copy link
Owner

sp00n commented Aug 30, 2024

same issue window opens but script fails to find threads yCruncher_2024-08-30_01-00-35_mode_04-P4P.log

That log file is for the stress test program (y-cruncher), which doesn't tell anything about the problem in this situation.
The main CoreCycler log file would have the information and the corresponding error message.

@senposage
Copy link

@sp00n
Copy link
Owner

sp00n commented Sep 3, 2024

CoreCycler_2024-09-03_01-34-43_YCRUNCHER_04-P4P.log

In this log file the thread that is running the stress test couldn't be found.
From the list of all possible threads, it should've probably been the thread with the ID 7496, since it is the only one "Running" from y-cruncher. But it didn't report back any used processor time ( = CPU utilization so far), which is why it was disregarded.

Did y-cruncher actually run fine during this test, or did it take some time before starting it's calculations (e.g. more than the 30+ seconds the script was trying to get the thread)?

Also, does this always happen for you, or just occasionally?

@senposage
Copy link

ycruncher starts in a second window and its everytime I went back all the way to version 8.x same issue

@sp00n
Copy link
Owner

sp00n commented Sep 3, 2024

Hm. It's a wild guess, but maybe your Windows Performance Counters are somehow damage.
I've had reports of problems with the Performance Counters quite regularly when I was still directly using them in the script, but since I ditched these for the TotalProcessorTime I haven't received any new issues.

Here are some instructions on how you could reset / rebuild them:
https://docs.microsoft.com/en-US/troubleshoot/windows-server/performance/manually-rebuild-performance-counters
https://leansentry.zendesk.com/hc/en-us/articles/360038645792-How-to-Fix-performance-counter-issues

I've also tried to automate this process in a batch file named enable_performance_counter.bat, which you can find in the \tools directory.

Besides that, I currently do not know what else could be wrong here. Do the other stress tests work, like Prime95 and Linpack?

@kboom
Copy link

kboom commented Nov 2, 2024

Unfortunately, the same issue happens for me when I use ycruncher or linpack. It works fine for prime95...

@sp00n
Copy link
Owner

sp00n commented Nov 2, 2024

Unfortunately, the same issue happens for me when I use ycruncher or linpack. It works fine for prime95...

So which error is it, this one here or the one you reported in #90?

@zxcvxzcv-johndoe
Copy link

zxcvxzcv-johndoe commented Dec 14, 2024

Hello,

I am able to replicate this problem. Here's non-working and working CoreCycler logs:
Working-CoreCycler_2024-12-14_10-40-41_YCRUNCHER_19-ZN2 ~ KAGARI.log
Non-Working-CoreCycler_2024-12-14_10-38-34_YCRUNCHER_19-ZN2 ~ KAGARI.log

Basically steps for me to replicate it:

  1. Restart the computer
  2. Run as Administrator -> "CoreCycler-v0.10.0.0alpha5\Run CoreCycler.bat" and it fails with "FATAL ERROR: Could not determine the stress test program process ID! (looking for 19-ZN2 ~ Kagari)"

It's a bit hard to explain but it seems y-cruncher starts a bit "funny" (yeah, really scientific :D ) way. In task manager the cpu usage is OK, it seems to be using 1 core/thread so its doing the calculations but I am not able to open the y-cruncher window even with Alt-Tab and Windows says y-cruncher is not responding etc.

While that happens CoreCycler's window works normally.

And after I Ctrl-C Corecycler, I also need to kill y-cruncher using task manager, I cannot even kill it from the window itself since its not responding.

Even more strangely, after I have closed both Corecycler and y-cruncher when I start again the "Run CoreCycler.bat" using Run as Admin everything works normally. Like y-cruncher's window is responding normally etc.

And I can replicate the problem everytime I restart my computer. And same issue happens both CoreCycler-v0.10.0.0alpha5 and v0.9.6.2 versions.

I also downloaded the older CoreCycler-v0.8.0.0 version which I remember using few years back and it works perfectly every time.

I tested a bit more and the issue happens also after I delete config.ini so it reverts to defaults and I only change stressTestProgram = YCRUNCHER or YCRUNCHER_OLD.

It doesnt happen if I use the default PRIME95 and default config.ini, so with that combination even after restarting my computer Prime95 test starts normally without errors.

@zxcvxzcv-johndoe
Copy link

zxcvxzcv-johndoe commented Dec 15, 2024

Hello,

I am able to replicate this problem. Here's non-working and working CoreCycler logs: Working-CoreCycler_2024-12-14_10-40-41_YCRUNCHER_19-ZN2 ~ KAGARI.log Non-Working-CoreCycler_2024-12-14_10-38-34_YCRUNCHER_19-ZN2 ~ KAGARI.log

Basically steps for me to replicate it:

1. Restart the computer

2. Run as Administrator -> "CoreCycler-v0.10.0.0alpha5\Run CoreCycler.bat" and it fails with "FATAL ERROR: Could not determine the stress test program process ID! (looking for 19-ZN2 ~ Kagari)"

It's a bit hard to explain but it seems y-cruncher starts a bit "funny" (yeah, really scientific :D ) way. In task manager the cpu usage is OK, it seems to be using 1 core/thread so its doing the calculations but I am not able to open the y-cruncher window even with Alt-Tab and Windows says y-cruncher is not responding etc.

While that happens CoreCycler's window works normally.

And after I Ctrl-C Corecycler, I also need to kill y-cruncher using task manager, I cannot even kill it from the window itself since its not responding.

Even more strangely, after I have closed both Corecycler and y-cruncher when I start again the "Run CoreCycler.bat" using Run as Admin everything works normally. Like y-cruncher's window is responding normally etc.

And I can replicate the problem everytime I restart my computer. And same issue happens both CoreCycler-v0.10.0.0alpha5 and v0.9.6.2 versions.

I also downloaded the older CoreCycler-v0.8.0.0 version which I remember using few years back and it works perfectly every time.

I tested a bit more and the issue happens also after I delete config.ini so it reverts to defaults and I only change stressTestProgram = YCRUNCHER or YCRUNCHER_OLD.

It doesnt happen if I use the default PRIME95 and default config.ini, so with that combination even after restarting my computer Prime95 test starts normally without errors.

I tested this a bit more and with CoreCycler-v0.10.0.0alpha5 + YCRUNCHER enabled but otherwise default settings I cannot replicate the problem if I run Powershell ISE as Admin and debug the script-corecycler.ps1.

I put breakpoints around here, I stepped through the code and it correctly gets the process ID even straight after restarting the computer. And it still doesnt work first time (no matter if my Powershell logging is enabled or not) if I run the "Run CoreCycler.bat", but it does work second time.


    # Also, the process performing the stress test can actually be different to the main window of the stress test program
    # If so, search for it as well
    if ($stressTestPrograms[$settings.General.stressTestProgram]['processName'] -ne $stressTestPrograms[$settings.General.stressTestProgram]['processNameForLoad']) {
        Write-Verbose('The process performing the stress test is NOT the same as the main window!')
        Write-Verbose('Searching for the stress test process id...')

        try {
            Write-Verbose('Searching for "' + $stressTestPrograms[$settings.General.stressTestProgram]['processNameForLoad'] + '"...')
            $thisStressTestProcess   = Get-Process $stressTestPrograms[$settings.General.stressTestProgram]['processNameForLoad'] -ErrorAction Stop
            $thisStressTestProcessId = $thisStressTestProcess.Id

            Write-Verbose('Found with ID: ' + $thisStressTestProcessId)
        }
        catch {
            $message = 'Could not determine the stress test program process ID! (looking for ' + $stressTestPrograms[$settings.General.stressTestProgram]['processNameForLoad'] + ')'

            # Only throw an error if the flag to do so was set
            # It may be possible that e.g. the main window of Aida64 was started, but no stress test is currently running
            if ($stopOnStressTestProcessNotFound) {
                Exit-WithFatalError -text $message
            }
            else {
                Write-Verbose($message)
            }
        }
    }

edit:

I managed to fix also this problem, simply adding 'Start-Sleep -Milliseconds 5000' at the start of the Try-block seems to allow y-cruncher to start before corecycler tries to find it, or something like that.

Of course 5 seconds is probably overkill and that's probably not correct way of fixing the issue but after that delay corecycler works also after the restart. So perhaps you can add some kind of logic there to make sure corecycler doesn't try to get the process ID too quickly?

    # Also, the process performing the stress test can actually be different to the main window of the stress test program
    # If so, search for it as well
    if ($stressTestPrograms[$settings.General.stressTestProgram]['processName'] -ne $stressTestPrograms[$settings.General.stressTestProgram]['processNameForLoad']) {
        Write-Verbose('The process performing the stress test is NOT the same as the main window!')
        Write-Verbose('Searching for the stress test process id...')

        try {
            Start-Sleep -Milliseconds 5000
            Write-Verbose('Searching for "' + $stressTestPrograms[$settings.General.stressTestProgram]['processNameForLoad'] + '"...')
            $thisStressTestProcess   = Get-Process $stressTestPrograms[$settings.General.stressTestProgram]['processNameForLoad'] -ErrorAction Stop
            $thisStressTestProcessId = $thisStressTestProcess.Id

            Write-Verbose('Found with ID: ' + $thisStressTestProcessId)
        }
        catch {
            $message = 'Could not determine the stress test program process ID! (looking for ' + $stressTestPrograms[$settings.General.stressTestProgram]['processNameForLoad'] + ')'

            # Only throw an error if the flag to do so was set
            # It may be possible that e.g. the main window of Aida64 was started, but no stress test is currently running
            if ($stopOnStressTestProcessNotFound) {
                Exit-WithFatalError -text $message
            }
            else {
                Write-Verbose($message)
            }
        }
    }

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
can't reproduce The issue could not be reproduced
Projects
None yet
Development

No branches or pull requests

5 participants