Skip to content

Explore design space of endgame database building #9

@rhalbersma

Description

@rhalbersma
  • Binomial coefficients
    • ranking/unranking of combinations (colex)
    • ranking/unranking of positions
    • increment/decrement of combinations (colex)
    • increment/decrement of positions
    • gappless position indexing
    • symmetry reduced indexing
  • Subdivisions
    • by piece counts
    • by piece counts, leading ranks (any region)
    • by piece counts, leading ranks, leading rank configurations
    • by piece counts, leading ranks, leading rank configurations, subleading ranks
  • Conversions
    • enumerate capture conversions
    • enumerate promotion conversions
    • enumerate leading rank conversions
    • enumerate subleading rank conversions
  • Build dependencies
    • create Boost.Graph (vertices = subdivisions, edges = conversions)
    • topological sort for valid build order
    • total work
    • minimal memory requirements
    • uniform-cost search for critical path
    • potential parallelism
    • bread-first search for parallel build order
  • Build algorithm
    • forward iteration
    • backward iteration
    • outcounting
    • leapfrog
    • one-sided vs. two-sided
  • Metric
    • bitbases (won, not won)
    • WLD (win, loss, draw)
    • DTZ (distance to zeroing move)
    • DTM (distance to mate)
  • Statistics
    • disk I/O
    • memory access
    • moves generated
    • moves done/undone
    • ranking/unranking
    • estimate performance model (per build algorithm)
    • automate build algorithm selection per subdivision
  • Storage
    • design format of db, idx, log, stats files
    • serialization of std::vector, boost::dynamic_bitset
    • explore iostreams performance settings
  • Compression
    • run-length
    • Tunstall
    • explore Re-Pair
  • Access
    • LRU cache
    • explore memory mapped I/O

Metadata

Metadata

Assignees

Projects

Status

Backlog

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions