Hey everyone, I've created a Windows GUI for mining Bitcoins using your GPU or CPU.
This is the easiest way to get started mining on Windows. No messing around with the command line is required, and it has several features beyond what command line miners provide. The GUI is free and open source
, but if you successfully use this program to generate coins, I would appreciate a donation, no matter how small. How to Donate
Please send donations directly to: 1MDDh2h4cAZDafgc94mr9q95dhRYcJbNQo
Most donations I receive are less than 0.1 BTC, so please consider donating even small amounts if this program helped you out.Features:
- Comes already configured for many popular pools. No need to enter in URLs and ports manually unless you want to. Can automatically fall back from a primary pool to a backup pool.
- Real-time statistics on all your running miners in one location. Displays hash rate, total shares accepted/invalid, and total shares in the past hour.
- Automatically start one or more miners on program startup.
- View your account balance with a pool and/or withdraw funds from within the GUI, at participating pools.
- Minimizes to tray. The tray icon can be hovered to show statistics, and miners can be paused from the tray context menu.Screenshots
:Download latest version (Windows): guiminer-20121203.exe (self-extracting archive) Older versions:
guiminer-20121118.exe (self-extracting archive) guiminer-20120219.exe (self-extracting archive) guiminer-20110824.exe guiminer-20110701.exe (self-extracting archive) Archived versionsRunning on Linux:
Support for this is still early but some people have reported success. To install it on Linux:
- Get the source code from GitHub
either using Git or by downloading one of the archived source versions.
- Install OpenCL drivers and PyOpenCL. These are the same ones you need to run poclbm so if you search on the forums you can find guides for this.
- Install wxPython; your distribution's package manager should have this.
- Run guiminer.py to start the miner. This will let you mine using OpenCL/poclbm (the default mode). You'll have to compile the other backends separately if you want to use them.
If you do get it running, send me a message and let me know of your experience. I might make a separate topic about it if people are having trouble.How to use:
Extract the archive to anywhere (your desktop is fine) and double click the guiminer executable. If you have OpenCL set up correctly this should launch the GUI. If you get an error about OpenCL, you need to install an OpenCL package from your GPU vendor. For AMD/ATI cards you can get OpenCL here
Once the GUI is running, choose a pool and register if necessary from the pool website, then press "Start mining" to begin. Wait for the coins to come in and don't forget to donate How to use a backup pool aka fallback support
Fallback support is in the OpenCL miner only. In the flags, specify the info of the backup pool or pools. For example if I want to fallback to my account on slush's pool, I would write:
If you don't know the host name or port, you can see it in the console tab whenever you run a miner.That's all you need for basic support. You can tweak it with these options:
--failback=N attempt to fail back to the primary pool every n getworks, default 2
--tolerance=N use fallback pool only after N consecutive connection errors, default 2
In the future this might be more tightly integrated into the GUI but I don't want to make the GUI too complicated for things that a lot of users don't need.How to get help:
For technical support please post in this thread rather than sending me a PM; this will get you a reply sooner since other people than me can help you out. More information is better; with only a brief vague report we probably don't know enough to pinpoint your problem. Here's an example of a good report:
"When I try to start mining, I get "Problems communicating with bitcoin RPC" in the status bar and the miner doesn't start. I already checked that my bitcoin.conf contains the correct username and password. I am using:
GUIMiner version: v2011-06-09
Operating system: Windows XP SP3
Miner backend: OpenCL/poclbm
Video card: ATI 5770
Server: solo mining on Bitcoin client 0.3.22Frequently Asked Questions (FAQ):
Q: My window is invisible! What can I do?
A: See here
for a solution.
Q: Help! The program crashed or didn't work!
A: If you post a bug report in this thread a variety of helpful people including myself can try to fix your issue. We need to know at least the following: what version of Windows you're using, what graphics card you're using, what version of drivers you're using, what pool you're using if applicable, and a detailed description of what went wrong.
Q: I get an error about "This application has failed to start because the application configuration is incorrect. Reinstalling the application may fix this problem." or an error mentioning "side-by-side". What can I do?
A: You may need to install the Microsoft Visual C++ 2008 Redistributable Package
. Nearly all Windows computers already have this installed, but a freshly formatted computer might not.
Q: I'm having trouble solo mining using the 0.3.22 Bitcoin client. Why?
A: This is a known issue, see this thread
for more info. Reverting to 0.3.21 or earlier seems to fix the problem.
Q: How do I know if my graphics card (GPU) supports OpenCL or CUDA?
A: Try running GPU Caps Viewer
. It will tell you what your GPU supports.
Q: How do I use the Phoenix/phatk miner?
A: See this thread
Q: What extra flags do I use?
A: If you have a Radeon 5xxx card (for example 5770, 5890), use '-v -w128'. On CPU you don't need any flags. For other cards ask around.
Q: My temperatures are too high, can I throttle the GPU so it runs slower but cooler?
A: If you are mining using OpenCL you can use the -s flag a value such as 0.01 in order to force the GPU to sleep for 0.01 seconds in between runs. Increase or decrease this value until you have the desired GPU utilization.
Q: Can I connect to more than one pool with the same GPU? For example have a main pool, and a backup pool in case the main one goes down?
A: Yes, you can use the -f flag for this. A value of -f60 or higher in the backup pool's miner will cause it to yield most of the GPU power to miners with a lower f value (default is 30).
Q: Is it normal that GUIMiner uses a lot of CPU when mining on the GPU?
A: No, for most people GUIMiner uses less than 1% of CPU. This is a poclbm issue some people are experiencing - see this post for more info
Q: Do I need the official Bitcoin client to be open while mining?
A: Only if you are doing solo mining - in this case you are connecting to the client instead of a pool server.
Q: Is there a tutorial for solo mining?
A: Yes, see this thread
Q: How does performance using the GUI compare to using the command line?
A: They should be identical; the GUI introduces virtually no overhead.
Q: How do I know if I'm getting a good hashing rate for my card?
A: See this
topic for a comparison of various cards.
Q: How do I know how many Bitcoins I'll generate with my card?
A: See Bitcoin Mining Calculator
to determine this.
Q: I installed OpenCL, but my GPU isn't showing up. Only my CPU is shown. What is the problem?
A: A couple people experienced this issue and were able to resolve it by installing a different driver version. Another person resolved it on Windows XP by upgrading from Service Pack 2 to Service Pack 3.
Q: How can I delete my miner settings, or edit them manually?
A: Miner settings are stored in %APPDATA%\Roaming\poclbm. For example, on Windows 7 this path translates to C:\Users\Kiv\AppData\Roaming\poclbm. The file poclbm.ini inside contains the settings in JSON format. There are also some settings in .ini files inside the miner directory, also in JSON format. No registry keys are used, so removing these .ini files completely erases your settings.
Q: How can I completely uninstall GUIMiner?
A: Remove the GUIMiner folder and the miner settings above, and that will completely remove GUIMiner.
Q: I want to see X feature in the miner. How can I have it?
A: I'm working on new features but I have a full time job and other things to do too - if you want to encourage me send donations to: 1MDDh2h4cAZDafgc94mr9q95dhRYcJbNQo
Q: What does it mean in the summary panel when the shares say something like 1000 (150) accepted?
A: That means 1000 shares total were accepted, including 150 in the last hour.Changelog:
- Update poclbm with bugfix for issue #54
- Update poclbm to latest miner including Stratum support.
- Fix rejected/stale counter not incrementing properly.
- For solo mining, accept bitcoin-qt.exe or any other *.exe file for client instead of just bitcoin.exe.
- For solo mining, add option to set bitcoin data directory, in case it's not in the default location.
- Remove Phoenix 1 support since it's no longer maintained.
- Include latest poclbm code with critical bugfix.
- Various updates to translations, pools, etc. from various contributors - see GitHub commit list for a complete list. Thanks to all who submitted patches!
- Fix accepted shares not being recognized under the newest poclbm version
- Fix balance not being recognized for slush's pool
- Update poclbm (OpenCL miner) to the latest version. This changes the format of a backup pool. In the "extra flags" you just enter your backup (or backups) like this: Kiv.GPU:email@example.com:8332
- Update Phoenix to the latest version. See their thread for details on changes.
- Remove ufasoft miner from the GUIMiner bundle. It's still supported, but you'll have to download it separately. I apologize for the inconvenience to ufasoft miner users, but I decided to do this since only a few percent of users were using ufasoft and due to recurring false positive issues from antivirus programs.
- Added "duplicate miner" option when right clicking on a miner tab. This is to make it easier to clone miners to multiple GPUs.
- Limited maximum scrollback in the console window to 5000 lines. On machines with low RAM, this will prevent running out of memory after a long period of continuous operation.
- Add more pools to the server list, though balance update doesn't work for all of them. I'm looking at ways to handle the large number of pools that are popping up better.
- Fix Linux bug where the window could not be restored after minimizing.
- Updated poclbm (OpenCL miner) backend to the latest version which has built-in fallback support and slightly
improved performance using a modified phatk kernel. Big thanks to m0mchil and all who submitted code for this. This version should be a few percent faster on most graphics cards.
- Update Phoenix backend to version 1.50.
- Add many more pools to the server list, including separate servers for BTC Guild.
- Default CPU affinity changed to be CPU 0 only instead of all CPUs.
- Display of GHash shows more decimal places (requested by hawks5999).
- When you save miner settings it remembers the GUI size and position for future runs (requested by goozman96).
- Removed weird characters in console log of Phoenix miner.
- Error handling: If settings file could not be read, recover gracefully instead of raising a JSON error.
- Error handling: If no OpenCL devices exist, recover gracefully instead of raising AssertionError.
- Slush's pool moved from mining.bitcoin.cz to api.bitcoin.cz. If any miners on slush's pool cannot connect, you should delete and re-create the worker to make sure it's using the new address.
- Add CPU affinity support, meaning miners can be assigned to a specific CPU core. Users seeing the 100% CPU usage when mining with OpenCL due to buggy drivers can reduce their CPU usage by allowing the miner to only run on a specific core.
- Fix error about missing logo.ico.
- New Italian translation, big thanks to MasterHunterHD for contributing this.
- Fix bug where Deepbit API was disabled.
- Update BTC Guild url to contain www.
- Added "minimize to tray" option.
- Added separate menu options to create different miner types (Phoenix, puddinpop, ufasoft).
- Added Donation menu.
- Support Phoenix miner backend and phatk kernel, which is slightly faster than poclbm on some graphics cards. Thanks to all who donated for this. Please bring discussion specific to the Phoenix backend to this thread
- Support ufasoft CPU miner backend. Thanks to thebaba for contributing code for this.
- Add Chinese language translation. Thanks to Dean Lee for contributing this.
- Add German language translation. Thanks to Liikaa for contributing this.
- Add French language translation. Thanks to Cramoisan Florian for contributing this.
- Add Hungarian language translation. Thanks to Underyx for contributing this.
- Support multiple OpenCL platforms in the device dropdown (previously you had to use the --platform flag).
- Deepbit server location updated to pit.deepbit.net.
- Add BTC Guild mining pool to the list of presets.
- Add -s flag to poclbm that can reduce temperatures by forcing the GPU to sleep. Use a value such as -s0.01 to sleep for 0.01 seconds between hashes (this would result in about 50% GPU usage, tweak the value to suit). Thanks to llanwj for coding this.
- Add Spanish language support. Thanks to BitcoinsWallet for contributing this.
- Add checkbox to disable warning about OpenCL not being installed.
- Reset count of shares accepted/stale on change of server.
- If balance API token is rejected by the server, prompt user to enter a new token.
- Fix issue where the About dialog would be cut off.
- Console logs now include a timestamp on all messages.
20110501: Improved Russian language support. No other code changes.
20110428: Added BFI_INT optimization.
20110403: Added support for puddinpop miners.