         if (LOGICAL_WARP_THREADS != 32)
             next_flag = CUB_MIN(next_flag, LOGICAL_WARP_THREADS);
 
+        #pragma unroll
         for (int STEP = 0; STEP < STEPS; STEP++)
         {
             const int OFFSET = 1 << STEP;

     ******************************************************************************/

    /**
     * Reduction
     */
    template <


        SmemFlag flag_status = (flag) ? SET : UNSET;

        #pragma unroll
        for (int STEP = 0; STEP < STEPS; STEP++)
        {
            const int OFFSET = 1 << STEP;
