1
0
mirror of https://github.com/GOSTSec/sgminer synced 2025-03-09 20:21:01 +00:00

Do not add time to dynamic opencl calculations over a getwork.

This commit is contained in:
ckolivas 2012-08-22 10:07:20 +10:00
parent 1e41eef3bd
commit edd9b81622
3 changed files with 13 additions and 4 deletions

View File

@ -4239,6 +4239,7 @@ void *miner_thread(void *userdata)
if (api->free_work && likely(work->pool))
api->free_work(mythr, work);
get_work(work, mythr, thr_id);
cgpu->new_work = true;
gettimeofday(&tv_workstart, NULL);
work->blk.nonce = 0;

View File

@ -1532,10 +1532,16 @@ static int64_t opencl_scanhash(struct thr_info *thr, struct work *work,
clFinish(clState->commandQueue);
}
gettimeofday(&gpu->tv_gpumid, NULL);
if (!gpu->intervals) {
gpu->tv_gpustart.tv_sec = gpu->tv_gpumid.tv_sec;
gpu->tv_gpustart.tv_usec = gpu->tv_gpumid.tv_usec;
if (gpu->dynamic) {
gettimeofday(&gpu->tv_gpumid, NULL);
if (gpu->new_work) {
gpu->new_work = false;
gpu->intervals = 0;
}
if (!gpu->intervals) {
gpu->tv_gpustart.tv_sec = gpu->tv_gpumid.tv_sec;
gpu->tv_gpustart.tv_usec = gpu->tv_gpumid.tv_usec;
}
}
status = thrdata->queue_kernel_parameters(clState, &work->blk, globalThreads[0]);

View File

@ -374,6 +374,8 @@ struct cgpu_info {
int intervals, hit;
#endif
bool new_work;
float temp;
int cutofftemp;