Blender
V3.3
|
#include <cstdlib>
#include "MEM_guardedalloc.h"
#include "DNA_listBase.h"
#include "BLI_task.h"
#include "BLI_threads.h"
#include "atomic_ops.h"
Go to the source code of this file.
Functions | |
void | BLI_task_parallel_range (const int start, const int stop, void *userdata, TaskParallelRangeFunc func, const TaskParallelSettings *settings) |
int | BLI_task_parallel_thread_id (const TaskParallelTLS *UNUSED(tls)) |
Task parallel range functions.
Definition in file task_range.cc.
void BLI_task_parallel_range | ( | const int | start, |
const int | stop, | ||
void * | userdata, | ||
TaskParallelRangeFunc | func, | ||
const TaskParallelSettings * | settings | ||
) |
Definition at line 94 of file task_range.cc.
References BLI_task_scheduler_num_threads(), TaskParallelSettings::func_free, TaskParallelSettings::func_reduce, MAX2, TaskParallelSettings::min_iter_per_thread, blender::threading::parallel_for(), blender::threading::parallel_reduce(), blender::compositor::task, TaskParallelSettings::use_threading, TaskParallelTLS::userdata_chunk, TaskParallelSettings::userdata_chunk, and TaskParallelSettings::userdata_chunk_size.
Referenced by applyBevelWeight(), applyCrease(), applyPushPull(), applyResize(), applyRotationValue(), applyShear(), applyShrinkFatten(), applySkinResize(), applyToSphere(), applyTrackballValue(), applyTranslationValue(), armature_deform_coords_impl(), Bend(), BKE_autotrack_context_step(), BKE_maskrasterize_buffer(), BKE_mesh_calc_normals_poly(), BKE_mesh_calc_normals_poly_and_vertex(), BKE_scopes_update(), BKE_subdiv_ccg_average_grids(), BKE_subdiv_ccg_average_stitch_faces(), BKE_subdiv_foreach_subdiv_geometry(), BKE_tracking_stabilize_frame(), BLI_bvhtree_overlap_ex(), BLI_covariance_m_vn_ex(), BM_loop_interp_multires_ex(), bm_mesh_calc_tessellation_with_partial__multi_threaded(), BM_mesh_normals_update_with_partial_ex(), brush_add(), calculate_average_weight(), ccgDM_copyFinalLoopArray(), ccgSubSurf__calcSubdivLevel(), ccgSubSurf__calcVertNormals(), cloth_brush_apply_brush_foces(), cloth_bvh_objcollisions_nearcheck(), cloth_bvh_selfcollisions_nearcheck(), displaceModifier_do(), do_brush_action(), do_gravity(), dynamicPaint_applySurfaceDisplace(), dynamicPaint_brushMeshCalculateVelocity(), dynamicPaint_createUVSurface(), dynamicPaint_doBorderStep(), dynamicPaint_doEffectStep(), dynamicPaint_doStep(), dynamicPaint_doWaveStep(), dynamicPaint_generateBakeData(), dynamicPaint_Modifier_apply(), dynamicPaint_outputSurfaceImage(), dynamicPaint_paintMesh(), dynamicPaint_paintParticles(), dynamicPaint_paintSinglePoint(), dynamicPaint_prepareAdjacencyData(), dynamicPaint_prepareEffectStep(), dynamicPaint_setInitialColor(), dynamics_step(), blender::draw::extract_task_range_run_iter(), foreach_grid_coordinate(), foreach_mouse_hit_key(), foreach_toplevel_grid_coord(), get_vert2geom_distance(), IMB_processor_apply_threaded_scanlines(), lattice_deform_coords_impl(), lineart_build_edge_neighbor(), lineart_geometry_object_load(), lineart_main_transform_and_add_shadow(), load_tex(), load_tex_cursor(), make_histogram_view_from_ibuf_byte(), make_histogram_view_from_ibuf_float(), mask_flood_fill_exec(), mesh_recalc_looptri__multi_threaded(), mesh_render_data_mat_tri_len_build_threaded(), meshdeformModifier_do(), modifyMesh(), multiresModifier_disp_run(), non_recursive_bvh_div_nodes(), paint_2d_op(), paint_mesh_restore_co(), pbvh_faces_update_normals(), pbvh_update_BB_redraw(), pbvh_update_draw_buffers(), pbvh_update_mask_redraw(), pbvh_update_visibility(), pbvh_update_visibility_redraw(), PE_apply_lengths(), pe_deflect_emitter(), pe_iterate_lengths(), precompute_weight_values(), psys_cache_edit_paths(), RE_point_density_sample(), SCULPT_bmesh_topology_rake(), SCULPT_calc_area_center(), SCULPT_calc_area_normal_and_center(), SCULPT_cloth_brush_do_simulation_step(), SCULPT_cloth_brush_ensure_nodes_constraints(), sculpt_cloth_filter_modal(), sculpt_color_filter_modal(), sculpt_combine_proxies(), SCULPT_combine_transform_proxies(), sculpt_dirty_mask_exec(), SCULPT_do_boundary_brush(), SCULPT_do_clay_brush(), SCULPT_do_clay_strips_brush(), SCULPT_do_clay_thumb_brush(), SCULPT_do_crease_brush(), SCULPT_do_displacement_eraser_brush(), SCULPT_do_displacement_smear_brush(), SCULPT_do_draw_brush(), SCULPT_do_draw_face_sets_brush(), SCULPT_do_draw_sharp_brush(), SCULPT_do_elastic_deform_brush(), SCULPT_do_fill_brush(), SCULPT_do_flatten_brush(), SCULPT_do_grab_brush(), SCULPT_do_inflate_brush(), SCULPT_do_layer_brush(), SCULPT_do_mask_brush_draw(), SCULPT_do_multiplane_scrape_brush(), SCULPT_do_nudge_brush(), SCULPT_do_paint_brush(), SCULPT_do_paint_brush_image(), SCULPT_do_pinch_brush(), SCULPT_do_pose_brush(), SCULPT_do_rotate_brush(), SCULPT_do_scrape_brush(), SCULPT_do_slide_relax_brush(), SCULPT_do_smear_brush(), SCULPT_do_snake_hook_brush(), SCULPT_do_surface_smooth_brush(), SCULPT_do_thumb_brush(), SCULPT_enhance_details_brush(), sculpt_expand_update_for_vertex(), SCULPT_fake_neighbor_search(), SCULPT_filter_cache_init(), SCULPT_flush_stroke_deform(), sculpt_gesture_face_set_apply_for_symmetry_pass(), sculpt_gesture_mask_apply_for_symmetry_pass(), sculpt_gesture_project_apply_for_symmetry_pass(), sculpt_mask_by_color_contiguous(), sculpt_mask_by_color_full_mesh(), sculpt_mask_expand_invoke(), sculpt_mask_expand_modal(), sculpt_mask_filter_exec(), SCULPT_mask_filter_smooth_apply(), sculpt_mask_init_exec(), sculpt_mesh_filter_modal(), SCULPT_nearest_vertex_get(), SCULPT_pbvh_calc_area_normal(), SCULPT_pose_brush_init(), sculpt_pose_grow_pose_factor(), SCULPT_smooth(), sculpt_transform_all_vertices(), sculpt_transform_radius_elastic(), sculpt_undo_bmesh_restore_generic(), set_face_varying_data_from_uv(), shrinkwrap_calc_nearest_surface_point(), shrinkwrap_calc_nearest_vertex(), shrinkwrap_calc_normal_projection(), SimpleDeformModifier_do(), subdiv_ccg_average_boundaries(), subdiv_ccg_average_corners(), subdiv_ccg_evaluate_grids(), subdiv_ccg_recalc_inner_grid_normals(), subdiv_ccg_recalc_modified_inner_grid_normals(), surfacedeformBind(), surfacedeformModifier_do(), surfaceGenerateGrid(), TEST(), blender::bke::pbvh::pixels::update_pixels(), and wpaint_paint_leaves().
int BLI_task_parallel_thread_id | ( | const TaskParallelTLS * | UNUSEDtls | ) |
Definition at line 132 of file task_range.cc.
References atomic_fetch_and_add_int32(), BLENDER_MAX_THREADS, BLI_assert_msg, and blender::threading::enumerable_thread_specific_utils::thread_id.