https://github.com/briansterle/hashman-rs
miner software
https://github.com/briansterle/hashman-rs
bitcoin cryptocurrency ethereum gpu mining nicehash nicehash-miner
Last synced: 3 months ago
JSON representation
miner software
- Host: GitHub
- URL: https://github.com/briansterle/hashman-rs
- Owner: briansterle
- Created: 2021-12-07T03:06:50.000Z (over 4 years ago)
- Default Branch: master
- Last Pushed: 2021-12-27T00:09:25.000Z (over 4 years ago)
- Last Synced: 2023-05-14T01:23:50.654Z (about 3 years ago)
- Topics: bitcoin, cryptocurrency, ethereum, gpu, mining, nicehash, nicehash-miner
- Language: Rust
- Homepage:
- Size: 208 KB
- Stars: 2
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README

# Hashman
Hashman is a manager for cryptocurrency miners on Windows. It introduces automation on top of a miner process that reacts to other GPU
activity on the target rig, i.e. gaming. Hashman detects when the GPU is idle and automatically starts
mining. Then, if another app needs the GPU, Hashman will back off mining until the GPU is once again idle.
## How to run
#### build for release
clone repo. from root run:
```shell
cargo build --release
```
this outputs an exe at `target/release/hashman.exe`. Add it to your PATH for easy access.
#### run the exe:
```shell
hashman-rs.exe {num_loops} {interval_seconds}
```
### args
* num_loops: n times the program will wake from sleep and check GPU contention
* default 21,000,000
* interval_seconds: loop every n seconds
* default 21
## Configuration
Create your hashpath configuration file at `~/.hashman/hashpath.toml`
If it does not exist, this file is auto-generated and populated by default when you first run the app.
#### Template
```toml
gaming_path = "C:\\Games\\steamapps\\common,D:\\Games\\origin"
mining_path = "NiceHashMiner.exe,app_nhm.exe"
miner_exe = "~\\AppData\\Local\\Programs\\NiceHash Miner\\NiceHashMiner.exe"
```
#### Schema
* miner_exe: String
* the fully qualified path to your mining exe. This app is designed for a NiceHashMiner.exe but it should be compatible with other miners.
* gaming_path: String
* a comma-separated list of directories and .exe's of games. Directories will be recursively searched for any .exe's within. This does not need to actually be a game executable, just any exe that needs exclusive access to the GPU. Gaming is the most common use case so this is the term used throughout hashman.
* mining_path: String
* a comma-seprated list of executables that are considered "miner" proceseses
## Testing
run tests
```shell
cargo test
```
run bench
```shell
cargo bench
```