BlinkyStitt / vanitygen

GNU Affero General Public License v3.0
39 stars 14 forks source link

Support for AMD Pitcairn and Tahiti processors #16

Open santzi opened 10 years ago

santzi commented 10 years ago

Hi,

This is very nice program. I have used this now about half year. I have AMD 7850 2GB (Pitcairn) graphic card and Debian 7.3.0, but I need to make changes to oclengine.c -file every time when I download a new repo and compiled it. I download this repo, because this support compressed mode.

I add these two lines to oclengine.c -file and then it works like charm: if (!strcmp(dvn, "Tahiti") || !strcmp(dvn, "Pitcairn")) quirks &= ~VG_OCL_AMD_BFI_INT;

I now there are plenty of people who has the same problem as me had, so this change might help Pitcairn and Tahiti processors users.

oclengine.c: case 0x1002: /* AMD/ATI / / * AMD's compiler works best with preprocesor unrolling. * Pragma unroll is unreliable with AMD's compiler and * seems to crash based on whether the gods were smiling * when Catalyst was last installed/upgraded. */ if (vg_ocl_device_gettype(vocp->voc_ocldid) & CL_DEVICE_TYPE_GPU) { quirks |= VG_OCL_EXPENSIVE_BRANCHES; quirks |= VG_OCL_DEEP_VLIW; dvn = vg_ocl_device_getstr(vocp->voc_ocldid, CL_DEVICE_EXTENSIONS); if (dvn && strstr(dvn, "cl_amd_media_ops")) quirks |= VG_OCL_AMD_BFI_INT;

        dvn = vg_ocl_device_getstr(vocp->voc_ocldid,
                       CL_DEVICE_NAME);
                    if (!strcmp(dvn, "Tahiti") || !strcmp(dvn, "Pitcairn"))
                            quirks &= ~VG_OCL_AMD_BFI_INT;

        if (!strcmp(dvn, "ATI RV710")) {
            quirks &= ~VG_OCL_OPTIMIZATIONS;
            quirks |= VG_OCL_NO_BINARIES;
        }
    }

br, Santzi

xPooky commented 9 years ago

i have R270x(Pitcairn) and this is not working for me, i only get Match idx: 0 CPU hash: fe1b2170a4ee1cb7dbb2c158f9c1598bb224374e GPU hash: 72603a1f49338fe07a7a757dadeec9b22d077c60 Found delta: 2084490 Start delta: 52428801 and tons more like this but no address generated, any idea

BlinkyStitt commented 7 years ago

Check out https://github.com/exploitagency/vanitygen-plus