Commit eef6e638 authored by Tim Zallmann's avatar Tim Zallmann

Merge branch 'maintenance/fast-mersenne-twister' into 'master'

Switch to 2x faster PRNG

See merge request gitlab-org/gitlab!50811
parents 5fa60a22 2a28ff9d
...@@ -11,7 +11,7 @@ ...@@ -11,7 +11,7 @@
* @typedef {String} UUIDv4 * @typedef {String} UUIDv4
*/ */
import MersenneTwister from 'mersenne-twister'; import { MersenneTwister } from 'fast-mersenne-twister';
import stringHash from 'string-hash'; import stringHash from 'string-hash';
import { isString } from 'lodash'; import { isString } from 'lodash';
import { v4 } from 'uuid'; import { v4 } from 'uuid';
...@@ -49,7 +49,7 @@ function randomValuesForUuid(prng) { ...@@ -49,7 +49,7 @@ function randomValuesForUuid(prng) {
const buffer = new ArrayBuffer(4); const buffer = new ArrayBuffer(4);
const view = new DataView(buffer); const view = new DataView(buffer);
view.setUint32(0, prng.random_int()); view.setUint32(0, prng.randomNumber());
randomValues.push(view.getUint8(0), view.getUint8(1), view.getUint8(2), view.getUint8(3)); randomValues.push(view.getUint8(0), view.getUint8(1), view.getUint8(2), view.getUint8(3));
} }
......
---
title: Switch to 2x faster PRNG
merge_request: 50811
author:
type: performance
...@@ -91,7 +91,7 @@ module.exports = (path) => { ...@@ -91,7 +91,7 @@ module.exports = (path) => {
'^.+\\.(md|zip|png)$': 'jest-raw-loader', '^.+\\.(md|zip|png)$': 'jest-raw-loader',
}, },
transformIgnorePatterns: [ transformIgnorePatterns: [
'node_modules/(?!(@gitlab/ui|bootstrap-vue|three|monaco-editor|monaco-yaml)/)', 'node_modules/(?!(@gitlab/ui|bootstrap-vue|three|monaco-editor|monaco-yaml|fast-mersenne-twister)/)',
], ],
timers: 'fake', timers: 'fake',
testEnvironment: '<rootDir>/spec/frontend/environment.js', testEnvironment: '<rootDir>/spec/frontend/environment.js',
......
...@@ -5009,6 +5009,11 @@ fast-levenshtein@~2.0.6: ...@@ -5009,6 +5009,11 @@ fast-levenshtein@~2.0.6:
resolved "https://registry.yarnpkg.com/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz#3d8a5c66883a16a30ca8643e851f19baa7797917" resolved "https://registry.yarnpkg.com/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz#3d8a5c66883a16a30ca8643e851f19baa7797917"
integrity sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc= integrity sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=
fast-mersenne-twister@1.0.2:
version "1.0.2"
resolved "https://registry.yarnpkg.com/fast-mersenne-twister/-/fast-mersenne-twister-1.0.2.tgz#5ead7caf3ace592a5789d11767732bd81cbaaa56"
integrity sha512-IaClPxsoBu3MxGpcURyjV8otT5Bj4ARoK0KBCJGnEVnD1A/qclL5eIeYiUuwG/WWJPxL1jlK61HTm2T6SBmvBQ==
fault@^1.0.2: fault@^1.0.2:
version "1.0.2" version "1.0.2"
resolved "https://registry.yarnpkg.com/fault/-/fault-1.0.2.tgz#c3d0fec202f172a3a4d414042ad2bb5e2a3ffbaa" resolved "https://registry.yarnpkg.com/fault/-/fault-1.0.2.tgz#c3d0fec202f172a3a4d414042ad2bb5e2a3ffbaa"
...@@ -8190,11 +8195,6 @@ mermaid@^8.5.2: ...@@ -8190,11 +8195,6 @@ mermaid@^8.5.2:
moment-mini "^2.22.1" moment-mini "^2.22.1"
scope-css "^1.2.1" scope-css "^1.2.1"
mersenne-twister@1.1.0:
version "1.1.0"
resolved "https://registry.yarnpkg.com/mersenne-twister/-/mersenne-twister-1.1.0.tgz#f916618ee43d7179efcf641bec4531eb9670978a"
integrity sha1-+RZhjuQ9cXnvz2Qb7EUx65Zwl4o=
methods@~1.1.2: methods@~1.1.2:
version "1.1.2" version "1.1.2"
resolved "https://registry.yarnpkg.com/methods/-/methods-1.1.2.tgz#5529a4d67654134edcc5266656835b0f851afcee" resolved "https://registry.yarnpkg.com/methods/-/methods-1.1.2.tgz#5529a4d67654134edcc5266656835b0f851afcee"
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment