From a390f026b9b2eabc7eacd672f843276ac27c3bf1 Mon Sep 17 00:00:00 2001 From: Nate Cook Date: Wed, 23 Jul 2025 12:54:29 -0500 Subject: [PATCH] Add a diffing benchmark with large inputs (#83248) --- benchmark/single-source/Diffing.swift | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/benchmark/single-source/Diffing.swift b/benchmark/single-source/Diffing.swift index c84cd92f4ef..d6ee7991ea4 100644 --- a/benchmark/single-source/Diffing.swift +++ b/benchmark/single-source/Diffing.swift @@ -49,6 +49,11 @@ public let benchmarks = [ runFunction: { diff($0, from: unabridgedLorem, to: loremIpsum) }, tags: t, setUpFunction: { blackHole((unabridgedLorem, loremIpsum)) }), + BenchmarkInfo( + name: "Diffing.VeryLarge", + runFunction: { diff($0, from: bigUnabridgedLorem, to: bigLoremIpsum) }, + tags: t + [.skip], + setUpFunction: { blackHole((bigUnabridgedLorem, bigLoremIpsum)) }), ] let numbersAndSymbols = Array("0123456789`~!@#$%^&*()+=_-\"'?/<,>.\\{}'") @@ -59,6 +64,8 @@ let typingPangram = Array("The quick brown fox jumps over the lazy dog") let loremIpsum = Array("Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.") let unabridgedLorem = Array("Lorem ipsum, quia dolor sit amet consectetur adipisci[ng] velit, sed quia non-numquam [do] eius modi tempora inci[di]dunt, ut labore et dolore magnam aliqua.") let loremReversed = Array(loremIpsum.reversed()) +let bigLoremIpsum = Array(repeatElement(loremIpsum, count: 100).joined()) +let bigUnabridgedLorem = Array(repeatElement(unabridgedLorem, count: 100).joined()) @inline(never) func diff(_ n: Int, from older: [Character], to newer: [Character]) { if #available(macOS 10.15, iOS 13, tvOS 13, watchOS 6, *) {