Split up the filters benchmark tests

This should help catch regressions that only affect a single filter. It
also allows us to set up a partitioned test that has many small blocks.
It also fixes an issue we were seeing on the dashboard where the
contour benchmark was apparently running out of resources.
This commit is contained in:
Kenneth Moreland 2022-12-03 21:44:20 -07:00
parent 1f34e0eaa6
commit 7742df7556
2 changed files with 29 additions and 11 deletions

@ -499,8 +499,7 @@ void BenchContourGenerator(::benchmark::internal::Benchmark* bm)
helper(12); helper(12);
} }
// :TODO: Disabled until SIGSEGV in Countour when passings field is resolved VTKM_BENCHMARK_APPLY(BenchContour, BenchContourGenerator);
//VTKM_BENCHMARK_APPLY(BenchContour, BenchContourGenerator);
void BenchExternalFaces(::benchmark::State& state) void BenchExternalFaces(::benchmark::State& state)
{ {

@ -72,16 +72,35 @@ target_compile_definitions(BenchmarkDeviceAdapter PUBLIC VTKm_BENCHS_RANGE_UPPER
if(VTKm_ENABLE_PERFORMANCE_TESTING) if(VTKm_ENABLE_PERFORMANCE_TESTING)
include("${VTKm_SOURCE_DIR}/CMake/testing/VTKmPerformanceTest.cmake") include("${VTKm_SOURCE_DIR}/CMake/testing/VTKmPerformanceTest.cmake")
add_benchmark_test(BenchmarkFilters add_benchmark_test(BenchmarkFilters
FILTERS NAME BenchThreshold
BenchThreshold REGEX BenchThreshold
BenchContour/IsStructuredDataSet:1/NIsoVals:12/MergePts:1/GenNormals:0 )
BenchContour/IsStructuredDataSet:1/NIsoVals:12/MergePts:0/GenNormals:1/FastNormals:1 add_benchmark_test(BenchmarkFilters
BenchContour/IsStructuredDataSet:0/NIsoVals:12/MergePts:1/GenNormals:0 NAME BenchTetrahedralize
BenchContour/IsStructuredDataSet:0/NIsoVals:12/MergePts:0/GenNormals:/FastNormals:1 REGEX BenchTetrahedralize
BenchTetrahedralize )
BenchVertexClustering/NumDivs:256 add_benchmark_test(BenchmarkFilters
NAME BenchContour
REGEX
BenchContour/IsStructuredDataSet:1/NIsoVals:12/MergePts:1/GenNormals:0.*/MultiPartitioned:0
BenchContour/IsStructuredDataSet:1/NIsoVals:12/MergePts:0/GenNormals:1/FastNormals:1.*/MultiPartitioned:0
BenchContour/IsStructuredDataSet:0/NIsoVals:12/MergePts:1/GenNormals:0.*/MultiPartitioned:0
BenchContour/IsStructuredDataSet:0/NIsoVals:12/MergePts:0/GenNormals:1/FastNormals:1.*/MultiPartitioned:0
)
add_benchmark_test(BenchmarkFilters
NAME BenchContourPartitioned
ARGS --wavelet-dim=32 --num-partitions=128
REGEX
BenchContour/IsStructuredDataSet:1/NIsoVals:12/MergePts:1/GenNormals:0.*/MultiPartitioned:1
BenchContour/IsStructuredDataSet:1/NIsoVals:12/MergePts:0/GenNormals:1/FastNormals:1.*/MultiPartitioned:1
BenchContour/IsStructuredDataSet:0/NIsoVals:12/MergePts:1/GenNormals:0.*/MultiPartitioned:1
BenchContour/IsStructuredDataSet:0/NIsoVals:12/MergePts:0/GenNormals:1/FastNormals:1.*/MultiPartitioned:1
)
add_benchmark_test(BenchmarkFilters
NAME BenchVertexClustering
REGEX BenchVertexClustering/NumDivs:256
) )
if(TARGET vtkm_rendering) if(TARGET vtkm_rendering)
add_benchmark_test(BenchmarkInSitu FILTERS "BenchContour") add_benchmark_test(BenchmarkInSitu REGEX "BenchContour")
endif() endif()
endif() endif()