     unsigned int block_equ_size = grid_dim.x * grid_dim.y * sizeof(uint8_t);
     unsigned int grid_equ_size = 1 * sizeof(uint8_t);
 
-    // TODO : remove
-    uint8_t* pixel_equ = (uint8_t*) malloc(pixel_equ_size);
-    uint8_t* block_equ = (uint8_t*) malloc(block_equ_size);
+    // // TODO : remove
+    // uint8_t* pixel_equ = (uint8_t*) malloc(pixel_equ_size);
+    // uint8_t* block_equ = (uint8_t*) malloc(block_equ_size);
 
     cudaError d_src_malloc_success = cudaMalloc((void**) &d_src_data, data_size);
     cudaError d_dst_malloc_success = cudaMalloc((void**) &d_dst_data, data_size);

        fflush(stdout);
    } while (!grid_equ);
    // } while (0);

    // bring data back from device
    cudaMemcpy((*dst_bitmap)->data, d_dst_data, data_size, cudaMemcpyDeviceToHost);

        //     fflush(stdout);
        // }

        // bring d_grid_equ back from device
        cudaMemcpy(&grid_equ, d_grid_equ, grid_equ_size, cudaMemcpyDeviceToHost);

        // printf("grid_equ = %u\n", grid_equ);
        // fflush(stdout);

        swap_bitmaps((void**) &d_src_data, (void**) &d_dst_data);

