Elements of the ULTIMATE Chess GUI?

Discussion of anything and everything relating to chess playing software and machines.

Moderator: Ras

Dann Corbit
Posts: 12885
Joined: Wed Mar 08, 2006 8:57 pm
Location: Redmond, WA USA

Re: Elements of the ULTIMATE Chess GUI?

Post by Dann Corbit »

sovaz1997 wrote: Fri Apr 05, 2019 8:50 pm
Dann Corbit wrote: Fri Apr 05, 2019 8:12 pm
Rebel wrote: Fri Apr 05, 2019 9:27 am Many of the ideas you mentioned I would love to see them in a GUI as well but it seems to me the nature of the ideas fit better in a database program like SCID.
The GUI needs to be attached both to engines and to databases.
Otherwise, it is just a thing that scrolls through games.
Do you mean somehow combine these things?
In the sense that when you do an analysis, it is stored in the database and compared with a specific engine, its version, its settings. And when this position is reopened, the analysis will be saved.
What, do you mean like this:
tcec.png
Taking ideas is not a vice, it is a virtue. We have another word for this. It is called learning.
But sharing ideas is an even greater virtue. We have another word for this. It is called teaching.
sovaz1997
Posts: 292
Joined: Sun Nov 13, 2016 10:37 am

Re: Elements of the ULTIMATE Chess GUI?

Post by sovaz1997 »

Like, if you analyze a position, then this analysis is stored in a database. Re-opening a position allows you to see the analysis you’ve made. Also, it can be used to fill the engine's hash table (by giving it quick launches of PV moves from the analysis).
Zevra 2 is my chess engine. Binary, source and description here: https://github.com/sovaz1997/Zevra2
Zevra v2.6 is last version of Zevra: https://github.com/sovaz1997/Zevra2/releases
Dann Corbit
Posts: 12885
Joined: Wed Mar 08, 2006 8:57 pm
Location: Redmond, WA USA

Re: Elements of the ULTIMATE Chess GUI?

Post by Dann Corbit »

sovaz1997 wrote: Fri Apr 05, 2019 9:15 pm {snip}
Now I understand what you are talking about. Yes, I think there is a definite advantage to having a general-purpose database for this: unlimited expansion options and more flexibility in data management. The ability to make your own requests of any complexity.
But I am afraid that such a database may take up more space and have a lower access speed.
If we use MonetDB, then the data will be accessed at (approximately) memory speed.
And the AMD 7nm Epyc stuff is coming this summer.
$3500 will buy you 18 TB of enterprise class SSD.
A little more, if you want m.2 gumsticks.

Compute power is not the problem.
Utilization of that power for optimal purpose is the problem.
Taking ideas is not a vice, it is a virtue. We have another word for this. It is called learning.
But sharing ideas is an even greater virtue. We have another word for this. It is called teaching.
Fulvio
Posts: 399
Joined: Fri Aug 12, 2016 8:43 pm

Re: Elements of the ULTIMATE Chess GUI?

Post by Fulvio »

Dann Corbit wrote: Fri Apr 05, 2019 9:45 pm If we use MonetDB, then the data will be accessed at (approximately) memory speed.
Do you have some concrete benchmark?
Let's say a 10 million games database: how long it takes to find the games (not just the positions, if I would like to study the ending I need to see the continuation) with for example a king+rook vs king+rook+pawn ending?
sovaz1997
Posts: 292
Joined: Sun Nov 13, 2016 10:37 am

Re: Elements of the ULTIMATE Chess GUI?

Post by sovaz1997 »

Dann Corbit wrote: Fri Apr 05, 2019 9:45 pm
sovaz1997 wrote: Fri Apr 05, 2019 9:15 pm {snip}
Now I understand what you are talking about. Yes, I think there is a definite advantage to having a general-purpose database for this: unlimited expansion options and more flexibility in data management. The ability to make your own requests of any complexity.
But I am afraid that such a database may take up more space and have a lower access speed.
If we use MonetDB, then the data will be accessed at (approximately) memory speed.
And the AMD 7nm Epyc stuff is coming this summer.
$3500 will buy you 18 TB of enterprise class SSD.
A little more, if you want m.2 gumsticks.

Compute power is not the problem.
Utilization of that power for optimal purpose is the problem.
In that case, this is a very good idea.
Zevra 2 is my chess engine. Binary, source and description here: https://github.com/sovaz1997/Zevra2
Zevra v2.6 is last version of Zevra: https://github.com/sovaz1997/Zevra2/releases
sovaz1997
Posts: 292
Joined: Sun Nov 13, 2016 10:37 am

Re: Elements of the ULTIMATE Chess GUI?

Post by sovaz1997 »

Fulvio wrote: Fri Apr 05, 2019 10:01 pm
Dann Corbit wrote: Fri Apr 05, 2019 9:45 pm If we use MonetDB, then the data will be accessed at (approximately) memory speed.
Do you have some concrete benchmark?
Let's say a 10 million games database: how long it takes to find the games (not just the positions, if I would like to study the ending I need to see the continuation) with for example a king+rook vs king+rook+pawn ending?
For the ending, there are other solutions - the Nalimov tables, the Syzygy tables. I don't think that the database is suitable for this.
Zevra 2 is my chess engine. Binary, source and description here: https://github.com/sovaz1997/Zevra2
Zevra v2.6 is last version of Zevra: https://github.com/sovaz1997/Zevra2/releases
Fulvio
Posts: 399
Joined: Fri Aug 12, 2016 8:43 pm

Re: Elements of the ULTIMATE Chess GUI?

Post by Fulvio »

sovaz1997 wrote: Fri Apr 05, 2019 10:05 pm For the ending, there are other solutions - the Nalimov tables, the Syzygy tables. I don't think that the database is suitable for this.
Oh... no positional search?
That's a very big limitation for the ULTIMATE Chess GUI...
Dann Corbit
Posts: 12885
Joined: Wed Mar 08, 2006 8:57 pm
Location: Redmond, WA USA

Re: Elements of the ULTIMATE Chess GUI?

Post by Dann Corbit »

Fulvio wrote: Fri Apr 05, 2019 10:01 pm
Dann Corbit wrote: Fri Apr 05, 2019 9:45 pm If we use MonetDB, then the data will be accessed at (approximately) memory speed.
Do you have some concrete benchmark?
Let's say a 10 million games database: how long it takes to find the games (not just the positions, if I would like to study the ending I need to see the continuation) with for example a king+rook vs king+rook+pawn ending?
MonetDB is a general purpose in-memory transaction based ACID compliant column based SQL store.
https://www.monetdb.org/Home

Independent Benchmark:
https://www.slideshare.net/FENGGEORGEYU ... ncharmarks

Anther interesting choice is omnisci, but it runs on GPU and has some limitations (e.g. GPU memory size).
https://github.com/omnisci

Clickhouse is also interesting:
https://clickhouse.yandex/
But it only runs on Posix platforms, and most of the world is Windoze.
Taking ideas is not a vice, it is a virtue. We have another word for this. It is called learning.
But sharing ideas is an even greater virtue. We have another word for this. It is called teaching.
Fulvio
Posts: 399
Joined: Fri Aug 12, 2016 8:43 pm

Re: Elements of the ULTIMATE Chess GUI?

Post by Fulvio »

Dann Corbit wrote: Fri Apr 05, 2019 10:24 pm
Fulvio wrote: Fri Apr 05, 2019 10:01 pm
Dann Corbit wrote: Fri Apr 05, 2019 9:45 pm If we use MonetDB, then the data will be accessed at (approximately) memory speed.
Do you have some concrete benchmark?
Let's say a 10 million games database: how long it takes to find the games (not just the positions, if I would like to study the ending I need to see the continuation) with for example a king+rook vs king+rook+pawn ending?
MonetDB is a general purpose in-memory transaction based ACID compliant column based SQL store.
https://www.monetdb.org/Home
I probably misunderstood the screenshot you posted.
I thought you already had a SQL database, and I am genuinely interested in some chess benchmark.
The point is that traditionally general purpose SQL engines were too slow, for example:
https://triplehappy.wordpress.com/2016/ ... mentation/

However, as you pointed out, computer will keep becoming faster, and if it wasn't for the performance penalty, general purpose databases would be the obvious choice. And there is the amazing Lichess example, which successfully uses a distributed mongoDB database...
Dann Corbit
Posts: 12885
Joined: Wed Mar 08, 2006 8:57 pm
Location: Redmond, WA USA

Re: Elements of the ULTIMATE Chess GUI?

Post by Dann Corbit »

I do already have a chess database, but it is not general purpose.
The screen shot of the database that I showed was SQL Server.
But I have data in other database systems, also.

Much of what I am saying in this thread is also about things that I want, not things that I have.

I have not done a conversion to MonetDB yet, though I do not think it would be very difficult, since I wrote a real time data synchronization program that will move data from any ODBC data source to any other ODBC data source. But what I have right now works fine for what I use it for. Eventually, I will probably convert it, but I am not in a rush.

I also cannot share my database conveniently, since it has many terabytes of data.
Taking ideas is not a vice, it is a virtue. We have another word for this. It is called learning.
But sharing ideas is an even greater virtue. We have another word for this. It is called teaching.