Browse Source

Fix rekey synchronization between OpenCL master and CPU search threads.

master
samr7 13 years ago
parent
commit
19db491cb8
  1. 7
      oclvanitygen.c

7
oclvanitygen.c

@ -505,6 +505,7 @@ vg_opencl_loop(vg_context_t *vcp, cl_device_id did, int worksize) @@ -505,6 +505,7 @@ vg_opencl_loop(vg_context_t *vcp, cl_device_id did, int worksize)
vg_exec_context_t *vxcp = &vocp->base;
int slot, nslots;
int zap_delta;
if (!vg_ocl_init(vcp, &ctx, did))
return NULL;
@ -634,7 +635,7 @@ rekey: @@ -634,7 +635,7 @@ rekey:
}
EC_POINTs_make_affine(pgroup, worksize, pprow, vxcp->vxc_bnctx);
vxcp->vxc_delta = 1;
zap_delta = 1;
npoints = 1;
slot = 0;
@ -705,6 +706,10 @@ rekey: @@ -705,6 +706,10 @@ rekey:
goto recheck;
}
if (zap_delta) {
vxcp->vxc_delta = 1;
zap_delta = 0;
}
vocp->voc_cpu_slot = slot;
vocp->voc_cpu_worksize = round;
pthread_cond_signal(&vocp->voc_wait);

Loading…
Cancel
Save