int
FastWalshTransform::setup()
{
    // make sure the length is the power of 2
    if(isPowerOf2(length))
    {
        length = roundToPowerOf2(length);
    }

    if(setupFastWalshTransform() != SDK_SUCCESS)
    {
        return SDK_FAILURE;
    }

    int timer = sampleTimer->createTimer();
    sampleTimer->resetTimer(timer);
    sampleTimer->startTimer(timer);

    if(setupCL() != SDK_SUCCESS)
    {
        return SDK_FAILURE;
    }

    sampleTimer->stopTimer(timer);
    setupTime = (cl_double)sampleTimer->readTimer(timer);

    return SDK_SUCCESS;
}
Пример #2
0
static void BaseUtilTest()
{
    assert(roundToPowerOf2(0) == 1);
    assert(roundToPowerOf2(1) == 1);
    assert(roundToPowerOf2(2) == 2);
    assert(roundToPowerOf2(3) == 4);
    assert(roundToPowerOf2(15) == 16);
    assert(roundToPowerOf2((1 << 13) + 1) == (1 << 14));
    assert(roundToPowerOf2(MAX_SIZE_T) == MAX_SIZE_T);

    assert(murmur_hash2(NULL, 0) == 0x342CE6C);
    assert(murmur_hash2("test", 4) != murmur_hash2("Test", 4));
}