lucaschessR2 icon indicating copy to clipboard operation
lucaschessR2 copied to clipboard

Option to disable the tutor and analyzer when playing a game.

Open curiosport opened this issue 2 months ago • 22 comments

When I start a game, the tutor and analyzer engines start running in the background. When I need them, they use a lot of my PC's power, but when I don't need them, I want to free up resources because if I don't, my PC slows down.

There should be an option to disable it.

curiosport avatar Oct 05 '25 04:10 curiosport

Image
Image

lukasmonk avatar Oct 05 '25 06:10 lukasmonk

There are three active stockfish processes, but as the game has just started, it does not consume many resources. I configured stockfish as the tutor and analyzer to make the demonstration obvious, but the same applies to other engines.

There is no button to disable the tutor.

Image

curiosport avatar Oct 05 '25 23:10 curiosport

Right now the three stockfish instances, which only occupy 600Mb of memory, do not slow down the system.

If the following option is enabled, it also keeps one instance of stockfish running in the background, although this does not seem to be the case:

Image

If you have done a scan of the e4 movement, then another instance of stockfish is created. But the only thing it affects is memory, about 200 Mb. It only affects performance while doing the scan.

The third instance I have no data to determine why it could have been created, and it appears to be inactive.

lukasmonk avatar Oct 06 '25 06:10 lukasmonk

"If you have done a scan of the e4 movement" I didn't do any of that.

And the option you mentioned is disabled: Image

As I said in my previous comment, it doesn't consume many system resources because the game has just started. As it progresses, everything slows down, but that's mainly because I have configured the tutor and the analyzer to use all my cores. However, I'm supposed to use them when I need them and when high system usage isn't a problem for me.

There are three instances because:

  1. The engine I'm playing against
  2. The tutor
  3. The analyzer

I know this because I already tried configuring the tutor and the analyzer with other engines, and you can see this list of active engines (this is an example):

  1. stockfish (the engine I'm playing against)
  2. cheng (the tutor)
  3. gaviota (the analyzer)

In the screenshot I showed you earlier, I configured stockfish for all three things (that's why you see 3 stockfish processes in the task manager), but I'm supposed to be able to disable the analyzer and the tutor, but I can't. And I insist, this happens regardless of the engine you configure.

In addition, a stockfish instance is activated as soon as I open LucasChess, even when I haven't started a game, but when I really start a game, that instance closes and three new processes open, as I already mentioned.

curiosport avatar Oct 06 '25 07:10 curiosport

Engines are not started until they are not used.

  1. stockfish, it is obviously started.
  2. cheng, the programme does not start until it is used. If it has not been indicated that there is a tutor, it does not have to be started and on my computer it is not started.
  3. gull, if no analysis has been done, it does not have to be started, and on my computer it is not.

In addition, a stockfish instance is activated as soon as I open LucasChess, even when I haven't started a game, but when I really start a game, that instance closes and three new processes open, as I already mentioned.

There is something that escapes me. It seems impossible to me, although I'm used to being surprised. The programme does not launch any engines at start-up.

It will be curious to understand why stockfish is launched at startup in your case, something I am not taking into account.

The first time the program is used, and an option is chosen, it searches for the best stockfish for the current machine. But this only happens once, the following times that the programme is launched this process is not done, so it is not launched.

lukasmonk avatar Oct 06 '25 07:10 lukasmonk

"why stockfish is launched at startup in your case"

I checked again and it's not happening anymore, but I could have sworn it was happening. I guess there must be some specific scenario that I haven't noticed or maybe from opening and closing it so much, I got confused and was wrong when I said that. But the three processes when starting a game still occur.

For some reason, the red button with the letter M does not appear in my GUI as it does in yours. Does that matter?

curiosport avatar Oct 06 '25 07:10 curiosport

An important detail is that I use external stockfish, not the internal one that comes by default with LucasChess, but one that I downloaded myself from the official website.

curiosport avatar Oct 06 '25 07:10 curiosport

Ok clarified, and not because it is external, it will depend on the number of threads you have configured and stockfish launches independent processes to work with them.

For some reason, the red button with the letter M does not appear in my GUI as it does in yours. Does that matter?

M (Millenium) is the eboard I use

lukasmonk avatar Oct 06 '25 07:10 lukasmonk

Okay, if you still don't believe there's a problem, I give up. First of all, I know why I thought a stockfish process was launched when the program started. In reality, this can happen with any engine, not just stockfish, which was just an example from the beginning.

When I open LucasChess, everything is normal. Then, without starting any game, I open the engine settings, and when I close that window, the tutor and analyzer engines run and a process opens for each one. I insist that this happens with any engine. The problem is not with a particular engine or with the use of multiple threads, that has nothing to do with it.


Now we move on to the original issue, which is that I cannot disable the tutor or the analyzer. I will explain the configuration:

Opponent Maia-2200 Tutor Andscacs Analyzer Rybka

When I start a game without even making a move, those three processes are launched by LucasChess, but only lc0.exe (Maia-2200) should be launched. However, the other processes open when I don't even want to use them and they are supposed to be disabled.

Here's a screenshot:

Image

If you cannot reproduce the problem, this makes me think that LucasChess uses the system registry to load the configuration and is probably reading the configuration from an old version that I no longer use.

On a separate note, I recently discovered how the engine configuration window messes up my custom engine, but that's for another thread. I guess I'll have to upload a video.

curiosport avatar Oct 06 '25 19:10 curiosport

For some reason I can´t replicate the problem. A video with the program and the Task manager can help.

And the program does not make any queries to the system registry.

lukasmonk avatar Oct 06 '25 20:10 lukasmonk

Thanks, but I still can't replicate the problem. How did you install the programme, for one user or for all users?

lukasmonk avatar Oct 07 '25 05:10 lukasmonk

I used the portable version, and I have an administrator account. I downloaded the new portable version and extracted it to another directory and now the problem hasn't happened again, but I'm afraid it might happen again someday.

curiosport avatar Oct 07 '25 15:10 curiosport

Then, this is most likely due to a permissions problem on program folders.

lukasmonk avatar Oct 07 '25 15:10 lukasmonk

Why do you suspect that? From my perspective, if there were a permissions issue, what should happen is that no engine would run, but what happens is that they do.

curiosport avatar Oct 07 '25 15:10 curiosport

In all the engine folders there is a file with extension .uci_options. It is created with the UCI options of each engine, so that it is needed to launch the engine to know which options it has, this means that it is needed to have write permissions on the engine folder. And this is the reason why the engine has to be launched, because it has not been possible to create this file.

lukasmonk avatar Oct 07 '25 16:10 lukasmonk

Eureka!, I was finally able to replicate the issue. I made a clean copy of the portable version so that it appears as if LucasChess is running for the first time on my PC, from the beginning of the video I show you how you can replicate the issue.

https://www.mediafire.com/file/3weodehiqs6tlsi/The_Rebel_Lucas_Replication_Issue.mp4

curiosport avatar Oct 11 '25 04:10 curiosport

Thanks for the video. With the new update (FP-5) I have not been able to replicate the problem.

lukasmonk avatar Oct 11 '25 07:10 lukasmonk

But did you do exactly what I did? Did you set the configuration the same way I did? It's important that you change the configuration the same way I did. I don't think you need to use the exact values, but you do need to make changes to the configuration, when I have time I'll try the new version.

curiosport avatar Oct 11 '25 15:10 curiosport

Let me know when you try the new version. this version has a change that can affect.

lukasmonk avatar Oct 11 '25 15:10 lukasmonk

I already tried the new version you mentioned and the same thing happens, but I realized that there is only one field that causes the problem, and that is "Number of variations evaluated by the engine (MultiPV):" it doesn't matter if you change the other fields or not, the problem does not occur with the other fields, but if you leave the MultiPV field at 0, and specifically only at 0, then the problem starts, and I repeat, it only happens if you leave it at 0.

curiosport avatar Oct 11 '25 15:10 curiosport

As you say, the MultiPV change is what starts the engine. Fixed. Thank you very much.

lukasmonk avatar Oct 11 '25 15:10 lukasmonk