Multiscan doesn't get the right thing

anybody has used cuda multiscan before. I wrote the following test code. ( not care about performance now)
////////////////////////////////////////////////
CUDPPConfiguration config;
config.op = CUDPP_ADD;
config.datatype = CUDPP_FLOAT;
config.algorithm = CUDPP_SCAN;
config.options = CUDPP_OPTION_FORWARD | CUDPP_OPTION_INCLUSIVE;

CUDPPHandle scanplan = 0;
size_t numElements = ncols;
size_t numRows = nrows;

CUDPPResult result = cudppPlan(&scanplan, config, numElements * numRows, numRows, 0); 

if (result != CUDPP_SUCCESS)
{
    printf("Error creating CUDPPPlan\n");
    exit(-1);
}

cudppMultiScan(scanplan, d_odata, d_idata, numElements, numRows);
////////////////////////////////////////////////////////////////////////////////////////////////////////////

Only the first row of the resultant matrix shows the right things. All the other rows show all pure 0. Could anybody point me out a solution? Thanks.

You may ask it on cudpp forum. Also you did not mention version of cudpp.
Btw, are you sure you need
config.algorithm = CUDPP_SCAN;
not multiscan?