Mining with Python OpenCL (poclbm) or GUIMiner(Phoenix) in Windows
This is assuming you have already selected a Pool to mine with, and created a Worker within the pool.
Disclaimer: I am writing this guide to share with everyone else how to install and mine with the Phython OpenCL Miner (poclbm) or GUIMiner Phoenix 1.7.x assuming you are just begining, because there really aren't many Windows Guides that are complete or that help. The recommended driver's and software varies with each GPU and every person, this is based on my experience. I asked questions, and compiled the information which took me 2 days (several hours) of learning from others so you don't have too! Written by a noob, for a noob.- Phase 1 - Prerequesite Software
- Phase 2.1 - Setting up GUIMiner
- Phase 2.2 - Setting up Python OpenCL
Phase 1 - Prerequesite Software:The first thing on the checklist is Showing hidden files and extensions.
1a. Click start -> Control Panel -> Appearance and Personalization -> Show Hidden Files and Folders. Un-check the box "Hide Extensions for known file types", and check the box labled "Show hidden files, folders and drives" - this is for writing a .bat file for the Python OpenCL.
1b. Head to
http://www.amd.com/us/Pages/AMDHomePage.aspx and select your GPU/Operating system and download 12.1, 12.1 comes preset with AMD APP SDK 2.6, AMD SDK 2.6.
-From my findings ATI Stream 2.3 is faster with 6870's, 6950's and 6970's (These are all i had to test with)
2. Download ATI Stream SDK 2.3 - This page has ATI Stream SDK 2.1, 2.2 & 2.3 for all OS's.
http://www.bitcoinminer.com/post/3828447301/ati-stream-sdk-downloads-Installing 2.3 will NOT overwrite AMD APP 2.6 SDK, it will install -beside- of it so you will have both 2.3 (2.1 Kernel) and 2.6 (2.4Kernel) which should work optimally with both 5xxx, 6xxx and 7xxx series at the moment.
-Reboot your machine
Phase 2 - Miners:
Next download one of these flavors of miners.
GUIMiner: Easier to get running, but lacks constant updates, OpenCL mining is currently broken in the latest edition, GUIMiner is currently used for an easy Phoenix Miner.
https://github.com/downloads/Kiv/poclbm/guiminer-20110824.exe-OR-Python OpenCL Miner: Python takes a couple more minutes to set up, but the stale share ratio is slightly lower (a good thing). *Skip to Phase 2.2 for installation of Python OpenCL.*
http://github.com/downloads/m0mchil/poclbm/poclbm_py2exe_20120205.7zPhase 2.1 - Setting up GUIMiner:
1. Extract the GUIMiner to your desktop
2. Browse the folder and launch the GUIMiner.exe
3. Click File -> New Miner -> New Phoenix miner... - Name it anything that helps you keep track of your GPUs (i.e: Phoenix1 for GPU1 | Phoenix2 for GPU2)
4. In the "server" drop down box select your pool.
5. in the Email/User enter the information of your worker within that pool (the name you created for your worker at the pool for example, deepbit at deepbit it will look like this:
[email protected]_68701, other pools use just a name such as "googlepants554".)
6. the password field is the password you set for your worker at the pool.
7. Device: This dropdown box contains a list of your OpenCL devices, in the case that you installed both 12.1 drivers (AMD APP 2.6) along with ATI Stream 2.3 you will see (twice) as many GPU's as you currently have, this is because it is recognizing that you have 2 different SDK Kernels to work with, select the one that works fastest for your GPU's, be aware that select [0-1 GPUNAME] and [1-1 GPUNAME] will result in the same video card hashing, if you have multiple GPU's the device numbers needs to be different than one another.
-If you have multiple GPU's follow Step 3 - 7 to begin a new tab for each GPU installed in your machine. make sure each Phoenix Mining TAB has a different GPU device selected [0-0 GPU] [0-1 GPU] [0-2 GPU]etc.
-Also make sure each tab is set to a different CPU affinity, under the Device select are boxes for each CPU core available, checking a different core per GPU can increase hash rate and lower overall CPU usage in the case of a CPU bug.
8. Extra Flags: This will vary greatly upon GPU's
The following Wiki has a compilation of GPU flags with different settings and Miners.
https://en.bitcoin.it/wiki/Mining_hardware_comparisonFor Phoenix Miner some optimal flags can be:
Non-Dedicated Machine (You use the machine while mining)
Radeon HD 5000 series:-k phatk VECTORS FASTLOOP=false AGGRESSION=7 BFI_INT WORKSIZE=128
Radeon HD 6000 series:-k phatk2 VECTORS BFI_INT AGGRESSION=7 worksize=128 FASTLOOP=false
Dedicated Mining Machine:
Radeon HD 5000 series:-k phatk VECTORS FASTLOOP=false AGGRESSION=12 BFI_INT WORKSIZE=128
Radeon HD 6000 series:-k phatk2 VECTORS BFI_INT AGGRESSION=11 worksize=128 FASTLOOP=false
9. Before you begin mining it is a good idea to go to File-> Save, so incase of a crash or system error you can recover these settings by just opening up GUIMiner again.
10. Begin mining.
Phase 2.2 - Setting up Python OpenCL
1. Extract Python OpenCL directly into your C: Drive, the reason is because this will allow the program to run DOS without asking for Admin. Permission each time and allows it to use more GPU system resources.
-If you have problem with "Access denined" navigate to Control Panel and in the Search bar at the top type in "UAC", disable the UAC and Reboot.
2. Once you've extract the folder, open Notepad and copy/paste the following information: (Color's are added to help showthe breakdown)
start /D"c:\poclbm_py2exe_20120205" poclbm.exe yourminername:
[email protected]:8332 -d0 -v -w128 --platform1
start /D"c:\poclbm_py2exe_20120205" poclbm.exe yourminername:
[email protected]:8332 -d1 -v -w128 --platform1
start /D"c:\poclbm_py2exe_20120205" poclbm.exe yourminername:
[email protected]:8332 -d2 -v -w128 --platform1
-where "yourminername" is enter the name of your worker, where "password", enter your workers password and then your pool.
Samples:[email protected]_Miner1:
[email protected]:8332 -d0 -v -w128 (for deepbit)
lemonsaregood:
[email protected]:8332 -d0 -v -w128
- If you have more than one GPU, "-d0" is selects the device, your first GPU is -d0, second GPU is -d1, third -d2 etc.
- The -v is the instruction for the GPU to work VECTORS, this value can be -v | -v2 | -v4 higher vectors are lower memory speed is better, 300MHz memory with -v4 for example. -v is best for 1000mhz+ memory.
- The -w128 is the WORKSIZE for the GPU, lower memory with higher workloads produce better results, 300MHz with -w256 for example. -w128 is best for 1000mhz+ memory.
- The --platform# is the command for the SDK application you wish to run on the hardware with OpenCL.
--platform0 (is for OpenCL)
--platform1 (is for ATI Stream SDK 2.1/2.2/2.3)
--platform2 (is for AMD APP SDK2.4/2.5/2.6)
*OpenCL runs instructions for CPU's
*ATI Stream seems to run better with 6000 series GPU's
*AMD APP SDK seems to work better with 5000 and 7000 series GPU's
3. Save this document as "mine.bat" or "Python.bat" inside of the c:\poclbm_py2exe_20120205\
4. Click the .bat file to begin mining, you can also create a shortcut to the desktop tfor easier access.
-Adjusting the settings listed can improve or hinder performance, sometimes somethingt hat works for one person, may not for another, you really have to try different things.