[all-commits] [llvm/llvm-project] 439bef: [libc++] Refactor the sequence container benchmark...

Louis Dionne via All-commits all-commits at lists.llvm.org
Thu Jan 30 12:02:57 PST 2025


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 439bef9751e1769ccd5a7b4ca4127144912cacfc
      https://github.com/llvm/llvm-project/commit/439bef9751e1769ccd5a7b4ca4127144912cacfc
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2025-01-30 (Thu, 30 Jan 2025)

  Changed paths:
    M libcxx/test/benchmarks/GenerateInput.h
    R libcxx/test/benchmarks/Utilities.h
    M libcxx/test/benchmarks/algorithms/algorithms.partition_point.bench.cpp
    M libcxx/test/benchmarks/algorithms/lower_bound.bench.cpp
    M libcxx/test/benchmarks/algorithms/make_heap.bench.cpp
    M libcxx/test/benchmarks/algorithms/make_heap_then_sort_heap.bench.cpp
    M libcxx/test/benchmarks/algorithms/pop_heap.bench.cpp
    M libcxx/test/benchmarks/algorithms/pstl.stable_sort.bench.cpp
    M libcxx/test/benchmarks/algorithms/push_heap.bench.cpp
    M libcxx/test/benchmarks/algorithms/set_intersection.bench.cpp
    M libcxx/test/benchmarks/algorithms/sort.bench.cpp
    M libcxx/test/benchmarks/algorithms/sort_heap.bench.cpp
    M libcxx/test/benchmarks/algorithms/stable_sort.bench.cpp
    R libcxx/test/benchmarks/containers/ContainerBenchmarks.h
    A libcxx/test/benchmarks/containers/container_benchmarks.h
    M libcxx/test/benchmarks/containers/deque.bench.cpp
    A libcxx/test/benchmarks/containers/list.bench.cpp
    M libcxx/test/benchmarks/containers/string.bench.cpp
    A libcxx/test/benchmarks/containers/unordered_set.bench.cpp
    R libcxx/test/benchmarks/containers/unordered_set_operations.bench.cpp
    A libcxx/test/benchmarks/containers/vector.bench.cpp
    R libcxx/test/benchmarks/containers/vector_operations.bench.cpp
    M libcxx/test/benchmarks/filesystem.bench.cpp
    M libcxx/test/benchmarks/hash.bench.cpp
    M libcxx/test/benchmarks/variant_visit_1.bench.cpp
    M libcxx/test/benchmarks/variant_visit_2.bench.cpp
    M libcxx/test/benchmarks/variant_visit_3.bench.cpp

  Log Message:
  -----------
  [libc++] Refactor the sequence container benchmarks (#119763)

Rewrite the sequence container benchmarks to only rely on the actual
operations specified in SequenceContainer requirements and add
benchmarks for std::list, which is also considered a sequence container.

One of the major goals of this refactoring is also to make these
container benchmarks run faster so that they can be run more frequently.
The existing benchmarks have the significant problem that they take so
long to run that they must basically be run overnight. This patch
reduces the size of inputs such that the rewritten benchmarks each take
at most a minute to run.

This patch doesn't touch the string benchmarks, which were not using the
generic container benchmark functions previously.



To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications


More information about the All-commits mailing list