Skip to content

Commit 729da5b

Browse files
authored
Add some performance measurement blocks for RNGs. (tensorflow#15)
1 parent b4cfae8 commit 729da5b

File tree

1 file changed

+29
-0
lines changed

1 file changed

+29
-0
lines changed

Tests/DeepLearningTests/PRNGTests.swift

Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -54,6 +54,15 @@ final class PRNGTests: XCTestCase {
5454
}
5555
XCTAssertEqual(rng2.next(), 0x370b1c1fe655916d)
5656
}
57+
// Performance test.
58+
do {
59+
var arc4 = ARC4RandomNumberGenerator(seed: 971626482267121)
60+
measure {
61+
for _ in 0..<1000 {
62+
_ = arc4.next()
63+
}
64+
}
65+
}
5766
}
5867

5968
func testUniformDistribution() {
@@ -179,6 +188,16 @@ final class PRNGTests: XCTestCase {
179188
XCTAssertEqual(generator.next(), 54584659268457468)
180189
XCTAssertEqual(generator.next(), 4068621515934625604)
181190
XCTAssertEqual(generator.next(), 10604176710283101491)
191+
192+
// Performance test.
193+
do {
194+
var philox = PhiloxRandomNumberGenerator(uint64Seed: 971626482267121)
195+
measure {
196+
for _ in 0..<1000 {
197+
_ = philox.next()
198+
}
199+
}
200+
}
182201
}
183202

184203
func testPhilox() {
@@ -204,6 +223,16 @@ final class PRNGTests: XCTestCase {
204223
XCTAssertEqual(generator.next(), 15780739321597004611)
205224
XCTAssertEqual(generator.next(), 1610199061186607604)
206225
XCTAssertEqual(generator.next(), 5793355800212150215)
226+
227+
// Performance test.
228+
do {
229+
var threefry = ThreefryRandomNumberGenerator(uint64Seed: 971626482267121)
230+
measure {
231+
for _ in 0..<1000 {
232+
_ = threefry.next()
233+
}
234+
}
235+
}
207236
}
208237

209238
static var allTests = [

0 commit comments

Comments
 (0)