halide / Halide

a language for fast, portable data-parallel computation
https://halide-lang.org
Other
5.81k stars 1.07k forks source link

Cull stale branches #4567

Closed alexreinking closed 2 years ago

alexreinking commented 4 years ago

We currently have 295 branches published on the main repo. In particular, 115 of these have already been merged into master. The columns list the age of the branch, the branch tag, and the most recent committer. They are:

30 hours ago           origin/modern-cmake-tests                               Steven Johnson
5 days ago             origin/cheaper_copy_to_host                             Andrew Adams
6 days ago             origin/fix_duplicate_names_in_gpu_kernel                Steven Johnson
6 days ago             origin/delete_native_client                             Andrew Adams
7 days ago             origin/pdb_fix_install_qc                               Pranav Bhandarkar
8 days ago             origin/fix_alignment_arg                                Andrew Adams
12 days ago            origin/benoitsteiner-featurization                      Benoit Steiner
13 days ago            origin/build_apps_in_parallel_test_serial               Andrew Adams
2 weeks ago            origin/thread_dimensions_not_equal_to_block_dimensions  Andrew Adams
3 weeks ago            origin/aligned-read                                     Steven Johnson
3 weeks ago            origin/fix-fft                                          Steven Johnson
3 weeks ago            origin/srj-hvx-nocopy                                   Steven Johnson
4 weeks ago            origin/malloc_in_cuda_kernels                           Andrew Adams
7 weeks ago            origin/fix_hvx_intrinsics                               Pranav Bhandarkar
3 months ago           origin/tzumao-gradient-autoscheduler-bug                Steven Johnson
3 months ago           origin/pdb_mul_div_mod_multi_thread                     Steven Johnson
3 months ago           origin/pr/4380                                          Shubham Pawar
3 months ago           origin/tzumao-python-undef-buffer                       Tzu-Mao Li
3 months ago           origin/tzumao-autodiff-remove-boundary                  GitHub
3 months ago           origin/tzumao-gradient-autoscheduler                    Tzu-Mao Li
3 months ago           origin/tzumao-python-func-in                            Tzu-Mao Li
3 months ago           origin/BachiLi-patch-1                                  GitHub
3 months ago           origin/tzumao-allocation_cache                          Tzu-Mao Li
3 months ago           origin/tzumao-apps                                      Tzu-Mao Li
3 months ago           origin/tzumao-issue-3426                                Tzu-Mao Li
3 months ago           origin/tzumao-readme                                    Tzu-Mao Li
3 months ago           origin/srj-muldivmod                                    Steven Johnson
3 months ago           origin/tzumao-realization                               Tzu-Mao Li
3 months ago           origin/tzumao-llvm-alignment                            Tzu-Mao Li
3 months ago           origin/tzumao-derivative-makeconst                      Tzu-Mao Li
4 months ago           origin/issue_4307                                       GitHub
4 months ago           origin/pdb_add_libcpp_makefile_inc                      Pranav Bhandarkar
4 months ago           origin/tzumao-python-funcref-setitem                    Tzu-Mao Li
4 months ago           origin/pdb_fix_simd_op_check_hvx                        Pranav Bhandarkar
4 months ago           origin/srj-clean                                        Steven Johnson
5 months ago           origin/kp_bit_shift                                     Katrina Passarella
5 months ago           origin/fix-prefetch                                     dsharletg
5 months ago           origin/srj-wasmfix                                      Steven Johnson
5 months ago           origin/srj-bv                                           Steven Johnson
5 months ago           origin/tzumao_autodiff_unbounded                        Tzu-Mao Li
5 months ago           origin/pdb_fix_clang_build                              Pranav Bhandarkar
5 months ago           origin/srj-auto_schedule_mat_mul                        Steven Johnson
6 months ago           origin/srj-llvm-fix                                     Steven Johnson
6 months ago           origin/srj-dag                                          Steven Johnson
6 months ago           origin/distinct_wrapper_names                           GitHub
6 months ago           origin/srj-aslog                                        GitHub
6 months ago           origin/srj-autosched                                    Steven Johnson
6 months ago           origin/srj-initshape                                    Steven Johnson
7 months ago           origin/tzumao_issue_4010                                Tzu-Mao Li
7 months ago           origin/autodiff-param-tzumao                            Tzu-Mao Li
7 months ago           origin/arm_sve                                          Zalman Stern
7 months ago           origin/var_ir_fix                                       Zalman Stern
7 months ago           origin/pr/3960                                          Mike Woodworth
8 months ago           origin/readme-fix-gcd                                   GitHub
8 months ago           origin/ataei-fix-pow                                    Ahmed Taei
8 months ago           origin/pr/3939                                          Volodymyr Kysenko
8 months ago           origin/tzumao-fix-opencl-extra-print                    Tzu-Mao Li
8 months ago           origin/shoaibkamil/specialize_compute_at_fix            Shoaib Kamil
9 months ago           origin/cmake_wasm_features                              Zalman Stern
9 months ago           origin/riscv                                            Z Stern
9 months ago           origin/srj-hvxshift                                     Steven Johnson
9 months ago           origin/shift_amount_type_change                         Zalman Stern
9 months ago           origin/hexagon_priority_2                               dsharletg
9 months ago           origin/ataei-onnx_pybind                                Ahmed S. Taei
9 months ago           origin/ataei-onnx_converter_update                      Ahmed S. Taei
10 months ago          origin/srj-llvmspeed                                    Steven Johnson
10 months ago          origin/ataei-gen_str_param                              Ahmed S. Taei
10 months ago          origin/fix_hexagon_alignment                            Pranav Bhandarkar
10 months ago          origin/hexagon_priority                                 Dan Palermo
10 months ago          origin/simplify-ifs-more                                dsharletg
12 months ago          origin/srj-ctlz                                         Steven Johnson
12 months ago          origin/srj-shl-shr-2                                    Steven Johnson
1 year ago             origin/generate                                         GitHub
1 year ago             origin/ataei-block_asserts-codegen                      Ahmed Taei
1 year ago             origin/ataei-debug_info                                 Ahmed Taei
1 year, 1 month ago    origin/reset_unique_counter                             Jing Pu
1 year, 1 month ago    origin/bug_device_free                                  Jing Pu
1 year, 2 months ago   origin/blaze                                            GitHub
1 year, 2 months ago   origin/kamil/remove_stale_runtime_comment               Shoaib Kamil
1 year, 2 months ago   origin/Halide_unsharp                                   GitHub
1 year, 2 months ago   origin/emscripten_vector_fix                            Z Stern
1 year, 3 months ago   origin/undo_async_copy_chain_black_list                 Z Stern
1 year, 3 months ago   origin/bounds_buffer_lets_fix                           Z Stern
1 year, 3 months ago   origin/srj-fthru                                        GitHub
1 year, 4 months ago   origin/srj-blacklist                                    Steven Johnson
1 year, 4 months ago   origin/srj-aaa                                          Steven Johnson
1 year, 4 months ago   origin/opengl_compute_buffer_types_fix                  Zalman Stern
1 year, 4 months ago   origin/srj-irmut2                                       Steven Johnson
1 year, 4 months ago   origin/srj-f16                                          Steven Johnson
1 year, 4 months ago   origin/async                                            Zalman Stern
1 year, 4 months ago   origin/perform_inline_with_order                        Patricia Adriana Suriana
1 year, 4 months ago   origin/compute_with_remove_is_right_level               Patricia Adriana Suriana
1 year, 4 months ago   origin/solve_div_master                                 Jing Pu
1 year, 5 months ago   origin/another_buffer_copy_fix                          Z Stern
1 year, 5 months ago   origin/solve_div_simplifier_test                        Jing Pu
1 year, 5 months ago   origin/simplify_mod                                     Jing Pu
1 year, 5 months ago   origin/reorder_rvar                                     Jing Pu
1 year, 5 months ago   origin/bug_inline_unbounded                             Patricia Suriana
1 year, 6 months ago   origin/pr/3081                                          GitHub
1 year, 7 months ago   origin/includes_fix                                     Zalman Stern
1 year, 8 months ago   origin/extern_host_alloc                                Steven Johnson
1 year, 8 months ago   origin/fix_prefetch_test                                Patricia Suriana
1 year, 8 months ago   origin/empty_prefetch                                   Patricia Suriana
1 year, 8 months ago   origin/prefetch_specialize                              Patricia Suriana
1 year, 9 months ago   origin/srj-ir                                           Steven Johnson
1 year, 9 months ago   origin/fast_sync_tsan                                   Z Stern
1 year, 9 months ago   origin/ios_fast_sync_fix                                Z Stern
1 year, 10 months ago  origin/auto_sched_estimates                             Patricia Suriana
1 year, 10 months ago  origin/validate_sched_error_msg                         Patricia Suriana
1 year, 10 months ago  origin/srj-using                                        Steven Johnson
1 year, 11 months ago  origin/srj-barr                                         Steven Johnson
1 year, 11 months ago  origin/realization_order                                Patricia Suriana
1 year, 11 months ago  origin/srj-g3                                           Steven Johnson
2 years, 1 month ago   origin/unbounded_bugs                                   Patricia Suriana
2 years, 1 month ago   origin/compute_with_inlined                             Patricia Suriana

We should consider removing these and also taking a closer look at the other branches that have not been merged but are a year old or more.

12 months ago          origin/srj-bounds-of-bitwise-2                                 Steven Johnson
12 months ago          origin/ataei-standalone_autoscheduler                          Ahmed Taei
1 year ago             origin/revert-3612-ataei-speedup_compiletime                   GitHub
1 year ago             origin/ataei_lots_of_inputs                                    Ahmed Taei
1 year ago             origin/jia-kai-fix-runtime-cuda-init                           Andrew Adams
1 year ago             origin/srj-sio                                                 Steven Johnson
1 year ago             origin/srj-xor2                                                Steven Johnson
1 year ago             origin/shoaibkamil/arm64_windows                               Shoaib Kamil
1 year ago             origin/lots_of_inputs                                          Andrew Adams
1 year ago             origin/sticky_task_assignments                                 Andrew Adams
1 year ago             origin/srj-bits                                                Steven Johnson
1 year, 1 month ago    origin/standalone_autoscheduler_arm_worker_amazon              Andrew Adams
1 year, 1 month ago    origin/srj-crosscompile                                        Steven Johnson
1 year, 1 month ago    origin/standalone_autoscheduler_arm_worker                     Andrew Adams
1 year, 1 month ago    origin/hexagon_sysmon_markers                                  Dan Palermo
1 year, 1 month ago    origin/srj-classic-autotune                                    Steven Johnson
1 year, 1 month ago    origin/hexagon_setpriority                                     Dan Palermo
1 year, 1 month ago    origin/new_autoschedule_with_new_simplifier_arm_worker_branch  Andrew Adams
1 year, 1 month ago    origin/srj-auto-multi2                                         Steven Johnson
1 year, 1 month ago    origin/srj-auto-multi                                          Steven Johnson
1 year, 1 month ago    origin/add_vectorization_to_search_space                       Andrew Adams
1 year, 2 months ago   origin/autoschedule_with_convnet                               Andrew Adams
1 year, 3 months ago   origin/srj-schedule-storage                                    Steven Johnson
1 year, 3 months ago   origin/schedule-output-storage                                 Dillon Sharlet
1 year, 3 months ago   origin/kamil-openglcompute-infinity                            Shoaib Kamil
1 year, 3 months ago   origin/srj-fsch                                                Steven Johnson
1 year, 3 months ago   origin/fix-vlut                                                dsharletg
1 year, 4 months ago   origin/hex-dma2                                                dsharletg
1 year, 4 months ago   origin/copy_elision2                                           dsharletg
1 year, 4 months ago   origin/srj-mak                                                 Steven Johnson
1 year, 4 months ago   origin/no_llvm_in_apps                                         Andrew Adams
1 year, 4 months ago   origin/copy_elision                                            dsharletg
1 year, 4 months ago   origin/hex-copy-elision                                        dsharletg
1 year, 4 months ago   origin/filter-simd-op-check                                    dsharletg
1 year, 4 months ago   origin/compute_with_check                                      Patricia Adriana Suriana
1 year, 4 months ago   origin/compute_at_guard_with_if_goes_on_stack                  Andrew Adams
1 year, 4 months ago   origin/compute_with_at                                         Patricia Suriana
1 year, 4 months ago   origin/profile_hardware_counters                               Andrew Adams
1 year, 5 months ago   origin/srj-bounds                                              Steven Johnson
1 year, 5 months ago   origin/srj-bufcallwrap                                         Steven Johnson
1 year, 5 months ago   origin/srj-mut                                                 Steven Johnson
1 year, 5 months ago   origin/optmize_reorder                                         Jing Pu
1 year, 5 months ago   origin/srj-assoc                                               Steven Johnson
1 year, 5 months ago   origin/fix_windows_vs15_build                                  Ahmed S. Taei
1 year, 6 months ago   origin/srj-hvx-codegen-bug                                     Pranav Bhandarkar
1 year, 6 months ago   origin/hex_dma2_async                                          Zalman Stern
1 year, 6 months ago   origin/solve_div                                               Jing Pu
1 year, 6 months ago   origin/srj-hvx-bug                                             Steven Johnson
1 year, 6 months ago   origin/srj-constcall                                           GitHub
1 year, 6 months ago   origin/separate_bounds_query_entrypoint                        Andrew Adams
1 year, 6 months ago   origin/downsample_bug_repro                                    Andrew Adams
1 year, 6 months ago   origin/kamil-d3d12compute-fix-chunk-test                       Steven Johnson
1 year, 6 months ago   origin/srj-msan                                                Steven Johnson
1 year, 6 months ago   origin/v65-test                                                dsharletg
1 year, 6 months ago   origin/newer_ion_ioctl                                         Steven Johnson
1 year, 7 months ago   origin/new_autoschedule_with_new_simplifier                    Andrew Adams
1 year, 7 months ago   origin/destructor_calls_deinit                                 Ron Lieberman
1 year, 8 months ago   origin/shoaibkamil/small_code_model_on_darwin                  Shoaib Kamil
1 year, 8 months ago   origin/pr/3017                                                 Matthias Kramm
1 year, 8 months ago   origin/mohamedadaly-vmlal                                      Aly, Mohamed
1 year, 8 months ago   origin/metaprogrammed_simplifier_mod                           Jing Pu
1 year, 8 months ago   origin/pr/2975                                                 Matthias Kramm
1 year, 8 months ago   origin/rl_simplifier_rules                                     Andrew Adams
1 year, 9 months ago   origin/random-pipelines                                        Andrew Adams
1 year, 9 months ago   origin/new_autoscheduler                                       Patricia Suriana
1 year, 9 months ago   origin/srj-maxthreads                                          Steven Johnson
1 year, 10 months ago  origin/srj-cp                                                  Steven Johnson
1 year, 10 months ago  origin/srj-trace                                               Steven Johnson
1 year, 11 months ago  origin/autoschedule_top_down                                   Andrew Adams
1 year, 11 months ago  origin/srj-mod                                                 Steven Johnson
1 year, 11 months ago  origin/hexagon_le_runtime                                      Ron Lieberman
1 year, 11 months ago  origin/auto_sched_benchmarks                                   Patricia Suriana
1 year, 11 months ago  origin/srj-pygp                                                Steven Johnson
1 year, 11 months ago  origin/srj-g2                                                  Steven Johnson
2 years ago            origin/srj-assert                                              Steven Johnson
2 years ago            origin/export_all-wsmoses                                      William S. Moses
2 years ago            origin/print_schedule                                          Patricia Suriana
2 years, 1 month ago   origin/pr/2676                                                 Steven Johnson
2 years, 1 month ago   origin/line_buffer                                             Patricia Suriana
2 years, 1 month ago   origin/vulkan                                                  Z Stern
2 years, 1 month ago   origin/auto_sched_test_notparallel                             Z Stern
2 years, 2 months ago  origin/srj-appmake2                                            Steven Johnson
2 years, 2 months ago  origin/circ_buffer                                             Patricia Suriana
2 years, 2 months ago  origin/gemmlowp                                                Andrew Adams
2 years, 2 months ago  origin/add_outermost_to_extern                                 Andrew Adams
2 years, 2 months ago  origin/apps-benchmarks                                         Andrew Adams
2 years, 2 months ago  origin/fixed_point_local_laplac                                Andrew Adams
2 years, 2 months ago  origin/automate-hex-instructions                               Andrew Adams
2 years, 2 months ago  origin/buffer_device_api_target                                Andrew Adams
2 years, 2 months ago  origin/auto_sched_inline                                       Andrew Adams
2 years, 2 months ago  origin/extern_bugs                                             Andrew Adams
2 years, 2 months ago  origin/more_powerful_sliding                                   Andrew Adams
2 years, 2 months ago  origin/rdom_with_pure_vars                                     Andrew Adams
2 years, 2 months ago  origin/refactor_module                                         Andrew Adams
2 years, 2 months ago  origin/shallow                                                 Andrew Adams
2 years, 2 months ago  origin/transitive_wrapper                                      Andrew Adams
2 years, 2 months ago  origin/alina-strided-store                                     Andrew Adams
2 years, 2 months ago  origin/benchmarks                                              Andrew Adams
2 years, 2 months ago  origin/no_bounds_query_when_bounds_used                        Andrew Adams
2 years, 2 months ago  origin/bazel                                                   Steven Johnson
2 years, 2 months ago  origin/pr/2572                                                 Steven Johnson
2 years, 5 months ago  origin/sim_shlib_addr_print                                    Ron Lieberman
2 years, 7 months ago  origin/expr_auto_sched                                         Patricia Suriana
3 years ago            origin/hexagon_strided_pred_load                               Patricia Suriana
3 years ago            origin/balance_expressions                                     Pranav Bhandarkar
3 years, 2 months ago  origin/register_promotion                                      Andrew Adams
3 years, 7 months ago  origin/predicated_vector                                       Patricia Suriana
alexreinking commented 4 years ago

These tables were generated via:

git for-each-ref \
  --merged=master \
  --sort='-committerdate:iso8601' \
  --format='%(committerdate:relative)|%(refname:short)|%(committername)' \
  refs/remotes/ \
| column -s'|' -t

and (this one is ugly)

diff --new-line-format="" --unchanged-line-format="" \
  <(git for-each-ref \
      --sort='-committerdate:iso8601' \
      --format='%(committerdate:relative)|%(refname:short)|%(committername)' \
      refs/remotes/) \
  <(git for-each-ref \
      --merged=master \
      --sort='-committerdate:iso8601' \
      --format='%(committerdate:relative)|%(refname:short)|%(committername)' \
      refs/remotes/) \
| column -s'|' -t
abadams commented 4 years ago

I periodically go through mine and delete the defunct ones. Some of the older ones are ideas that never quite worked that I want to keep a human-readable name attached to for future reference.

alexreinking commented 4 years ago

I periodically go through mine and delete the defunct ones. Some of the older ones are ideas that never quite worked that I want to keep a human-readable name attached to for future reference.

What about the 100+ that have already been merged into master? Should we delete any/all of those?

abadams commented 4 years ago

I have been loathe to touch other peoples' branches. Is there a cost to having lots of branches, e.g. some task that it slows down? I've never had it impact me.

BachiLi commented 4 years ago

I'm fine with all the tzumao-branches being removed ; )

steven-johnson commented 4 years ago

What about the 100+ that have already been merged into master? Should we delete any/all of those?

I can't think of any good reason to keep them, but I'd prefer people clean up their own.

(I try to always delete my branches after merging; I wish GitHub would more proactively nudge people to do so.)

alexreinking commented 4 years ago

I have been loathe to touch other peoples' branches. Is there a cost to having lots of branches, e.g. some task that it slows down? I've never had it impact me.

I would argue there's a cognitive cost to looking through hundreds of branches that have already been merged in to master if you're trying to get a view of what's in flight.

As for the others: isn't clear at a glance which of these branches are still relevant. Has Halide changed so little in the last 2 years that picking up on origin/bazel would be more productive than starting from scratch? What about the register promotion branch that's three years old?

Are people treating any of the merged branches as release branches? They're not named like they could be, if so.

"I heard Halide had a new autoscheduler; that must be in the origin/new_autoscheduler branch!" Only it's actually in master now, was in standalone_autoscheduler, and new_autoscheduler hasn't been touched in 18 months.

It's more of an organizational issue than "oh this just takes a lot of disk space, makes clones slower" or something.

BachiLi commented 4 years ago

I removed all the branches I worked on that have been merged.