Fishnet worker • Stockfish 18 • Feeding the queue

Help provide compute power.

Run the MaxPV fishnet client and contribute to deep chess analysis. Your machine pulls work from the queue and runs Stockfish.

Security: download Stockfish from the official source; fishnet comes from our fork.

Checklist (2 minutes)

  • Stockfish 18 installed (path known).
  • MaxPV fishnet binary downloaded from the fork.
  • PC registered, `fishnet.ini` next to the binary.
Running 24/7? Keep limits conservative (1 core recommended for MaxPV).

Why contribute?

Analysis on MaxPV.org runs through a Fishnet-compatible queue. The client you use here is derived from the official Lichess fishnet client : we maintain a separate fork that talks to the MaxPV fishnet server (kenneth-venken/fishnet). The protocol stays aligned with the upstream fishnet protocol; for background see also the original fishnet documentation.

You need a stable internet connection, a machine you may keep running (optionally 24/7), Stockfish 18 , the MaxPV fishnet binary (see step 2), and a personal key (registration required).

You run software at your own risk. Download Stockfish from the official source; the fishnet build is on GitHub Releases for the fork (see step 2).

Step-by-step

Follow in order. It is set up for a quick start, with clear safety/limits.

  1. Download and install Stockfish 18

    The engine must be available to the client (exact wiring via CLI or build: see fishnet --help for your MaxPV build). Install version 18 and note the path to the executable.

    Download Stockfish (official site)

  2. Download the MaxPV fishnet client

    Use the binary from our fork , not the default Lichess release. Prebuilds are on GitHub: kenneth-venken/fishnet — Releases. Below are direct downloads of the latest release (filenames fishnet.exe / fishnet-linux).

    Place the file somewhere on disk; avoid spaces in the path or quote the path correctly where needed.

  3. Register your PC and download fishnet.ini

    Your fishnet key ties your contribution to your MaxPV account. On the keys page you register your PC and download fishnet.ini.

    Important: place fishnet.ini in the same folder as the fishnet executable (e.g. fishnet.exe). By default the client reads fishnet.ini from the working directory unless you pass another path with --conf.

    Settings live in fishnet.ini in the working directory unless you pass another path with --conf. The MaxPV client only reads certain keys from the section [Fishnet] (capital F). The Stockfish path is separate: a lowercase line engine = … outside [Fishnet] — and that scan always uses fishnet.ini in the current working directory, not the path from --conf. Command-line options override INI values where applicable.

    INI keys

    KeyRequired?Meaning
    KeyYes (to run)Your MaxPV/fishnet API key.
    EndpointNoBase URL of the MaxPV fishnet server: https://fishnet.maxpv.org.
    CoresNoNumber of engine processes / logical cores: auto (n−1), all / max, or a number. For MaxPV: use Cores = 1— we run deep analysis and do not want multiple heavy engines in parallel.
    MemoryLimitNoUpper bound on total RAM for all engines together, in MB (see explanation below).
    ThreadLimitNoUpper bound on total threads across all engines (see explanation below).
    UserBacklogNoshort, long, 0, or a duration (e.g. 120s, 2h).
    SystemBacklogNoSame shape as UserBacklog.

    Outside [Fishnet]: line engine = path to stockfish (lowercase engineonly), read from fishnet.ini in the working directory.

    Options like MaxBackoff, cpu_priority, stats file, etc. are not in the INI — CLI only.

    MemoryLimit

    Unit: megabytes (MB), total for all Stockfish/Fairy-Stockfish instances. Fishnet first computes an automatic ceiling: 70% of physical RAM on the machine. MemoryLimit is only an additional cap: you can only lower with it, never get more memory than that 70%. The maximum thread count is then derived from RAM at roughly 128 MB per thread (engine_mem_mb / 128), unless the CPU limit is lower.

    Practical: lower MemoryLimit if you want to leave RAM for other apps, or make fishnet less aggressive.

    ThreadLimit

    Unit: positive integer = maximum total threads across all engines. Fishnet first computes a maximum from CPU (logical cores minus 2, at least 1) and RAM (from effective engine memory: 70% RAM, optionally capped by MemoryLimit, divided by 128 MB per thread). The smaller of those two is the automatic maximum. ThreadLimit may only lower it further (if > 0). 0 is not used as a cap in code; use a positive number for a real limit.

    Practical: useful to tame fishnet on a shared machine or for heat/power without necessarily tweaking Cores.

    Example

    [Fishnet]
    Key = your_key
    Endpoint = https://fishnet.maxpv.org
    Cores = 1
    MemoryLimit = 2048
    ThreadLimit = 6
    
    engine = C:\path\to\stockfish.exe

    In short: MemoryLimit caps total RAM budget (not above 70% physical RAM); ThreadLimit caps threads on top of what CPU and that RAM budget allow. For MaxPV: keep Cores = 1.

  4. Start the client

    Windows: start from the folder where the binary and fishnet.ini live (PowerShell or double-click, depending on the build).

    Linux: chmod +x fishnet and for example ./fishnet. Extra options (including --conf) are documented in fishnet --help.

    With a valid key and endpoint the client should fetch work. If it stays idle, the queue may be empty.

Credits

We want to give something back to contributors, e.g. credits for deeper analysis or queue priority. Exact rules are still being defined : measurement and distribution will follow once backend rules are fixed.

No hard promises on amounts or ratios until then.

Troubleshooting

  • Check that Stockfish is reachable and the path matches your build.
  • Invalid or missing key — verify via /keys.
  • Firewall: outbound HTTPS to https://fishnet.maxpv.org must be allowed.
  • Linux: execute permission on the fishnet binary.

Legal (short)

Participation is voluntary. No uptime or payment guarantee; you can stop whenever you want.

Useful links