Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'intern/cycles/device/metal/queue.mm')
-rw-r--r--intern/cycles/device/metal/queue.mm16
1 files changed, 2 insertions, 14 deletions
diff --git a/intern/cycles/device/metal/queue.mm b/intern/cycles/device/metal/queue.mm
index 6a9cc552098..5ac63a16c61 100644
--- a/intern/cycles/device/metal/queue.mm
+++ b/intern/cycles/device/metal/queue.mm
@@ -293,21 +293,9 @@ int MetalDeviceQueue::num_concurrent_busy_states() const
return result;
}
-int MetalDeviceQueue::num_sort_partitions(const size_t state_size) const
+int MetalDeviceQueue::num_sort_partition_elements() const
{
- /* Sort partitioning becomes less effective when more shaders are in the wavefront. In lieu of a
- * more sophisticated heuristic we simply disable sort partitioning if the shader count is high.
- */
- if (metal_device_->launch_params.data.max_shaders >= 300) {
- return 1;
- }
-
- const int optimal_partition_elements = MetalInfo::optimal_sort_partition_elements(
- metal_device_->mtlDevice);
- if (optimal_partition_elements) {
- return num_concurrent_states(state_size) / optimal_partition_elements;
- }
- return 1;
+ return MetalInfo::optimal_sort_partition_elements(metal_device_->mtlDevice);
}
void MetalDeviceQueue::init_execution()