{"id":22364584,"url":"https://github.com/c0mm4nd/gxminer","last_synced_at":"2025-07-30T15:31:43.449Z","repository":{"id":43509695,"uuid":"213820737","full_name":"c0mm4nd/GxMiner","owner":"c0mm4nd","description":"GxMiner is a highly optimized miner for random-x series algorithm","archived":false,"fork":false,"pushed_at":"2023-02-25T00:55:11.000Z","size":4893,"stargazers_count":23,"open_issues_count":10,"forks_count":12,"subscribers_count":7,"default_branch":"master","last_synced_at":"2024-11-29T17:49:49.194Z","etag":null,"topics":["miner","random-wow","random-x","random-xl","randomx"],"latest_commit_sha":null,"homepage":"","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/c0mm4nd.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2019-10-09T04:27:20.000Z","updated_at":"2024-02-20T13:33:07.000Z","dependencies_parsed_at":"2024-06-20T09:28:40.654Z","dependency_job_id":"28f82943-64ed-4145-b3df-0ae1537005da","html_url":"https://github.com/c0mm4nd/GxMiner","commit_stats":null,"previous_names":["maoxs2/gxminer"],"tags_count":19,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/c0mm4nd%2FGxMiner","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/c0mm4nd%2FGxMiner/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/c0mm4nd%2FGxMiner/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/c0mm4nd%2FGxMiner/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/c0mm4nd","download_url":"https://codeload.github.com/c0mm4nd/GxMiner/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":228155656,"owners_count":17878021,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["miner","random-wow","random-x","random-xl","randomx"],"created_at":"2024-12-04T17:24:24.565Z","updated_at":"2024-12-04T17:24:25.315Z","avatar_url":"https://github.com/c0mm4nd.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"# GxMiner\n\nGxMiner is a highly optimized miner for random-x series algorithm. Binaries are avaliable in [release page](https://github.com/maoxs2/GxMiner/releases)\n\nGxMiner,高度优化,专精RandomX算法的新型挖矿软件。[国内下载地址](https://gitee.com/Command/GxMiner/releases)\n\n## Intro\n\nGxMiner acts as an application of library [go-randomx](https://github.com/maoxs2/go-randomx) which based on C and golang. In this framework, we can mine all cryptocurrencies with random-x series algorithm.\n\nThis repo is currently not fully open-sourcing, but its core part, the project go-randomx is open-sourcing, if you wanna help boost GxMiner's speed you can directly post PR to the go-randomx\n\nWe plan to **open-source** after monero's fork on 30 Nov.\n\n## Why GxMiner\n\nAs everyone know, xmrig \u0026 xmr-stak is the leader of monero miners. But soon monero is not cryptonight algorithm cryptocurrency any longer, it would be the centry of random-x\n\nComparing to the leaders, GxMiner is **younger** and **modern**, **without any historical burden**. And GxMiner is not slower even sometimes slightly **faster** than the xmrig.\n\nAnd if you are a developer, it would be much **easier to intergrate** your random-x fork into miner.\n\n## Usage\n\nTake RandomXL(Loki) for example:\n\n```cmd\n\u003e gxminer.exe help\nNAME:\n   GxMiner - Go randomX Miner\n\nUSAGE:\n   gxminer [global options] command [command options] [arguments...]\n\nVERSION:\n   v0.2.2-random-x-go1.13.4\n\nDESCRIPTION:\n   GxMiner is a highly optimized miner for random-x series algorithm. Make sure you have downloaded from the official page[https://github.com/maoxs2/gxminer]. If you have any problem or advice please take the issue here[https://github.com/maoxs2/gxminer/issues/new]\n\nAUTHOR:\n   Command M \u003cmaoxs2@163.com\u003e\n\nCOMMANDS:\n   help, h  Shows a list of commands or help for one command\n\nGLOBAL OPTIONS:\n   --conf FILE                                     Load configuration from FILE [config.json]\n   --log-file FILE                                 save log messages to FILE\n   --log-level value                               log level (debug, info, warn, error, panic) (default: \"info\")\n   --pool value, -o value                          Pool address with port, e.g. 192.168.1.100:3333 or mining.pool.com:3333\n   --user value, -u value                          Wallet address or login username\n   --pass value, --password value, -p value        Password for login username (default: \"x\")\n   --rig-id value                                  RigID for Pool displaying (default: \"GxMiner\")\n   --nicehash                                      enable rig's nicehash mining on pool/proxy\n   --workerNum value, --threadNum value, -t value  the number of hash worker (default: 0)\n   --hard-aes                                      on default enabled the hardware aes, using soft aes set this to false\n   --full-mem                                      on default enabled the full mem, set false to disable\n   --jit                                           on default enabled the jit boost, set false to disable\n   --huge-page                                     on default enabled the huge/large page, set false to disable\n   --argon2-sse3                                   enable argon2-sse3\n   --argon2-avx2                                   enable argon2-avx2\n   --affinity-mask value                           cpu affinity mask in hex (default: \"fff\")\n   --tls                                           enable tls encryption in tcp transfer\n   --http-port PORT                                serve port on PORT (default: 2333)\n   --http-external                                 expose port on the external env\n   --help, -h                                      show help\n   --version, -v                                   print the version\n\n\n```\n\nLoki mining example:\n\n```bash\ngxminer.exe -o hk.loki.herominers.com:10111 -u L7zjr6vtpyvBtFjgbjcWAu1SYjLRutW518J9Y8LqP4GgYanhRJJSmF37X83YUTJaTr16y8RUtWynAM6DK6Jkx7qVUTMfFie\n```\n## Config\n\n**Configuration sequence: ConfigFile \u003e CLI \u003e Setup** \n\nConfig File will be auto-generated after setup follow or running with CLI\n\nexample:\n\n```\n{\n  \"pools\": [\n    {\n      \"pool\": \"rx.minexmr.com:6666\",\n      \"user\": \"47wcnDjCDdjATivqH9GjC92jH9Vng7LCBMMxFmTV1Ybf5227MXhyD2gXynLUa9zrh5aPMAnu5npeQ2tLy8Z4pH7461vk6uo\",\n      \"pass\": \"x\",\n      \"rig-id\": \"\",\n      \"tls\": true,\n      \"nicehash\": false\n    }\n  ],\n  \"workers\": {\n    \"worker-num\": 2,\n    \"init-num\": 2,\n    \"huge-page\": true,\n    \"hard-aes\": true,\n    \"full-mem\": true,\n    \"jit\": true,\n    \"argon2-sse3\": true,\n    \"argon2-avx2\": true,\n    \"affinity-mask\": \"f\"\n  },\n  \"log\": {\n    \"level\": \"debug\",\n    \"file\": \"\"\n  },\n  \"http\": {\n    \"port\": 2333,\n    \"external\": false\n  }\n}\n```\n\nThe second pool acts as the failover pool config.\n\n## HTTP API\n\n- `/`: Nothing byt description for API\n- `/shares`: miner's shares status, e.g. `{\"accept\":3,\"reject\":0,\"total\":3}`\n- `/hashrates`: hashrates for each workers\n- `/hashrates/total`: total hashrate\n\n## Build\n\n### 0x00 get ready building environment\n\n- Windows: msys2(base-devel) \u0026 latest golang\n- Ubuntu: build-essential \u0026 latest golang\n\n### 0x01 clone the repo **with `--recursive` flag**\n\n```\ngit clone --recursive https://github.com/maoxs2/GxMiner\n```\n\n### 0x02 build with bash command\n\n```\nbash build.sh random-x\n```\n\nsupport:\n- random-x\n- random-xl\n- random-wow\n- random-arq\n- random-yada\n- random-sfx\n\n### 0x04 binary will be generated in the sub-folder \n\nFor example, random-xl gxminer will be built in \"random-xl\" folder\n\n### 0xFF intergrate your RandomX\n\nAfter git clone (the step1), edit `go-randomx/build.sh`\n\n```\nif [ ! -d \"RandomX\" ]; then\n  git clone https://github.com/maoxs2/RandomX RandomX\nfi\n```\n\nReplace `https://github.com/maoxs2/RandomX` with your random-x fork, like `https://github.com/safex/RandomSFX`\n\nThen build with bash command like step2, change the `random-x` to your fork's branch, like `master` or `SFX-v1.1.6` etc\n\n## FAQ\n\n1. Start the miner with \"failed to alloc mem for dataset\" error or \"failed to alloc mem for cache\" error, how to deal?\n\n- Check your platform support large/huge page or not. if not, set `--huge-page=false`(not recommended). \n- `sysctl -w vm.nr_hugepages=1250` on linux(change 1250 to 2500 if you have 2 NUMA).\n- Check whether you have enough page. If not, clear it.\n- https://github.com/tevador/RandomX/issues/100#issuecomment-510484859 (auto-TrySetLockPagesPrivilege since v0.1.8)\n\n2. How to get maximum hashrate?\n\n- Keep `--hard-aes`, `--full-mem`, `--jit` and `--huge-page` all be true (enabled) as default. \n- In system setting, set your virtual memory larger than 4GB.\n- Test the `--workerNum` and select the one with fastest hashrate.\n\n3. Why always \"invalid job id\"?\n\n- Check the network delay and packet loss between miner and pool. \n- Choose a pool with great network status is important.\n\n## Hashrate Comparition\n\n### RandomXL\n\nDual-E5-2660v2:\n\n![GxMiner-v0.1.1-windows](./comparations/RandomXL/Dual-E5-2660v2/GxMiner-v0.1.1-windows.png)\n\n![xmrig-v2.99.3-windows](./comparations/RandomXL/Dual-E5-2660v2/xmrig-v2.99.3-windows.png)\n\nIt's welcomed that [share your hashrate/comparation on github issue](https://github.com/maoxs2/open-grin-pool/issues/new).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fc0mm4nd%2Fgxminer","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fc0mm4nd%2Fgxminer","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fc0mm4nd%2Fgxminer/lists"}