diff --git a/src/common/device_helpers.cuh b/src/common/device_helpers.cuh index 62f0a2229..1d6355c54 100644 --- a/src/common/device_helpers.cuh +++ b/src/common/device_helpers.cuh @@ -1050,8 +1050,9 @@ class SaveCudaContext { template void ExecuteIndexShards(std::vector *shards, FunctionT f) { SaveCudaContext{[&]() { -#pragma omp parallel for schedule(static, 1) if (shards->size() > 1) - for (size_t shard = 0; shard < shards->size(); ++shard) { + const long shards_size = static_cast(shards->size()); +#pragma omp parallel for schedule(static, 1) if (shards_size > 1) + for (long shard = 0; shard < shards_size; ++shard) { f(shard, shards->at(shard)); } }};