/normxcorr/trunk

To get this branch, use:
bzr branch http://suren.me/webbzr/normxcorr/trunk

« back to all changes in this revision

Viewing changes to dict_hw/src/dict_hw.cu

  • Committer: Suren A. Chilingaryan
  • Date: 2010-04-22 19:11:35 UTC
  • Revision ID: csa@dside.dyndns.org-20100422191135-y9o6i4cdnevm1y4j
Remove all remnants of streams, and make 3D copy in LoadBaseImage

Show diffs side-by-side

added added

removed removed

Lines of Context:
337
337
 
338
338
    dictSetDimensions(ps, width, height);
339
339
 
340
 
/*    
341
 
    ps->width = width;
342
 
    ps->height = height;
343
 
 
344
 
    int size = 2 * ps->corr_size + 1;
345
 
    int size2 = size * size;
346
 
 
347
 
    int base_size = 4 * ps->corr_size + 1;
348
 
    int base_size2 = base_size * base_size;
349
 
 
350
 
    if ((ps->use_cache)&&(width * height > ps->ncp * size2)) {
351
 
        ps->mode = 0;
352
 
    } else {
353
 
        ps->mode = 1;
354
 
    }
355
 
 
356
 
    if ((ps->use_cache)&&(width * height > ps->ncp * base_size2)) {
357
 
        ps->base_mode = 0;
358
 
    } else {
359
 
        ps->base_mode = 1;
360
 
    }
361
 
*/
362
 
 
363
340
    err = fftLoadBaseImage(ps, img);
364
341
    
365
342
    if (ps->use_cache) {
373
350
    ps->time[6] += (tv2.tv_sec - tv1.tv_sec) * 1000000 + (tv2.tv_usec - tv1.tv_usec);
374
351
#endif /* DICT_HW_MEASURE_TIMINGS */
375
352
 
376
 
/*
377
 
    if (ps->mode) {
378
 
        if (ps->use_cache) {
379
 
            reportMessage("Running in the image mode, caching enabled");
380
 
        } else {
381
 
            reportMessage("Running in the image mode, caching disabled");
382
 
        }
383
 
    } else {
384
 
        if (ps->base_mode) {
385
 
            if (ps->use_cache) {
386
 
                reportMessage("Running in the image/fragment mode, caching enabled");
387
 
            } else {
388
 
                reportMessage("Running in the image/fragment mode, caching disabled");
389
 
            }
390
 
        } else {
391
 
            if (ps->use_cache) {
392
 
                reportMessage("Running in the fragment mode, caching enabled");
393
 
            } else {
394
 
                reportMessage("Running in the fragment mode, caching disabled");
395
 
            }
396
 
        }
397
 
    }
398
 
*/
399
353
 
400
354
    return err;
401
355
}
404
358
int dictLoadFragment(DICTContext ps, int icp, int ncp, const unsigned char *input) {
405
359
    int err;
406
360
    int load_base = !ps->use_cache;
407
 
    cudaStream_t stream = NULL;
408
361
 
409
362
#ifdef DICT_HW_MEASURE_TIMINGS
410
363
    int time[8];
414
367
 
415
368
    if (load_base) {
416
369
            // We are enforcing image mode if the cache is disabled
417
 
        err = fftLoadBaseFragment(ps, icp, ncp, NULL);
 
370
        err = fftLoadBaseFragment(ps, icp, ncp, ps->base_image);
418
371
        if (err) return err;
419
372
    }
420
373
 
431
384
    time[2] = (tv2.tv_sec - tv1.tv_sec) * 1000000 + (tv2.tv_usec - tv1.tv_usec);
432
385
#endif /* DICT_HW_MEASURE_TIMINGS */
433
386
 
434
 
    err = fftPreprocessFragment(ps, icp, min2(CP_BLOCK, ps->ncp - icp), stream);
 
387
    err = fftPreprocessFragment(ps, icp, min2(CP_BLOCK, ps->ncp - icp));
435
388
    if (err) return err;
436
389
 
437
390
#ifdef DICT_HW_MEASURE_TIMINGS
439
392
    time[3] = (tv2.tv_sec - tv1.tv_sec) * 1000000 + (tv2.tv_usec - tv1.tv_usec);
440
393
#endif /* DICT_HW_MEASURE_TIMINGS */
441
394
 
442
 
    err = fftProcessFragment(ps, icp, min2(CP_BLOCK, ps->ncp - icp), stream);
 
395
    err = fftProcessFragment(ps, icp, min2(CP_BLOCK, ps->ncp - icp));
443
396
    if (err) return err;
444
397
 
445
398
#ifdef DICT_HW_MEASURE_TIMINGS
447
400
    time[4] = (tv2.tv_sec - tv1.tv_sec) * 1000000 + (tv2.tv_usec - tv1.tv_usec);
448
401
#endif /* DICT_HW_MEASURE_TIMINGS */
449
402
 
450
 
    err = fftPostprocessFragment(ps, icp, min2(CP_BLOCK, ps->ncp - icp), stream);
 
403
    err = fftPostprocessFragment(ps, icp, min2(CP_BLOCK, ps->ncp - icp));
451
404
    if (err) return err;
452
405
 
453
406
#ifdef DICT_HW_MEASURE_TIMINGS