Code center > Old Suggestions Awaiting Programming

Looking into memory snapshots

(1/3) > >>

PurpleYouko:
I have just started looking into the best way to implement memory snapshots.

There are three main approaches that I can see.

1) save the memory of the robots into the snapshot save file for offline use. This can either be added as part of the main snapshot file or added as a second complimentary file with just memories.

2) Online memory monitoring as an extension of the robot information panel. While it is already possible to see each of the robot's memory locations from the console, it takes a long time to check through them. A display could be set up to monitor all or a select few memory locations at each cycle of the sim.

3) A third approach could be to save the memory locations of one specific robot (as selected in the robot information panel) as a special kind of snapshot file. This will track ALL of the memory locations for the selected robot for as long as you like.

Personally I think 2 and/or 3 would work the best. I don't think 1 would be all that useful.

Thoughts please people?

Endy:
I think #2 mainly since I normally monitor the numbers cycle by cycle when testing complex code for stuff like MB repro or when a series of actions are required. A way to monitor the top numbers in the stack would also be helpful(it's possible to rig something up but I'd rather not have to).

Endy :)

Greven:
2 and 3 sounds good to me.

But what about the option to save only specific memory locations for all robots? Or was it abandoned?

Example:

You only what to look into memory location 201-207 and 509-512 (just picked out of the blue) over an entire run (x cycles)?

PurpleYouko:

--- Quote ---You only what to look into memory location 201-207 and 509-512 (just picked out of the blue) over an entire run (x cycles)?
--- End quote ---

 :blink:

That would be one [span style=\'font-size:14pt;line-height:100%\']HUGE[/span] file.

Even 10 memory locations saved for ALL bots (average of about 500) over 1,000,000 cycles would be a 5 GIGABYTE file.

That is why this option gives me headaches even thinking about it.

What I am thinking about is to have a recording function built into the console. It would allow for maybe 20-50 user definable memory locations to be constantly monitored, updated and displayed for each cycle for the selected robot.
A control could be set up to initialize a save file for this specific robot, then it could be saved to a file as well as monitored in the console for as long as you like. I would automatically include informational inputs like the eyes, shots hitting it and such like so that you can examine the file online and again offline afterward.

Greven:
Okay 5 GByte is a little to much, my brain is running low on nrg at the moment.  ;)

But still you should have the option. Make so you can choose at which rate it would save. At 1000 cycles/save is only 5 MegaByte!

Navigation

[0] Message Index

[#] Next page

Go to full version