                 temp_storage_bytes = 1;
                 break;
             }
-
-            // Return if empty problem
-            if (num_items == 0)
-                break;
 
             // Log single_tile_kernel configuration
             if (debug_synchronous)


/******************************************************************************
 * Copyright (c) 2011, Duane Merrill.  All rights reserved.
 * Copyright (c) 2011-2018, NVIDIA CORPORATION.  All rights reserved.

    {
        typedef typename DispatchSegmentedRadixSort::MaxPolicy MaxPolicyT;

        // Return if empty problem
        if (num_items == 0)
        {
          if (d_temp_storage == nullptr)
          {
            temp_storage_bytes = 1;
          }

          return cudaSuccess;
        }

        // Force kernel code-generation in all compiler passes
        return InvokePasses<ActivePolicyT>(
            DeviceSegmentedRadixSortKernel<MaxPolicyT, false,   IS_DESCENDING, KeyT, ValueT, BeginOffsetIteratorT, EndOffsetIteratorT, OffsetT>,
