Skip to content

Commit 4a15940

Browse files
committed
Use StableRNG
1 parent b847542 commit 4a15940

File tree

2 files changed

+9
-8
lines changed

2 files changed

+9
-8
lines changed

benchmarks/Project.toml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@ LogDensityProblems = "6fdf6af0-433a-55f7-b3ed-c6c6e0b8df7c"
1313
Mooncake = "da2b9cff-9c12-43a0-ae48-6db2b0edb7d6"
1414
PrettyTables = "08abe8d2-0d0c-5749-adfa-8a2ac140af0d"
1515
ReverseDiff = "37e2e3b7-166d-5795-8a7a-e32c996b4267"
16+
StableRNGs = "860ef19b-820b-49d6-a774-d7a799459cd3"
1617

1718
[compat]
1819
ADTypes = "1.14.0"

benchmarks/benchmarks.jl

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -5,20 +5,20 @@ Pkg.develop(; path=joinpath(@__DIR__, ".."))
55
using DynamicPPLBenchmarks: Models, make_suite, model_dimension
66
using BenchmarkTools: @benchmark, median, run
77
using PrettyTables: PrettyTables, ft_printf
8-
using Random: seed!
8+
using StableRNGs: StableRNG
99

10-
seed!(23)
10+
rng = StableRNG(23)
1111

1212
# Create DynamicPPL.Model instances to run benchmarks on.
13-
smorgasbord_instance = Models.smorgasbord(randn(100), randn(100))
13+
smorgasbord_instance = Models.smorgasbord(randn(rng, 100), randn(rng, 100))
1414
loop_univariate1k, multivariate1k = begin
15-
data_1k = randn(1_000)
15+
data_1k = randn(rng, 1_000)
1616
loop = Models.loop_univariate(length(data_1k)) | (; o=data_1k)
1717
multi = Models.multivariate(length(data_1k)) | (; o=data_1k)
1818
loop, multi
1919
end
2020
loop_univariate10k, multivariate10k = begin
21-
data_10k = randn(10_000)
21+
data_10k = randn(rng, 10_000)
2222
loop = Models.loop_univariate(length(data_10k)) | (; o=data_10k)
2323
multi = Models.multivariate(length(data_10k)) | (; o=data_10k)
2424
loop, multi
@@ -34,7 +34,7 @@ end
3434
chosen_combinations = [
3535
(
3636
"Simple assume observe",
37-
Models.simple_assume_observe(randn()),
37+
Models.simple_assume_observe(randn(rng)),
3838
:typed,
3939
:forwarddiff,
4040
false,
@@ -50,14 +50,14 @@ chosen_combinations = [
5050
("Loop univariate 10k", loop_univariate10k, :typed, :mooncake, true),
5151
("Multivariate 10k", multivariate10k, :typed, :mooncake, true),
5252
("Dynamic", Models.dynamic(), :typed, :mooncake, true),
53-
("Submodel", Models.parent(randn()), :typed, :mooncake, true),
53+
("Submodel", Models.parent(randn(rng)), :typed, :mooncake, true),
5454
("LDA", lda_instance, :typed, :reversediff, true),
5555
]
5656

5757
# Time running a model-like function that does not use DynamicPPL, as a reference point.
5858
# Eval timings will be relative to this.
5959
reference_time = begin
60-
obs = randn()
60+
obs = randn(rng)
6161
median(@benchmark Models.simple_assume_observe_non_model(obs)).time
6262
end
6363

0 commit comments

Comments
 (0)