David Smith
4f363f72f1
Try to thwart the optimizer
2023-05-10 10:55:37 -07:00
David Smith
d5d97ad26e
Further benchmark scaling
2023-05-10 02:31:03 -07:00
David Smith
0ddc90b355
Further benchmark scaling
2023-05-10 01:25:38 -07:00
David Smith
71ed988d27
Scale benchmarks
2023-05-09 16:29:56 -07:00
David Smith
9b3bd5ed0a
register new benchmarks
2023-05-09 15:33:09 -07:00
David Smith
7d234d76ea
More build fixes
2023-05-09 13:50:41 -07:00
David Smith
6cb9e5cfdd
Build fixes
2023-05-09 11:27:04 -07:00
David Smith
78e406c376
Add a few basic smoke test benchmarks for the default RangeReplaceableCollection append methods
2023-05-09 09:41:44 -07:00
Egor Zhdan
d5f5d4bd55
[cxx-interop] Make CxxConvertibleToCollection.forEach public
...
This allows clients to iterate over a C++ container which doesn't provide random access with a `.forEach` call.
rdar://107995558
2023-04-18 14:43:43 +01:00
Valeriy Van
e99a45b15b
Reduce loop coefficient to 200
2023-03-02 09:57:57 +02:00
Valeriy Van
b79e1d5c31
Rename benchmark to fit into 40 characters limit
2023-03-02 09:55:25 +02:00
Valeriy Van
d947e10dd2
Put back getString call inside benchmarking loop
2023-03-01 09:14:32 +02:00
Valeriy Van
e59a74dd41
Get rid of helper function
2023-02-28 11:35:32 +02:00
Valeriy Van
da5be81857
Get rid of function used only once
2023-02-28 11:35:32 +02:00
Valeriy Van
eaecec1d2d
Fix indentation
2023-02-28 11:35:32 +02:00
Valeriy Van
a1488d661a
Fix header comment
2023-02-28 11:35:32 +02:00
Valeriy Van
2573eb37b7
Reduce count of benchmarks to 4
2023-02-28 11:35:32 +02:00
Valeriy Van
157397aa19
Fix misspelled Cyrillic
2023-02-28 11:35:32 +02:00
Valeriy Van
f18d76f98a
Fix compile error in StringRepeating benchmark
2023-02-28 11:35:32 +02:00
Valeriy Van
542c88d964
Update copyright to year 2023
...
Co-authored-by: Xiaodi Wu <13952+xwu@users.noreply.github.com >
2023-02-28 11:35:31 +02:00
Valeriy Van
dd22e6a43c
Removes slash from benchmrk name.
...
Slash in benchmark name makes benchmarks break.
2023-02-28 11:35:31 +02:00
Valeriy Van
bfb1e875af
Adds benchmark for String(repeating:count:)
2023-02-28 11:35:31 +02:00
eeckstein
9d5dd75314
Merge pull request #34435 from valeriyvan/StringDecodeUTF16Benchmark
...
Add benchmarks for UTF16 decoding
2023-02-23 18:02:44 +01:00
Valeriy Van
e0966d64ab
Add setUp func
2023-02-22 01:28:18 +02:00
Valeriy Van
bca183c505
Add test for 128 bytes buffer
2023-02-16 12:39:16 +02:00
Valeriy Van
a84516e152
Skip some benchmarks
2023-02-15 12:32:30 +02:00
Valeriy Van
daf2e5dac8
Move setup out of benchmark functions
2023-02-14 20:56:33 +02:00
Valeriy Van
4682d1e6c2
Reduce benchmark execution time
2023-02-14 16:43:51 +02:00
Valeriy Van
66f5634a5f
Rename test to follow convension
2023-02-14 16:21:42 +02:00
Valeriy Van
71e8288757
Fix compile error in benchmark/single-source/UTF16Decode.swift
2023-02-14 12:50:07 +02:00
Valeriy Van
5daec4f9fc
Apply suggestions from code review
...
Co-authored-by: Xiaodi Wu <13952+xwu@users.noreply.github.com >
2023-02-14 12:04:30 +02:00
Valeriy Van
fa6c038c92
Adds benchmarks for UTF16 decoding
2023-02-14 12:04:29 +02:00
Guillaume Lessard
183fc28b72
[benchmark] change a buffer length
...
- the intermediate length (15 bytes) didn’t show results significantly different from those produced by the short length benchmark (7 bytes).
2023-02-07 16:12:31 -08:00
Egor Zhdan
34c2b0e50d
[cxx-interop] Make String.init(std.string) unlabeled
...
`Swift.String` can be initialized from any other type with an unlabeled initializer, which is either going to use the `CustomStringConvertible` conformance, or reflection. We would like clients to use the most suitable initializer, which is the one that takes `std.string` as a parameter. For instance, that allows us to attach a doc comment to the initializer.
This change makes the initializer unlabeled to make sure it is chosed by overload resolution when a client invokes `String(myCxxString)`.
2023-02-02 12:47:08 +00:00
swift-ci
afe43a4699
Merge pull request #63106 from valeriyvan/Benchmark-UnsafeRawBufferPointer-first
...
[benchmark] Add benchmark for UnsafeMutableRawBufferPointer firstIndex(of:) and lastIndex(of:)
2023-01-31 21:34:52 -08:00
Valeriy Van
93c9a646a5
Leave only tests for buffer of length 7, 15 and 1000 bytes; Increase multiplier from 10 to 10000
2023-01-29 14:58:34 +02:00
Egor Zhdan
d288b16420
[cxx-interop] Add benchmark for conversion between C++ and Swift strings
2023-01-25 00:17:49 +00:00
Egor Zhdan
99c54addb3
Merge pull request #62648 from apple/egorzhdan/cxx-set-bench
...
[cxx-interop] Add benchmark for std::set conversion to a Swift collection
2023-01-24 23:45:21 +00:00
Egor Zhdan
f931de8948
[benchmark] Do not abort with TypeError if no memory measurements were taken
2023-01-23 13:34:17 +00:00
Valeriy Van
136baafa50
Add benchmark for UnsafeMutableRawBufferPointer firstIndex(of:) and lastIndex(of:)
2023-01-19 18:34:14 +02:00
Valeriy Van
a5b1082ba3
Suppress warnings in benchmark
...
warning: heterogeneous collection literal could only be inferred to '[Any]'; add explicit type annotation if this is intentional
2023-01-18 21:28:29 +02:00
Valeriy Van
12719bc896
Fix warning in benchmark
...
warning: 'assign(from:count:)' is deprecated: renamed to 'update(from:count:)'
2023-01-18 21:24:52 +02:00
Valeriy Van
37470915f5
Fix warnings in benchmarks
...
warning: tuple conversion from '(offset: Int, element: S.Element)' to '(index: Int, elem: S.Element)' mismatches labels
2023-01-18 21:23:16 +02:00
Valeriy Van
3fa1952abc
Fix warning in benchmark
...
warning: immutable value 'i' was never used; consider replacing with '_' or removing it
for i in 0...N {
^
2023-01-18 21:21:04 +02:00
Egor Zhdan
0da22a3420
[cxx-interop] Add benchmark for std::set conversion to a Swift collection
2023-01-16 16:18:07 +00:00
Karoy Lorentey
f56d44a492
[benchmark] Add a basic benchmark for Unicode._CharacterRecognizer
...
This measures the performance of the stdlib’s core grapheme breaking algorithm, without any `String` overhead.
2023-01-15 16:10:43 -08:00
Egor Zhdan
bd8cf0272c
[cxx-interop] Remove manual std::vector conformance in the benchmark
...
`std::vector::const_iterator` is now automatically conformed to `UnsafeCxxRandomAccessIterator`, and `std::vector` is conformed to `CxxRandomAccessCollection`.
The manually added conformances are now redundant.
2023-01-06 14:10:12 +00:00
Karoy Lorentey
2d9e9b28e9
Revert all changes to Benchmark_Driver
2022-12-30 16:47:48 -08:00
Karoy Lorentey
114d392540
[benchmark] StringDistance: Increase ASCII workload by an additional 10x
2022-12-29 17:15:49 -08:00
Karoy Lorentey
4565485876
[benchmark] Why oh why is this not written in Swift?
2022-12-29 17:12:49 -08:00