@@ -7,23 +7,37 @@ CB_ADD_GBENCHMARK(ArrayExpressionTemplates ArrayExpressionTemplates.cpp)
77if (CLAD_ENABLE_ENZYME_BACKEND)
88 CB_ADD_GBENCHMARK(EnzymeCladComparison EnzymeCladComparison.cpp)
99endif (CLAD_ENABLE_ENZYME_BACKEND)
10+
11+ include (FetchContent)
12+ FetchContent_Declare(
13+ tapenade_kit
14+ GIT_REPOSITORY https://gitlab.inria.fr/tapenade/tapenade.git
15+
16+ # We use a commit hash from the 'develop' branch because
17+ # the 'disk offloading' feature is not yet available in the stable release of tapenade.
18+ GIT_TAG 6f8cb04a4168cac5f6242cdeb65f6816c413f4ee
19+
20+ GIT_SHALLOW TRUE
21+ GIT_PROGRESS TRUE
22+ )
23+ FetchContent_MakeAvailable(tapenade_kit)
24+
25+ # Build the support library for the stack from the fetched source
26+ add_library (tapenade_support STATIC ${tapenade_kit_SOURCE_DIR} /ADFirstAidKit/adStack.c)
27+ target_include_directories (tapenade_support PUBLIC ${tapenade_kit_SOURCE_DIR} /ADFirstAidKit)
28+
29+ target_compile_definitions (tapenade_support PRIVATE
30+ ADSTACK_MAX_SPACES=1
31+ ADSTACK_BLOCK_SIZE=4194304
32+ )
33+
1034CB_ADD_GBENCHMARK(VectorModeComparison VectorModeComparison.cpp)
11- CB_ADD_GBENCHMARK(MemoryComplexity MemoryComplexity.cpp)
35+ CB_ADD_GBENCHMARK(MemoryComplexity_tapenade MemoryComplexity.cpp)
1236CB_ADD_GBENCHMARK(Multithreading Multithreading.cpp)
13- CB_ADD_GBENCHMARK(Hessians Hessians.cpp)
14-
15- set (CLAD_BENCHMARK_DEPS clad)
16- get_property (_benchmark_names DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} PROPERTY TESTS)
1737
18- foreach (name ${_benchmark_names} )
19- get_test_property (${name} LABELS _labels)
20- if (_labels MATCHES ".*benchmark.*" )
21- get_test_property (${name} DEPENDS _deps)
22- list (APPEND CLAD_BENCHMARK_DEPS ${_deps} )
23- endif ()
24- endforeach ()
38+ target_link_libraries (MemoryComplexity_tapenade PRIVATE tapenade_support)
2539
2640add_custom_target (benchmark-clad COMMAND ${CMAKE_CTEST_COMMAND} -V
2741 DEPENDS ${CLAD_BENCHMARK_DEPS} WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR} )
2842
29- set_target_properties (benchmark-clad PROPERTIES FOLDER "Clad benchmarks" )
43+ set_target_properties (benchmark-clad PROPERTIES FOLDER "Clad benchmarks" )
0 commit comments