This contains my bachelors thesis and associated tex files, code snippets and maybe more. Topic: Data Movement in Heterogeneous Memories with Intel Data Streaming Accelerator
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

37 lines
1.3 KiB

  1. cmake_minimum_required(VERSION 3.18)
  2. # set the project name
  3. project(QDPBench VERSION 0.1)
  4. # specify the C standard
  5. set(CMAKE_CXX_STANDARD 20)
  6. set(CMAKE_CXX_STANDARD_REQUIRED True)
  7. #set flags on need cross compile for sapphirerapids architecture
  8. set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -march=sapphirerapids")
  9. #set flags on need cross compile for skylake micro architecture
  10. #set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -march=skylake-avx512")
  11. #set flags on need cross compile for knights landing micro architecture (for debugging)
  12. #set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -mavx512f -mavx512cd -mavx512er -mavx512pf")
  13. #suppress selected! warnigs that are not very important to resolve. This is to keep the compileation output clean
  14. set(SUPPRESS_WARNINGS "-Wno-literal-suffix -Wno-volatile")
  15. set(DEBUG_FLAGS "-g3" "-ggdb")
  16. set(RELEASE_FLAGS "-O3")
  17. #set flags used for Release and Debug build type
  18. add_compile_options(
  19. "$<$<CONFIG:Release>:${RELEASE_FLAGS}>"
  20. "$<$<CONFIG:Debug>:${DEBUG_FLAGS}>"
  21. )
  22. # include directories
  23. include_directories(src/utils)
  24. # link libraries
  25. link_libraries(-lnuma -lpthread -l:libdml.a)
  26. # Add targets only below
  27. # specify build targets
  28. add_executable(QDPBench src/Benchmark.cpp)