Ticket #144 (closed enhancement: duplicate)
GnuGO runtime options - doc and code
| Reported by: | draqo | Owned by: | gnugo |
|---|---|---|---|
| Priority: | lowest | Milestone: | |
| Component: | documentation | Version: | |
| Severity: | trivial | Keywords: | runtime options |
| Cc: | patch: | yes |
Description
Few options weren't described in documentation. And some that exists in main weren't supported.
Attachments
Regression Results
| Attachment | Rev. | PASS | FAIL | Nodes | Status | |
| config.h.in.patch | never tested | |||||
| configure.in.patch | never tested | |||||
| configure.patch | never tested | |||||
| gnugo.h.patch | never tested | |||||
| install.texi.patch | never tested | |||||
| main.c.patch | never tested | |||||
| showbord.c.patch | never tested | |||||
| using.texi.patch | never tested |
Change History
comment:2 in reply to: ↑ 1 Changed 5 years ago by draqo
- There should possibly be a note about --autolevel not applying to GTP mode. It only affects GMP and ASCII modes. Automatic level adjustment in GTP mode is triggered by the received commands (time_settings and time_left)
Note added.
- I'm not sure what to think with those "level 12". All developments and specially the regression tests suite are tuned for level 10. As to whether the engine can "endure" higher levels, I actually routinely run my bots on CGOS and KGS at level 14~15, sometimes higher, so saying that it's limited to 12 isn't true either. Personally, I would prefer that we leave level 10 as default everywhere, but the documentation should perhaps mention more clearly that higher settings are possible, with some warnings that it will certainly be slower, probably not very much stronger (not to mention the increased risk of crashes, due to uninvestigated bugs).
OK. I left recommendation for level 12, but default is still 10. And there is info now that level can be higher than 12.
Also I added:
- counting sizeof(int) in configure (SIZEOF_INT in config.h is available) - I copied code in configure from that according to sizeof(long) but it'll be better when somebody chekcs it carefully;
- configure option FINAL_RELEASE which should disable all stats, asserts, etc. that aren't needed in final release of the program (eg. for tournaments) - for now it only disables asserts with GG_TURN_OFF_ASSERTS but defines GG_TURN_OFF_TRACES and GG_TURN_OFF_STATS for later usage.
comment:3 follow-up: ↓ 4 Changed 5 years ago by arend
Hi draqo,
thanks for looking through this. It would be a lot easier if you could post just one patch that contains all the patches you posted (since it's a bit of a pain to download attachments in trac). Just cat them all together.
About the "final release" version: We have intentionally left all the asserts on for release versions. When I last looked at this, it didn't cost much performance, and the bug reports we got this way certainly helped to make gnugo stronger.
Did you measure the current performance difference?
Arend
comment:4 in reply to: ↑ 3 Changed 5 years ago by draqo
I'm moving changes from this ticket to another ticket. And there will be only one patch file.
And some replies to this:
About the "final release" version: We have intentionally left all the asserts on for release versions. When I last looked at this, it didn't cost much performance, and the bug reports we got this way certainly helped to make gnugo stronger.
Did you measure the current performance difference?
Enabling final release gives us a litlle more than 1% better performance. It's not much but it's always something. It should be used only for tournaments or big events, where every second could make some difference. In casual play - KGS, testing and everything - it should be disabled. But I think it should be used on tournamenets, where asserts don't give us too much.


Hi draqo,
First of all, welcome aboard :)
A few comments about your patches: