Page 3 of 3

Re: Houdini 6 Caused Exception Error

Posted: Fri Sep 22, 2017 2:25 pm
by Nordlandia
Unfortunately nalimov egtb is only supported on Pro version.

I tried Houdini 6 Standard.exe but that compile does not support DTM.

Re: Houdini 6 Caused Exception Error

Posted: Fri Sep 22, 2017 3:16 pm
by CheckersGuy
Everyone who buys Houdini 6 and uses gmail should check their spamfolder. Just bought houdini 6 and was like "Where the hell is this freaking email" until I checkedthe spamfolder :lol:

Re: Houdini 6 Caused Exception Error

Posted: Sat Sep 23, 2017 10:38 pm
by Houdini
Nordlandia wrote:Unfortunately nalimov egtb is only supported on Pro version.

I tried Houdini 6 Standard.exe but that compile does not support DTM.
Jon Fredrik, we've been able to trace down the Nalimov crash issue to a compilation difference between Visual Studio and gcc (code that works well in VS doesn't seem to work in gcc, for reasons I still don't quite understand).
We're writing a work-around and the solution will be made available in a Houdini 6.01 update.

Re: Houdini 6 Caused Exception Error

Posted: Sat Sep 23, 2017 11:17 pm
by Nordlandia
Houdini wrote:
Nordlandia wrote:Unfortunately nalimov egtb is only supported on Pro version.

I tried Houdini 6 Standard.exe but that compile does not support DTM.
Jon Fredrik, we've been able to trace down the Nalimov crash issue to a compilation difference between Visual Studio and gcc (code that works well in VS doesn't seem to work in gcc, for reasons I still don't quite understand).
We're writing a work-around and the solution will be made available in a Houdini 6.01 update.
Much appricated indeed. This is excellent news.

Re: Houdini 6 Caused Exception Error

Posted: Sat Sep 23, 2017 11:44 pm
by Ras
Houdini wrote:code that works well in VS doesn't seem to work in gcc, for reasons I still don't quite understand
GCC has become much pickier about exploiting undefined behaviour for optimisation. Means, assuming that the code doesn't exhibit undefined behaviour, but if it does, then all bets are off what the compiled binary will do.

The usual suspects here are e.g. pointer null checks after dereferencing. Even if that happens only in one rare code path, GCC may just eliminate the whole null pointer check.

Another frequent source is pointer aliasing. GCC has been assuming no pointer aliasing since version 4.9 per default when optimising with -O02 or higher. If the code crashes but stops doing so when using -fno-strict-aliasing , then you have an aliasing issue. I recommend testing with strict pointer aliasing, but unless benchmarks prove that there is a significant speed gain, I'm using -fno-strict-aliasing for release builts.

Another thing is that strictly speaking, signed integer overflow isn't defined in C because the compiler is free to choose any implementation. 2's complement, 1's complement or absolute value plus sign. These days, every machine has 2's complement, but it isn't in the standard. Testing a build with -fno-strict-overflow may be useful.

Sometimes, GCC can catch such things at compile time when using:
-Wall -Wmaybe-uninitialized -Wstrict-aliasing -Wlogical-op -Wno-cast-align

Last, GCC offers a bunch of sanitiser options:
-fsanitize=address
-fsanitize=bounds
-fsanitize=object-size
-fsanitize=alignment
-fsanitize=null
-fsanitize=undefined
-fsanitize=shift
-fsanitize=signed-integer-overflow
-fsanitize=integer-divide-by-zero

Use these for compiling/linking and run the binary. Error messages will be visible on stdout (or stderr, don't remember). Works only under Linux, not with MingW or Cygwin.

Oh, and from my experience, the MS C runtime can be happy with things like closing open files twice, but I remember crashes when doing this with GCC. May also apply to freeing memory twice.

Re: Houdini 6 Caused Exception Error

Posted: Sun Sep 24, 2017 7:50 am
by tpoppins
Houdini wrote:we've been able to trace down the Nalimov crash issue [...]
We're writing a work-around and the solution will be made available in a Houdini 6.01 update.
Nice, I've seen that crash as well - with v5 (incl. v5.01) but have yet to use Nalimov with the v6.

Robert, last year, a little before the v5.01 update I requested a small feature and reported some minor issues (here and the next post) but it seems like they all slipped by you. I suppose I should have tried email...

Well, now that you're planning another update, perhaps you could have a look at the old posts linked above.

I also share the sentiment expressed elsewhere in this thread that a year is rather a long time between new versions. Sure, if Houdini 7 should (God forbid) come out in 2020 rather than next year you can still count on a loyal customer here; still, it would be nice to have an update at least every six months.

Re: Houdini 6 Caused Exception Error

Posted: Sun Sep 24, 2017 10:58 am
by Houdini
tpoppins wrote:Robert, last year, a little before the v5.01 update I requested a small feature
Implementing a "Hide fail low/high" option is straightforward.
My only reluctance is that another UCI option is added that clutters the options window, needs explaining and will not be used by 95+% of the users :).
tpoppins wrote: and reported some minor issues (here and the next post)
That behavior was actually as intended. The additional line of output is the summary of the iteration (=depth). Still, it does seem like a good idea to be able to turn off this redundant output if the GUI doesn't handle that very well.

I suggest to call the option "Hide redundant output". This would disable the fail high/low lines as well as the summary line at the end of each iteration. I'll try to add it to Houdini 6.01.

Re: Houdini 6 Caused Exception Error

Posted: Sun Sep 24, 2017 11:11 am
by Nordlandia
Any scheduled release date for Houdini 6.01 yet?

Re: Houdini 6 Caused Exception Error

Posted: Sun Sep 24, 2017 12:06 pm
by Houdini
ASAP. It will depend on the solution of the error with the Pro version.

Re: Houdini 6 Caused Exception Error

Posted: Sun Sep 24, 2017 12:28 pm
by Nordlandia
Small request: make Houdini play chess well if more than regular number of pieces is on the board. Stockfish support this mode.

Houdini start to play weird once more than allowed pieces is one the board.

Example position

[d]1nbqqbnk/pppppppp/8/8/8/8/PPPPPPPP/RNBQKBNR w - - 0 1

[d]nnnnknnn/pppppppp/8/8/8/8/PPPPPPPP/1Q1QK1Q1 w - - 0 0

[pgn][Event "?"]
[Site "CuteChess 1.0.0 | i7-5960X 4.1GHz 8-Core"]
[Date "2017.09.24"]
[Round "?"]
[White "Houdini 6"]
[Black "stockfish_x64_bmi2"]
[Result "0-1"]
[FEN "1nbqqbnk/pppppppp/8/8/8/8/PPPPPPPP/RNBQKBNR w - - 0 1"]
[PlyCount "8"]
[SetUp "1"]
[Termination "illegal move"]
[TimeControl "720+12"]

1. d4 {+0.27/25 52s} d5 {+1.68/29 46s} 2. c4 {+0.43/23 17s} dxc4 {+2.34/25 9.9s}
3. e3 {+0.25/27 40s} e5 {+2.72/28 10s} 4. Bxc4 {+0.40/24 14s}
exd4 {+3.27/26 11s, White makes an illegal move: e3d4} 0-1

[/pgn]