Browse Source

Add some initial memory tests

These can be executed using valgrind --tool=massif to get a rough idea of
memory behavior.  Valgrind massif using libc allocation primitives does
carry overhead that a proper pool allocator doesn't (they can be made
overhead free); but these numbers are still useful as guides.
pull/1225/head
Sami Vaarala 8 years ago
parent
commit
6789c3f9df
  1. 8
      tests/memory/test-function-expression-1.js
  2. 11
      tests/memory/test-function-expression-2.js
  3. 8
      tests/memory/test-plain-buffer-1.js
  4. 8
      tests/memory/test-uint8array-1.js

8
tests/memory/test-function-expression-1.js

@ -0,0 +1,8 @@
function test() {
var arr = [];
while (arr.length < 1e5) {
arr.push(function () {});
}
print(arr.length + ' anonymous functions created');
}
test();

11
tests/memory/test-function-expression-2.js

@ -0,0 +1,11 @@
function test() {
var arr = [];
var fn;
while (arr.length < 1e4) {
fn = function () {};
fn.prototype = null;
arr.push(fn);
}
print(arr.length + ' anonymous functions created');
}
test();

8
tests/memory/test-plain-buffer-1.js

@ -0,0 +1,8 @@
function test() {
var arr = [];
while (arr.length < 1e5) {
arr.push(Uint8Array.allocPlain(256));
}
print(arr.length + ' plain buffers created');
}
test();

8
tests/memory/test-uint8array-1.js

@ -0,0 +1,8 @@
function test() {
var arr = [];
while (arr.length < 1e5) {
arr.push(new Uint8Array(256));
}
print(arr.length + ' Uint8Arrays created');
}
test();
Loading…
Cancel
Save