|
Blender
V2.93
|
Go to the source code of this file.
Functions | |
| CCL_NAMESPACE_BEGIN ccl_device void | enqueue_ray_index (int ray_index, int queue_number, ccl_global int *queues, int queue_size, ccl_global int *queue_index) |
| ccl_device int | get_ray_index (KernelGlobals *kg, int thread_index, int queue_number, ccl_global int *queues, int queuesize, int empty_queue) |
| ccl_device void | enqueue_ray_index_local (int ray_index, int queue_number, char enqueue_flag, int queuesize, ccl_local_param unsigned int *local_queue_atomics, ccl_global int *Queue_data, ccl_global int *Queue_index) |
| ccl_device unsigned int | get_local_queue_index (int queue_number, ccl_local_param unsigned int *local_queue_atomics) |
| ccl_device unsigned int | get_global_per_queue_offset (int queue_number, ccl_local_param unsigned int *local_queue_atomics, ccl_global int *global_queue_atomics) |
| ccl_device unsigned int | get_global_queue_index (int queue_number, int queuesize, unsigned int lqidx, ccl_local_param unsigned int *global_per_queue_offset) |
| ccl_device int | dequeue_ray_index (int queue_number, ccl_global int *queues, int queue_size, ccl_global int *queue_index) |
| ccl_device int dequeue_ray_index | ( | int | queue_number, |
| ccl_global int * | queues, | ||
| int | queue_size, | ||
| ccl_global int * | queue_index | ||
| ) |
Definition at line 131 of file kernel_queues.h.
References atomic_fetch_and_dec_uint32, ccl_global, QUEUE_EMPTY_SLOT, and queue_index.
| CCL_NAMESPACE_BEGIN ccl_device void enqueue_ray_index | ( | int | ray_index, |
| int | queue_number, | ||
| ccl_global int * | queues, | ||
| int | queue_size, | ||
| ccl_global int * | queue_index | ||
| ) |
Definition at line 33 of file kernel_queues.h.
References atomic_fetch_and_inc_uint32, ccl_global, and queue_index.
| ccl_device void enqueue_ray_index_local | ( | int | ray_index, |
| int | queue_number, | ||
| char | enqueue_flag, | ||
| int | queuesize, | ||
| ccl_local_param unsigned int * | local_queue_atomics, | ||
| ccl_global int * | Queue_data, | ||
| ccl_global int * | Queue_index | ||
| ) |
Definition at line 71 of file kernel_queues.h.
References atomic_fetch_and_add_uint32(), atomic_fetch_and_inc_uint32, ccl_barrier, ccl_global, ccl_local_id(), CCL_LOCAL_MEM_FENCE, and ccl_local_size().
Referenced by kernel_buffer_update(), kernel_direct_lighting(), kernel_enqueue_inactive(), kernel_holdout_emission_blurring_pathtermination_ao(), kernel_next_iteration_setup(), and kernel_shader_setup().
| ccl_device unsigned int get_global_per_queue_offset | ( | int | queue_number, |
| ccl_local_param unsigned int * | local_queue_atomics, | ||
| ccl_global int * | global_queue_atomics | ||
| ) |
Definition at line 111 of file kernel_queues.h.
References atomic_fetch_and_add_uint32(), and ccl_global.
Referenced by kernel_queue_enqueue().
| ccl_device unsigned int get_global_queue_index | ( | int | queue_number, |
| int | queuesize, | ||
| unsigned int | lqidx, | ||
| ccl_local_param unsigned int * | global_per_queue_offset | ||
| ) |
Definition at line 121 of file kernel_queues.h.
Referenced by kernel_queue_enqueue().
| ccl_device unsigned int get_local_queue_index | ( | int | queue_number, |
| ccl_local_param unsigned int * | local_queue_atomics | ||
| ) |
Definition at line 103 of file kernel_queues.h.
References atomic_fetch_and_inc_uint32.
Referenced by kernel_queue_enqueue().
| ccl_device int get_ray_index | ( | KernelGlobals * | kg, |
| int | thread_index, | ||
| int | queue_number, | ||
| ccl_global int * | queues, | ||
| int | queuesize, | ||
| int | empty_queue | ||
| ) |
Definition at line 53 of file kernel_queues.h.
References QUEUE_EMPTY_SLOT.
Referenced by kernel_buffer_update(), kernel_direct_lighting(), kernel_do_volume(), kernel_holdout_emission_blurring_pathtermination_ao(), kernel_indirect_background(), kernel_indirect_subsurface(), kernel_lamp_emission(), kernel_next_iteration_setup(), kernel_scene_intersect(), kernel_shader_eval(), kernel_shader_setup(), kernel_shadow_blocked_ao(), kernel_shadow_blocked_dl(), and kernel_subsurface_scatter().