Jump to content

Catalyst 13.4 GUI-Miner FIX BFG-Miner / CGMiner


knappknackslive
 Share

Recommended Posts

Hallo Bitcoin gemeinde,

einige von euch kennen es vielleicht. wenn man mit dem GUIMiner und Catalyst 13.4 versucht zu nutzen und man in der Konsole nur den Fehler : "Verification, Check Hardware!" oder "invalid nonce - HW error".

Wenn dieser Fehler vorliegt muss man nur etwas in dem Ordner des Miners bearbeiten.

 

 

1. Man sucht in dem Miner Ordner nach phatk.cl.

 

2. Man öffnet diese mit einem Editor (z.B. Notepad++)

 

3. Man sucht nach dieser Textstelle:

 

#ifdef BITALIGN

#pragma OPENCL EXTENSION cl_amd_media_ops : enable

#define rot(x, y) amd_bitalign(x, x, (uint)(32 - y))

 

// This part is not from the stock poclbm kernel. It's part of an optimization

// added in the Phoenix Miner.

 

// Some AMD devices have Vals[0] BFI_INT opcode, which behaves exactly like the

// SHA-256 Ch function, but provides it in exactly one instruction. If

// detected, use it for Ch. Otherwise, construct Ch out of simpler logical

// primitives.

#ifdef BFI_INT

// Well, slight problem... It turns out BFI_INT isn't actually exposed to

// OpenCL (or CAL IL for that matter) in any way. However, there is

// a similar instruction, BYTE_ALIGN_INT, which is exposed to OpenCL via

// amd_bytealign, takes the same inputs, and provides the same output.

// We can use that as a placeholder for BFI_INT and have the application

// patch it after compilation.

 

// This is the BFI_INT function

#define Ch(x, y, z) amd_bytealign(x,y,z)

// Ma can also be implemented in terms of BFI_INT...

#define Ma(z, x, y) amd_bytealign(z^x,y,x)

#else // BFI_INT

// Later SDKs optimise this to BFI INT without patching and GCN

// actually fails if manually patched with BFI_INT

 

#define Ch(x, y, z) bitselect((u)z, (u)y, (u)x)

#define Ma(x, y, z) bitselect((u)x, (u)y, (u)z ^ (u)x)

#define rotr(x, y) amd_bitalign((u)x, (u)x, (u)y)

#endif

#else // BITALIGN

#define Ch(x, y, z) (z ^ (x & (y ^ z)))

#define Ma(x, y, z) ((x & z) | (y & (x | z)))

#define rot(x, y) rotate((u)x, (u)y)

#define rotr(x, y) rotate((u)x, (u)(32-y))

#endif

 

 

 

Und ersetzt diese durch:

 

#ifdef BITALIGN

#pragma OPENCL EXTENSION cl_amd_media_ops : enable

#define rot(x, y) amd_bitalign(x, x, (uint)(32 - y))

 

// This part is not from the stock poclbm kernel. It's part of an optimization

// added in the Phoenix Miner.

 

// Some AMD devices have Vals[0] BFI_INT opcode, which behaves exactly like the

// SHA-256 Ch function, but provides it in exactly one instruction. If

// detected, use it for Ch. Otherwise, construct Ch out of simpler logical

// primitives.

 

//We have an SDK which automatically optimizes to BFI INT, so lets do this

 

#define Ch(x, y, z) bitselect(z, y, x)

#define Ma(x, y, z) bitselect((u)x, (u)y, (u)z ^ (u)x)

#define rotr(x, y) amd_bitalign((u)x, (u)x, (u)y)

 

#else // BITALIGN

#define Ch(x, y, z) (z ^ (x & (y ^ z)))

#define Ma(x, y, z) ((x & z) | (y & (x | z)))

#define rot(x, y) rotate((u)x, (u)y)

#define rotr(x, y) rotate((u)x, (u)(32-y))

#endif

 

4. Wenn man noch die Datei phatk.bin in dem Ordner hat, sollte man diese löschen.

 

5. Den Miner starten und Minen

 

 

Viel Spaß

 

Spenden bitte an: 15H8AE8BCJqbRMzqTCsaZzd5G861Bd3qYV

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.