         pRawData->getMaxNnz(),
                 mDev_ComputedSignaturesPerInstance, 
                 end, start, mBlockSize, mShingleSize, dev_SignaturesBlockSize);
-                
+        // copy results back to host      
         cudaMemcpy(instancesHashValues, mDev_ComputedSignaturesPerInstance, 
                     pRawData->getNumberOfInstances()/iterations * signaturesSize * sizeof(size_t),
                     cudaMemcpyDeviceToHost);
+        // copy values into one vector per instance
         for(size_t i = 0; i < pRawData->getNumberOfInstances() / iterations; ++i) {
             vsize_t* instance = new vsize_t(signaturesSize);
             for (size_t j = 0; j < signaturesSize; ++j) {

            pRawData->getNumberOfInstances() / iterations  * signaturesSize * sizeof(size_t));
    size_t* dev_SignaturesBlockSize;
    cudaMalloc((void **) &dev_SignaturesBlockSize,
            mNumberOfHashFunctions * pBlockSizeShingle * sizeof(size_t));
    for (size_t i = 0; i < iterations; ++i) {
        
        fitCuda<<<pNumberOfBlocks, pNumberOfThreads>>>
        (mDev_FeatureList, 
        mDev_SizeOfInstanceList,  

    
    cudaFree(mDev_ComputedSignaturesPerInstance);
    cudaFree(dev_SignaturesBlockSize);
}

void InverseIndexCuda::computeHitsOnGpu(std::vector<vvsize_t_p*>* pHitsPerInstance, 
