Blender
V3.3
|
#include <memory.h>
Protected Member Functions | |
size_t | size (size_t width, size_t height, size_t depth) |
![]() | |
device_memory (Device *device, const char *name, MemoryType type) | |
device_memory (const device_memory &)=delete | |
device_memory (device_memory &&other) noexcept=delete | |
device_memory & | operator= (const device_memory &)=delete |
device_memory & | operator= (device_memory &&)=delete |
void * | host_alloc (size_t size) |
void | host_free () |
void | device_alloc () |
void | device_free () |
void | device_copy_to () |
void | device_copy_from (size_t y, size_t w, size_t h, size_t elem) |
void | device_zero () |
bool | device_is_cpu () |
Additional Inherited Members | |
![]() | |
DataType | data_type |
int | data_elements |
size_t | data_size |
size_t | device_size |
size_t | data_width |
size_t | data_height |
size_t | data_depth |
MemoryType | type |
const char * | name |
Device * | device |
device_ptr | device_pointer |
void * | host_pointer |
void * | shared_pointer |
int | shared_counter |
![]() | |
device_ptr | original_device_ptr |
size_t | original_device_size |
Device * | original_device |
bool | need_realloc_ |
bool | modified |
Definition at line 355 of file cycles/device/memory.h.
|
inline |
Definition at line 357 of file cycles/device/memory.h.
References device_memory::data_elements, device_memory::data_type, device_memory::modified, and device_memory::need_realloc_.
|
inlinevirtual |
Definition at line 368 of file cycles/device/memory.h.
References device_vector< T >::free().
|
inline |
Definition at line 374 of file cycles/device/memory.h.
References device_vector< T >::data(), device_memory::data_depth, device_memory::data_height, device_memory::data_size, device_memory::data_width, device_memory::device_free(), device_memory::device_pointer, height, device_memory::host_alloc(), device_memory::host_free(), device_memory::host_pointer, device_memory::modified, device_vector< T >::size(), T, and width.
Referenced by PathTraceWorkGPU::alloc_integrator_path_split(), PathTraceWorkGPU::alloc_integrator_queue(), PathTraceWorkGPU::alloc_integrator_sorting(), PathTraceWorkGPU::copy_to_display_naive(), GeometryManager::device_update_attributes(), LightManager::device_update_background(), ShaderManager::device_update_common(), LightManager::device_update_distribution(), LightManager::device_update_ies(), GeometryManager::device_update_mesh(), ParticleSystemManager::device_update_particles(), LightManager::device_update_points(), ObjectManager::device_update_prim_offsets(), ObjectManager::device_update_transforms(), PathTraceWorkGPU::enqueue_work_tiles(), RenderBuffers::reset(), and GeometryManager::update_svm_attributes().
|
inline |
Definition at line 530 of file cycles/device/memory.h.
References device_memory::modified, and device_memory::need_realloc_.
Referenced by ObjectManager::device_update_prim_offsets().
|
inline |
Definition at line 536 of file cycles/device/memory.h.
References device_memory::data_height, device_memory::data_width, device_memory::device_copy_from(), and T.
Referenced by PathTraceWorkGPU::alloc_integrator_queue(), RenderBuffers::copy_from_device(), DenoiseTask::exec(), and device_vector< T >::move_device().
|
inline |
Definition at line 541 of file cycles/device/memory.h.
References device_memory::device_copy_from(), T, w(), and y.
|
inline |
Definition at line 514 of file cycles/device/memory.h.
References device_memory::data_size, and device_memory::device_copy_to().
Referenced by RenderBuffers::copy_to_device(), device_vector< T >::copy_to_device_if_modified(), LightManager::device_update_background(), GeometryManager::device_update_bvh(), ShaderManager::device_update_common(), LightManager::device_update_distribution(), ObjectManager::device_update_geom_offsets(), LightManager::device_update_ies(), GeometryManager::device_update_mesh(), ParticleSystemManager::device_update_particles(), LightManager::device_update_points(), ObjectManager::device_update_prim_offsets(), DenoiseTask::load_input_pixels(), CPUDevice::load_texture_info(), device_vector< T >::move_device(), and GeometryManager::update_svm_attributes().
|
inline |
Definition at line 521 of file cycles/device/memory.h.
References device_vector< T >::copy_to_device(), and device_memory::modified.
Referenced by GeometryManager::device_update_attributes(), and GeometryManager::device_update_mesh().
|
inline |
Definition at line 498 of file cycles/device/memory.h.
References device_memory::host_pointer, and T.
Referenced by LookupTables::add_table(), device_vector< T >::alloc(), PathTraceWorkGPU::alloc_integrator_path_split(), ObjectManager::apply_static_transforms(), PathTraceWorkGPU::compact_paths(), PathTraceWorkGPU::compact_shadow_paths(), PathTraceWork::copy_from_render_buffers(), PathTraceWorkGPU::copy_to_display_naive(), PathTraceWork::copy_to_render_buffers(), DeviceDenoiser::denoise_buffer(), ObjectManager::device_update_geom_offsets(), PathTraceWorkGPU::enqueue_path_iteration(), PathTraceWorkGPU::enqueue_reset(), PathTraceWorkGPU::enqueue_work_tiles(), DenoiseTask::exec(), fill_shader_input(), PathTraceWorkGPU::get_most_queued_kernel(), PassAccessor::get_render_tile_pixels(), PathTraceWorkGPU::kernel_max_active_main_path_index(), DenoiseTask::load_input_pixels(), PathTraceWorkGPU::num_active_main_paths_paths(), device_vector< T >::operator[](), TileManager::read_full_buffer_from_disk(), read_shader_output(), render_buffers_host_copy_denoised(), device_vector< T >::resize(), PassAccessorCPU::run_get_pass_kernel_processor_float(), PassAccessorCPU::run_get_pass_kernel_processor_half_rgba(), PassAccessor::set_render_tile_pixels(), shade_background_pixels(), PathTraceWorkGPU::shadow_catcher_count_possible_splits(), CPUDevice::tex_alloc(), and TileManager::write_tile().
|
inline |
Definition at line 503 of file cycles/device/memory.h.
References device_memory::host_pointer, and T.
|
inline |
Definition at line 450 of file cycles/device/memory.h.
References device_memory::data_depth, device_memory::data_height, device_memory::data_size, device_memory::data_width, device_memory::device_free(), device_memory::device_pointer, device_memory::host_free(), device_memory::host_pointer, device_memory::modified, and device_memory::need_realloc_.
Referenced by ParticleSystemManager::device_free(), LookupTables::device_free(), LightManager::device_free(), Camera::device_free(), SVMShaderManager::device_free(), ShaderManager::device_free_common(), ShaderManager::device_update_common(), LightManager::device_update_distribution(), DenoiseTask::free(), device_vector< T >::free_if_need_realloc(), CPUDevice::~CPUDevice(), device_vector< T >::~device_vector(), and RenderBuffers::~RenderBuffers().
|
inline |
Definition at line 465 of file cycles/device/memory.h.
References device_vector< T >::free(), and device_memory::need_realloc_.
Referenced by GeometryManager::device_free(), ObjectManager::device_free(), and Integrator::device_free().
|
inline |
Definition at line 436 of file cycles/device/memory.h.
References device_memory::data_depth, device_memory::data_height, device_memory::data_size, device_memory::data_width, device_memory::device_free(), device_memory::device_pointer, device_memory::host_pointer, array< T, alignment >::set_data(), and T.
|
inline |
Definition at line 472 of file cycles/device/memory.h.
References device_memory::modified.
|
inline |
Definition at line 551 of file cycles/device/memory.h.
References device_vector< T >::copy_from_device(), device_vector< T >::copy_to_device(), device_memory::device, and device_memory::device_free().
|
inline |
Definition at line 477 of file cycles/device/memory.h.
References device_memory::need_realloc_.
Referenced by GeometryManager::device_update_attributes(), GeometryManager::device_update_mesh(), ObjectManager::device_update_transforms(), and GeometryManager::update_svm_attributes().
|
inline |
Definition at line 508 of file cycles/device/memory.h.
References device_vector< T >::data(), and device_memory::data_size.
|
inline |
Definition at line 396 of file cycles/device/memory.h.
References device_vector< T >::data(), device_memory::data_depth, device_memory::data_height, device_memory::data_size, device_memory::data_width, device_memory::device_free(), device_memory::device_pointer, height, device_memory::host_alloc(), device_memory::host_free(), device_memory::host_pointer, device_vector< T >::size(), T, and width.
Referenced by LookupTables::add_table(), and CPUDevice::tex_alloc().
|
inline |
Definition at line 493 of file cycles/device/memory.h.
References device_memory::data_size.
Referenced by device_vector< T >::alloc(), PathTraceWorkGPU::alloc_integrator_path_split(), PathTraceWorkGPU::alloc_integrator_queue(), PathTraceWorkGPU::alloc_integrator_sorting(), DeviceDenoiser::denoise_buffer(), ObjectManager::device_update_geom_offsets(), PathTraceWorkGPU::enqueue_work_tiles(), read_shader_output(), device_vector< T >::resize(), CPUDevice::tex_alloc(), and GeometryManager::update_svm_attributes().
|
inlineprotected |
Definition at line 560 of file cycles/device/memory.h.
|
inline |
Definition at line 423 of file cycles/device/memory.h.
References device_memory::data_depth, device_memory::data_height, device_memory::data_size, device_memory::data_width, device_memory::device_free(), device_memory::device_pointer, from, device_memory::host_free(), and device_memory::host_pointer.
Referenced by GeometryManager::device_update_bvh().
|
inline |
Definition at line 482 of file cycles/device/memory.h.
References device_memory::modified.
Referenced by ObjectManager::device_update(), and device_vector< T >::tag_realloc().
|
inline |
Definition at line 487 of file cycles/device/memory.h.
References device_memory::need_realloc_, and device_vector< T >::tag_modified().
Referenced by ObjectManager::device_update().
|
inline |
Definition at line 546 of file cycles/device/memory.h.
References device_memory::device_zero().
Referenced by PathTraceWorkGPU::alloc_integrator_path_split(), PathTraceWorkGPU::alloc_integrator_queue(), PathTraceWorkGPU::alloc_integrator_sorting(), and RenderBuffers::zero().