aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Tests/Torture (unfollow)
Commit message (Collapse)AuthorFilesLines
2012-08-29Renaming existing 'torture' tests to 'performance' tests instead, since this ↵Justin Clark-Casey (justincc)3-533/+0
better matches what they really do. nant target name changes to test-perf instead of torture, to match test-stress still not run by default
2012-04-27Add regression test for teleporting an agent between separated regions on ↵Justin Clark-Casey (justincc)3-3/+3
the same simulator. This involves a large amount of change in test scene setup code to allow test scenes to share shared modules SetupScene is now an instance method that requires an instantiation of SceneHelpers, though other SceneHelpers methods are still static May split these out into separate classes in the future.
2012-03-20Move frame loop entirely within Scene.Update() for better future performance ↵Justin Clark-Casey (justincc)1-1/+1
analysis and stat accuracy. Update() now accepts a frames parameter which can control the number of frames updated. -1 will update until shutdown. The watchdog updating moves above the maintc recalculation for any required sleep since it should be accounted for within the frame.
2012-03-07minor: make NPC tests run in a given order, comment out log lines in mock ↵Justin Clark-Casey (justincc)3-9/+14
region data plugins, null out scene in script and npc torture tests, add other doc comments to torture tests
2012-03-07Stop individually deleting objects at the end of each ObjectTortureTest.Justin Clark-Casey (justincc)3-6/+14
We can now do this since the entire scene and all objects within it are now successfully gc'd at the end of these tests. This greatly improves the time taken to run each test (by reducing teardown time, not the time to actually do the test work that we're interested in). Slightly simplifies config read in Scene constructor to help facilitate this.
2012-02-15In ObjectTortureTests, run garbage collector on Teardown and run scene loop ↵Justin Clark-Casey (justincc)1-2/+19
update when scene objects have been deleted. At least on mono 2.6.4, running GC.Collect() is not guaranteed to force gc of all objects when run in the same method where those objects had references. Therefore, GC.Collect() is now being done in the per-script teardown of ObjectTortureTests. In addition, scene loop update is being run after garbage collection in order to clean out the viewer update list of scene objects in the SceneGraph. These measures mean that scene objects/parts are now garbage collected after a test run if deleted from the scene, resulting in a much better memory usage report (though probably still not very accurate). However, deletion takes a very long time - what's really needed is to find out now why the entire scene isn't being GC'd by this measure. This change hasn't yet been applied to the other stress tests.
2012-02-09Add NPC torture tests for 100, 1000 and 2000 create and delete NPC calls.Justin Clark-Casey (justincc)1-0/+185
2012-02-07Add start GC memory and end GC memory to object stress test printouts.Justin Clark-Casey (justincc)2-3/+15
This illustrates that references to Scene, SOG, etc. are not currently being released when a stress test ends (or at regression test end in general). This means even the current stress tests take much more memory than they need, a problem that will have to be addressed.
2012-02-07Add TestCompileAndStart100Scripts() torture test.Justin Clark-Casey (justincc)2-1/+158
2012-02-02Add stress tests for simple object add of 100 prim objects. Add time taken ↵Justin Clark-Casey (justincc)1-14/+37
to output (this is unreliable).
2012-01-31Add torture tests to test adding 10,000, 100,000 and 200,000 single prim ↵Justin Clark-Casey (justincc)1-0/+126
scene objects. These can be run using the "nant torture" target. They are not part of "nant test" due to their long-run future nature. Such tests are designed to do some testing of extreme situations and give some feedback on memory usage, etc. However, data can be inconsistent due to different machine circumstances and virtual machine actions. This area is under development.