Watney Solver v1.2.0
Small feature and bugfix release
This version introduces solver thread limiting and fixes a logging issue.
Changelog
Added
- In the library: The solver now allows limiting the number of threads it uses. The new
SolverGlobalConfiguration
class allows setting a propertyMaxThreads
that is respected by the Solver class. Example:
var globalSolverConfiguration = Solver.SolverGlobalConfiguration;
globalSolverConfiguration.MaxThreads = Environment.ProcessorCount - 1; // Default is Environment.ProcessorCount
Solver.SetGlobalConfiguration(globalSolverConfiguration); // After this the change takes effect.
-
In CLI: optional parameter to allow limiting how many threads the solver can use. If the host is running other processes as well, it can be useful to limit the number of threads that is allowed to be used by the solver. By default when the parameter is not given then no limit is applied, i.e. the used thread count will default to the number of your CPU logical cores.
example usage:
./watney-solve --limit-threads 15 ...
And to override the default value (0 which means do not limit), in the watney-solve-config.yml
you can add:
defaultLimitThreads: <number>
- In API: Configuration option to allow limiting how many threads the solver can use. In
config.yml
:
limitThreads: -1
By default the value is set to -1 which does not apply any limit, i.e. the used thread count will default to the number of your CPU logical cores.. If the host is running other processes as well, it can be useful to limit the number of threads that is allowed to be used by the solver.
Fixed
- In CLI: When logging to file with the
--log-file
parameter the file I/O was excessive, slowing down solves significantly since the verbose logging produces so much log. This has been fixed by significantly reducing the file writes and instead the logs are mostly kept in memory until they get flushed to disk.
Downloads
CLI solver
watney-solve-cli-1.2.0*
The packages contain a single-file, self-contained executable. Therefore .NET 6 runtime installation is not required.
You'll also need to download the Gaia2 Quad Database release.
Extract to any directory, same goes to the quad database. Edit the configuration file watney-solve-config.yml to set the path to your quad database directory.
API solver
watney-solve-api-1.2.0*
The Watney API app. Includes the Astrometry.net compatibility API.
The packages contain a single-file, self-contained executable. Therefore .NET 6 runtime installation is not required.
You'll also need to download the Gaia2 Quad Database release.
Extract to any directory, same goes to the quad database. Edit the configuration file config.yml to set the path to your quad database directory, and to configure the API to your liking.
Click on > Assets to view the downloads.