Opened 8 years ago

Last modified 8 years ago

#4384 new discussion

Memory management of pre values

Reported by: Lennart Ochel Owned by: Lennart Ochel
Priority: high Milestone: Future
Component: Run-time Version:
Keywords: c runtime Cc: Vitalij Ruge, Willi Braun

Description

In the c runtime, do we really need a separate copy of pre values or could we just use the ring buffer for this instead?
That would reduce the amount of redundant data and avoid coping pre values after each simulation step.

Any comments?

Change History (6)

comment:1 by Lennart Ochel, 8 years ago

Cc: Vitalij Ruge Willi Braun added

@vruge,wbraun What do you think?

comment:2 by Vitalij Ruge, 8 years ago

I don't like the idea, because we using the ring buffer for nonlinear systems and pre for other things. Mixing data structure make things mord complex. I don't want side effects/limits if I play with initial guess or something else in nonlinear solver, because it's would break pre-methods.

in reply to:  2 comment:3 by Lennart Ochel, 8 years ago

Replying to vitalij:

I don't like the idea, because we using the ring buffer for nonlinear systems and pre for other things.

So what do we store in the ring buffer for nonlinear systems? Aren't them the pre values, besides even older data?

comment:4 by Lennart Ochel, 8 years ago

@wbraun What do you think?

comment:5 by Willi Braun, 8 years ago

Well, the ringbuffer was originally introduced to avoid coping values for the extrapolation which is used for the non-linear loops. The pre-values are related to the event handling, so this are two different things, so you do not want to use pre-values for the extrapolation and also there is no advantage to use ringbuffer for the pre-values.

But actually we could get rid of the ringbuffer at all , since nowadays it's not really used for extrapolation anymore, it is now done inside of the non-linear loops.

comment:6 by Lennart Ochel, 8 years ago

I would like to remove all redundant data (if possible) to simplify the runtime. If the ring buffer is obsolete, then it should be removed.

Note: See TracTickets for help on using tickets.