[svn:parrot] r47337 - branches/gc_massacre/examples/benchmarks
bacek at svn.parrot.org
bacek at svn.parrot.org
Thu Jun 3 12:07:35 UTC 2010
Author: bacek
Date: Thu Jun 3 12:07:35 2010
New Revision: 47337
URL: https://trac.parrot.org/parrot/changeset/47337
Log:
Add GC stress test for almost pure PMC allocator speed.
Added:
branches/gc_massacre/examples/benchmarks/stress_integers.pir
Added: branches/gc_massacre/examples/benchmarks/stress_integers.pir
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ branches/gc_massacre/examples/benchmarks/stress_integers.pir Thu Jun 3 12:07:35 2010 (r47337)
@@ -0,0 +1,45 @@
+# Copyright (C) 2010, Parrot Foundation.
+# $Id$
+
+=head1 NAME
+
+examples/benchmarks/stress_strings.pir - GC strings stress-testing
+
+=head1 SYNOPSIS
+
+ % time ./parrot examples/benchmarks/stress_strings.pir
+
+=head1 DESCRIPTION
+
+Create a lots of strings. Some of them are long-lived, most of them are short lived.
+
+Main purpose - test compact_pool performance.
+
+=cut
+
+.sub 'main' :main
+ .local pmc rsa # array of long lived strings.
+
+ .local int i
+
+ rsa = new ['ResizablePMCArray']
+ i = 0
+ loop:
+ $I0 = i % 10 # every 10th string is longlived
+ if $I0 goto inc_i
+ push rsa, i
+ $I0 = i % 1000
+ if $I0 goto inc_i
+ sweep 1
+ inc_i:
+ inc i
+ if i < 100000 goto loop
+
+.end
+
+
+# Local Variables:
+# mode: pir
+# fill-column: 100
+# End:
+# vim: expandtab shiftwidth=4 ft=pir:
More information about the parrot-commits
mailing list