message: fix sellp stuck
diff: @@ -569,8 +569,7 @@ void calculate_slice_lengths(size_type num_rows, size_type slice_size,
  constexpr auto sg_size = cfg;
  const auto sliceid = item_ct1.get_group(2);
  const auto tid_in_warp = item_ct1.get_local_id(2);
  -
  - if (sliceid * slice_size + tid_in_warp < num_rows) {
  + const bool runable = sliceid * slice_size + tid_in_warp < num_rows;
  size_type thread_result = 0;
  for (size_type i = tid_in_warp; i < slice_size; i += sg_size) {
  thread_result =
  @@ -585,14 +584,12 @@ void calculate_slice_lengths(size_type num_rows, size_type slice_size,
  warp_tile, thread_result,
  [](const size_type &a, const size_type &b) { return max(a, b); });
  - if (tid_in_warp == 0) {
  - auto slice_length =
  - ceildiv(warp_result, stride_factor) * stride_factor;
  + if (tid_in_warp == 0 && runable) {
  + auto slice_length = ceildiv(warp_result, stride_factor) * stride_factor;
  slice_lengths[sliceid] = slice_length;
  slice_sets[sliceid] = slice_length;
  }
  }
  -}
  GKO_ENABLE_DEFAULT_HOST_CONFIG(calculate_slice_lengths, calculate_slice_lengths)
  GKO_ENABLE_IMPLEMENTATION_CONFIG_SELECTION(calculate_slice_lengths,
  