Hide Ads
 Refresh   About   Tools 

PHP mt_rand() Randomosity Tester

TIMEOUT
+1,596,558 data
+1 +10 +100 +1K +10K +MAX
range: 1-10,000, data points: 1,596,559, groups: 92
High / Low / Range / Average
Frequency: 224 / 114 / 110 / 159.66
Rows: 344 / 1 / 343 / 108.70
Frequency
Rows
224
1
212
1
207
1
206
2
205
2
203
3
202
1
200
2
199
5
198
5
197
3
196
8
195
8
194
8
193
12
192
14
191
21
190
15
189
18
188
21
187
29
186
39
185
43
184
54
183
59
182
72
181
79
180
81
179
100
178
107
177
124
176
166
175
130
174
162
173
170
172
206
171
207
170
193
169
216
168
252
167
252
166
293
165
279
164
281
163
344
162
301
161
299
160
313
159
301
158
321
157
298
156
299
155
290
154
272
153
285
152
263
151
254
150
264
149
239
148
200
147
211
146
170
145
174
144
147
143
155
142
115
141
122
140
101
139
77
138
78
137
61
136
51
135
40
134
42
133
39
132
26
131
25
130
18
129
20
128
10
127
4
126
9
125
2
124
2
123
1
122
3
121
2
119
2
117
2
116
1
115
1
114
1

Test runs: 1,596,559Avg run : 0.000001 seconds Test time: 1.407429 seconds Data Save: 0.642727 seconds Test Tools: Restart test: Random range 1 to: 1 2 3 4 5 10 50 100 500 1K 5K 10K 50K 100K Random Generator Method: SQLite ORDER BY RANDOM() PHP rand() PHP mt_rand() PHP random_int() Back to top


About the Randomosity Tester

This page tests the frequency distribution and timing of random number generation via these methods:

Random number results are stored in a test table. The test table is defined as:

CREATE TABLE 'test' ( 'id' INTEGER PRIMARY KEY, 'frequency' INTEGER DEFAULT '0' );

The table is initialized by creating all rows with frequency = 0. The number of rows in the table is defined by the range setting. The current test is set to use range: 1 to 10,000.

For each random number chosen, the table is updated via:

UPDATE test SET frequency = frequency + 1 WHERE id = :random_number

For SQLite tests, results are individually generated via the SQL call:

SELECT id FROM test ORDER BY RANDOM() LIMIT 1;

Generate more random numbers by clicking a  +  number button to start a test run.

Each test run is limted to ~1.42 seconds.

A Frequency of Frequencies chart displays:

This site was created with Open Source software. Find out more on Github: randomosity-tester v0.2.2

Back to top


Hide Ads