Commit: fe8800eaaee97d9fe31bfdae1554061b8d2786ff Author: YimingWu Date: Wed Oct 14 22:42:21 2020 +0800 Branches: lanpr-under-gp https://developer.blender.org/rBfe8800eaaee97d9fe31bfdae1554061b8d2786ff
LineArt: Memory debug info. =================================================================== M source/blender/editors/lineart/lineart_cpu.c M source/blender/editors/lineart/lineart_intern.h M source/blender/editors/lineart/lineart_util.c =================================================================== diff --git a/source/blender/editors/lineart/lineart_cpu.c b/source/blender/editors/lineart/lineart_cpu.c index 9800ff6231e..27fa7dd9303 100644 --- a/source/blender/editors/lineart/lineart_cpu.c +++ b/source/blender/editors/lineart/lineart_cpu.c @@ -3919,6 +3919,9 @@ int ED_lineart_compute_feature_lines_internal(Depsgraph *depsgraph, const int sh #undef LRT_PROGRESS #undef LRT_CANCEL_STAGE + if(G.debug_value == 4000){ + lineart_count_and_print_render_buffer_memory(rb); + } return OPERATOR_FINISHED; } diff --git a/source/blender/editors/lineart/lineart_intern.h b/source/blender/editors/lineart/lineart_intern.h index 443f6606fc4..dcc4eba2f11 100644 --- a/source/blender/editors/lineart/lineart_intern.h +++ b/source/blender/editors/lineart/lineart_intern.h @@ -70,4 +70,7 @@ void lineart_matrix_perspective_44d( int lineart_count_intersection_segment_count(struct LineartRenderBuffer *rb); + +void lineart_count_and_print_render_buffer_memory(LineartRenderBuffer* rb); + #endif diff --git a/source/blender/editors/lineart/lineart_util.c b/source/blender/editors/lineart/lineart_util.c index 5dd929b9c8c..d3ae4c771fa 100644 --- a/source/blender/editors/lineart/lineart_util.c +++ b/source/blender/editors/lineart/lineart_util.c @@ -182,3 +182,37 @@ void lineart_matrix_ortho_44d(double (*mProjection)[4], mProjection[3][2] = -((zMax + zMin) / (zMax - zMin)); mProjection[3][3] = 1.0f; } + +void lineart_count_and_print_render_buffer_memory(LineartRenderBuffer* rb){ + int i=0; + size_t total = 0; + size_t sum_this = 0; + size_t count_this = 0; + + LISTBASE_FOREACH(LineartStaticMemPoolNode *, smpn, &rb->render_data_pool.pools){ + count_this++; + sum_this+=LRT_MEMORY_POOL_64MB; + } + printf("LANPR Memory allocated %lu Standalone nodes, total %lu Bytes.\n",count_this,sum_this); + total += sum_this; + sum_this = 0; + count_this = 0; + + LISTBASE_FOREACH(LineartRenderElementLinkNode *, reln, &rb->line_buffer_pointers){ + count_this++; + sum_this+=reln->element_count*sizeof(LineartRenderLine); + } + printf(" allocated %lu edge blocks, total %lu Bytes.\n",count_this,sum_this); + total += sum_this; + sum_this = 0; + count_this = 0; + + LISTBASE_FOREACH(LineartRenderElementLinkNode *, reln, &rb->triangle_buffer_pointers){ + count_this++; + sum_this+=reln->element_count*rb->triangle_size; + } + printf(" allocated %lu triangle blocks, total %lu Bytes.\n",count_this,sum_this); + total += sum_this; + sum_this = 0; + count_this = 0; +} _______________________________________________ Bf-blender-cvs mailing list Bf-blender-cvs@blender.org https://lists.blender.org/mailman/listinfo/bf-blender-cvs