Skip to content

Commit

Permalink
Merge pull request #1230 from veg/develop
Browse files Browse the repository at this point in the history
2.5.19
  • Loading branch information
spond authored Oct 6, 2020
2 parents 5a06c9a + 545fb5e commit 7310a28
Show file tree
Hide file tree
Showing 54 changed files with 8,519 additions and 2,351 deletions.
27 changes: 17 additions & 10 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -137,7 +137,7 @@ set(DEFAULT_DEBUG_WARNING_FLAGS "-Wall -Wno-int-to-pointer-cast -Wno-conversion-


if(CMAKE_COMPILER_IS_GNUCC OR CMAKE_COMPILER_IS_GNUCXX)
execute_process(
execute_process(
COMMAND ${CMAKE_CXX_COMPILER} -dumpversion
OUTPUT_VARIABLE GCC_VERSION
)
Expand All @@ -147,16 +147,18 @@ if(CMAKE_COMPILER_IS_GNUCC OR CMAKE_COMPILER_IS_GNUCXX)
endif()

if(${GCC_VERSION} VERSION_LESS 6.0)
set(DEFAULT_COMPILE_FLAGS "-fsigned-char -O3 -std=gnu++14")
set(DEFAULT_COMPILE_FLAGS "-fsigned-char -O3 -std=gnu++14 ")
else(${GCC_VERSION} VERSION_LESS 6.0)
set(DEFAULT_COMPILE_FLAGS "-fsigned-char -O3 -std=c++14")
endif(${GCC_VERSION} VERSION_LESS 6.0)

#set(DEFAULT_COMPILE_FLAGS "${DEFAULT_COMPILE_FLAGS} -fopt-info")

if(NOAVX)
set(DEFAULT_COMPILE_FLAGS "${DEFAULT_COMPILE_FLAGS} -mno-avx")
if(NOSSE3)
set(DEFAULT_COMPILE_FLAGS "${DEFAULT_COMPILE_FLAGS} -mno-sse3")
else(NOSSE)
else(NOSSE3)
PCL_CHECK_FOR_SSE3()
if(${HAVE_SSE3_EXTENSIONS})
add_definitions (-D_SLKP_USE_SSE_INTRINSICS)
Expand Down Expand Up @@ -187,11 +189,12 @@ if(CMAKE_COMPILER_IS_GNUCC OR CMAKE_COMPILER_IS_GNUCXX)
endif(CMAKE_COMPILER_IS_GNUCC OR CMAKE_COMPILER_IS_GNUCXX)

if (CMAKE_CXX_COMPILER_ID MATCHES "Clang")
set(DEFAULT_COMPILE_FLAGS "-fsigned-char -O3")
#set(DEFAULT_COMPILE_FLAGS "-fsigned-char -O3 -fsave-optimization-record=yaml ")
set(DEFAULT_COMPILE_FLAGS "-fsigned-char -O3 ")
if(NOAVX)
if(NOSSE3)
set(DEFAULT_COMPILE_FLAGS "${DEFAULT_COMPILE_FLAGS} -mno-sse3")
else(NOSSE)
else(NOSSE3)
PCL_CHECK_FOR_SSE3()
if(${HAVE_SSE3_EXTENSIONS})
add_definitions (-D_SLKP_USE_SSE_INTRINSICS)
Expand Down Expand Up @@ -223,7 +226,8 @@ if (CMAKE_CXX_COMPILER_ID MATCHES "Clang")
)
endif (CMAKE_CXX_COMPILER_ID MATCHES "Clang")

set(DEFAULT_COMPILE_FLAGS "${DEFAULT_COMPILE_FLAGS} ")
#set(DEFAULT_COMPILE_FLAGS "${DEFAULT_COMPILE_FLAGS} -fopt-info -fopt-info-vec-missed")
set(DEFAULT_COMPILE_FLAGS "${DEFAULT_COMPILE_FLAGS}")
MESSAGE ("Set compiler flags to ${DEFAULT_COMPILE_FLAGS}")

if(NOT DEFINED DEFAULT_COMPILE_FLAGS)
Expand Down Expand Up @@ -407,11 +411,11 @@ if(${MPI_FOUND})
HYPHYMPI
PROPERTIES
if(${OPENMP_FOUND})
COMPILE_FLAGS "${DEFAULT_COMPILE_FLAGS} ${DEFAULT_WARNING_FLAGS} ${MPI_COMPILE_FLAGS} ${OpenMP_CXX_FLAGS}"
LINK_FLAGS "${DEFAULT_LINK_FLAGS} ${MPI_LINK_FLAGS} ${OpenMP_CXX_FLAGS}"
COMPILE_FLAGS "${DEFAULT_COMPILE_FLAGS} ${DEFAULT_WARNING_FLAGS} ${MPI_COMPILE_FLAGS} ${OpenMP_CXX_FLAGS} -g"
LINK_FLAGS "${DEFAULT_LINK_FLAGS} ${MPI_LINK_FLAGS} ${OpenMP_CXX_FLAGS} -g"
else(${OPENMP_FOUND})
COMPILE_FLAGS "${DEFAULT_COMPILE_FLAGS} ${DEFAULT_WARNING_FLAGS} ${MPI_COMPILE_FLAGS} "
LINK_FLAGS "${DEFAULT_LINK_FLAGS} ${MPI_LINK_FLAGS}"
COMPILE_FLAGS "${DEFAULT_COMPILE_FLAGS} ${DEFAULT_WARNING_FLAGS} ${MPI_COMPILE_FLAGS} -g"
LINK_FLAGS "${DEFAULT_LINK_FLAGS} ${MPI_LINK_FLAGS} -g"
endif(${OPENMP_FOUND})
)
endif(${MPI_FOUND})
Expand Down Expand Up @@ -568,6 +572,9 @@ makeLink(HYPHYMP hyphy hyphy)
add_test (NAME UNIT-TESTS COMMAND bash run_unit_tests.sh)
add_test (CODON HYPHYMP tests/hbltests/SimpleOptimizations/SmallCodon.bf)
add_test (PROTEIN HYPHYMP tests/hbltests/SimpleOptimizations/IntermediateProtein.bf)
add_test (MTCODON HYPHYMP tests/hbltests/libv3/mtDNA-code.wbf)
add_test (ALGAE HYPHYMP tests/hbltests/libv3/algae-mtDNA.wbf)
add_test (CILIATES HYPHYMP tests/hbltests/libv3/ciliate-code.wbf)
add_test (NAME SLAC COMMAND HYPHYMP tests/hbltests/libv3/SLAC.wbf)
add_test (NAME SLAC-PARTITIONED COMMAND HYPHYMP tests/hbltests/libv3/SLAC-partitioned.wbf)
add_test (NAME FEL COMMAND HYPHYMP tests/hbltests/libv3/FEL.wbf)
Expand Down
Loading

3 comments on commit 7310a28

@kjlevitz
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Performance Alert ⚠️

Possible performance regression was detected for benchmark 'Benchmark.js Benchmark'.
Benchmark result of this commit is worse than the previous benchmark result exceeding threshold 2.

Benchmark suite Current: 7310a28 Previous: 1c9c8c1 Ratio
IntermediateProtein.bf 5.986375010476157 secs/op (±1.760118%) null secs/op (±0.000000%) Infinity

This comment was automatically generated by workflow using github-action-benchmark.

CC: @klevitz

@kjlevitz
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Performance Alert ⚠️

Possible performance regression was detected for benchmark 'Benchmark.js Benchmark'.
Benchmark result of this commit is worse than the previous benchmark result exceeding threshold 2.

Benchmark suite Current: 7310a28 Previous: 1c9c8c1 Ratio
IntermediateProtein.bf 7.5451767457652705 secs/op (±0.976922%) null secs/op (±0.000000%) Infinity

This comment was automatically generated by workflow using github-action-benchmark.

CC: @klevitz

@kjlevitz
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Performance Alert is a false positive:
-The previous test of null secs/op is because the .bf file was edited at some point and failing to properly pass its own tests. This resulted in the benchmark recording a shorter/null time due to the .bf file erroring/failing to complete.
-With the latest test the .bf ran successfully which resulted in a non-zero time. This caused the comparison to compare 7.5 secs/op to 0 secs/op.

To address this I would recommend not editing the active production .wbf/.bf files that the benchmark references until they are known to pass.

If this issue presents in the future another fix is to remove 0 second job entries within the below table:
https://github.com/veg/hyphy/blob/gh-pages/dev/bench/data.js
Though, ideally, the test cases will be checked before running via the benchmark to avoid this problem in the future.

Please sign in to comment.