Commit Graph

76 Commits

Author SHA1 Message Date
Michael Gottesman
83ae78727d [benchmark][cmake] Implement IS_SWIFT_BUILD correctly and rename it to SWIFT_BENCHMARK_BUILT_STANDALONE. 2017-09-24 22:53:50 -07:00
Andrew Trick
cc1165fc43 Benchmark cmake: DriverUtils will depend on TestsUtils. 2017-09-22 12:49:59 -07:00
Andrew Trick
e53451a98b cmake: Benchmarks need to build as a separate project (out-of-tree). 2017-09-22 12:49:59 -07:00
Erik Eckstein
db21063afa Reverting benchmark cmake changes. They break out-of-tree benchmark builds, which is used by some bots
Revert "Refactor out the creation of the benchmark libraries into a helper routine swift_benchmark_library. Initially just use it for DriverUtils."

This reverts commit ac539730e4. (+3 squashed commits)
Squashed commits:
[755f057] Revert "[benchmark][cmake] Refactor the swift benchmark helper libraries to use swift_benchmark_library."

This reverts commit a82945e033.
[58e09c6] Revert "[benchmark][cmake] "swift_benchmark_library" => "add_swift_benchmark_library"."

This reverts commit 0e4b7b69cd.
[5f5f2c1] Revert "[benchmark][cmake] Fix typo. This is NFC since this option is usually disabled."

This reverts commit 30f4b1b3e5.
2017-09-21 17:34:04 -07:00
Michael Gottesman
30f4b1b3e5 [benchmark][cmake] Fix typo. This is NFC since this option is usually disabled. 2017-09-20 17:25:47 -07:00
Michael Gottesman
0e4b7b69cd [benchmark][cmake] "swift_benchmark_library" => "add_swift_benchmark_library".
This matches the names used in the rest of our cmake.

rdar://34556274
2017-09-20 17:25:47 -07:00
Michael Gottesman
a82945e033 [benchmark][cmake] Refactor the swift benchmark helper libraries to use swift_benchmark_library.
rdar://34556274
2017-09-20 17:25:42 -07:00
Michael Gottesman
ac539730e4 Refactor out the creation of the benchmark libraries into a helper routine swift_benchmark_library. Initially just use it for DriverUtils.
This will allow for per-benchmark flags to be added.

rdar://34556274
2017-09-20 16:36:48 -07:00
Dave Abrahams
7f9380d098 Remove bogus options from benchmark build
This option is misleading, and never should have been there in the first place.  Fortunately it was having no effect because the standard library is already compiled to SIL and the internal checks have been eliminated from any benchmark build.
2017-05-30 11:18:41 -07:00
Ted Kremenek
3fb6e71411 Force the benchmark suite to build with -swift-version 3.
Some of the benchmarks use Swift 3 APIs.  Let’s keep them building that
way to not perturb benchmark numbers.

We should consider adding benchmarks that specifically enable -swift-version 4.
2017-04-21 17:25:45 -07:00
Doug Coleman
e7390d1770 Revert "utils: Add swiftenvs, which allow the overriding of compiler tools."
This reverts commit 2b923f3846.
2017-03-22 20:09:34 -07:00
Doug Coleman
9880f65767 Revert "cmake: Ensure that CMAKE_CODESIGN is set instead of trying to run empty"
This reverts commit f3b7485369.
2017-03-22 20:09:34 -07:00
Doug Coleman
f3b7485369 cmake: Ensure that CMAKE_CODESIGN is set instead of trying to run empty
commands.
2017-03-21 21:13:12 -07:00
Doug Coleman
2b923f3846 utils: Add swiftenvs, which allow the overriding of compiler tools. 2017-03-21 14:59:12 -07:00
Erik Eckstein
bafeb39bdb cmake: make benchmarks compilable without -wmo
This only affects benchmark builds for which -whole-module-optimization is removed from BENCHOPTS in benchmark/CMakeLists.txt
2016-10-20 14:27:00 -07:00
Michael Gottesman
6fd9dca2e6 [benchmark] Allow the number of test samples cmake will use to be specified from the command line.
The benchmark bot uses this functionality today to run the benchmarks. By
default build-script only uses 3 samples for each test. Given the noise on our
systems, this is definitely not sufficient for any sort of robust numbers.

Using this patch, I am going to change the benchmarking bot to take the minimum
of 20 samples as we do for our internal benchmarking. This should help make the
benchmark bot give better data. This will have as a cost cause the bot to take
more time. The testing time issue can be solved down the line by changing to a
protocol where we first do tests with a small number of samples (< 5). Then any
benchmark with a delta > 5% is rerun with 20 samples or perhaps until a
statistical criterion is satisfied. But until that is implemented, this at least
makes the bot useful.

There are other things that need to be changed on the benchmarking bot as well,
namely that it should build on a separate machine from which it is running the
benchmarks on. The benchmarking machine should be quiet and not have any work
being done on it. But that is also for another time.
2016-09-23 20:05:10 -07:00
Luke Larson
c60add3668 Stop ad-hoc signing stdlib dylibs for benchmarks
rdar://problem/27619856
2016-08-03 14:11:11 -07:00
Dmitri Gribenko
4329ebefd8 CMake: remove an unused variable 2016-05-30 19:34:29 -07:00
Arnold Schwaighofer
1d2643b93f Support performance testing with automatic bridging disabled. 2016-03-29 15:14:36 -07:00
Arnold Schwaighofer
4492e589e5 [benchmarks] ARC is not the default like I assumed
We are hence leaking ...
2016-03-18 12:01:49 -07:00
Arnold Schwaighofer
50c048d7e9 Add ObjectiveC bridging stub test support
This allows for testing the autogenerated bridging stub code.
2016-03-17 13:42:36 -07:00
Michael Gottesman
8d5a08cedd [perftest][cmake] Standardize on using ${source} instead of ${srcdir}/${module_name_path}.swift.
This is an intermediate commit in a series of commits towards being able to
build the perf test suite from *.sib files.

Doing so will enable us to:

1. Stress the serialization pipeline.
2. Provide an interesting test case for verifying that executables compiled
from *.sib yield the same object files as if we compiled directly to *.o files.

Keep in mind this is a longer term effort that I am doing on the side.
2016-02-26 16:28:28 -08:00
Luke Larson
d4ece4b4d0 [benchmark] Correctly depend on stdlib targets 2016-02-15 17:22:07 -08:00
Luke Larson
2c62011276 [benchmark] Don't hard code directory structure 2016-02-09 15:21:05 -08:00
Michael Gottesman
8093134b8f [perf-test] [cmake] Refactor out arch/optset specific code from swift_benchmark_compile into swift_benchmark_compile_archopts. 2016-02-08 15:07:12 -08:00
Michael Gottesman
c01c70342d [perf-test] [cmake] Rename add-swift-benchmark-suite.cmake => AddSwiftBenchmarkSuite.cmake to match the current naming scheme of cmake modules in swift/llvm. 2016-02-08 14:45:59 -08:00