Caching methods in the mpmath vary from place to place. Some are per-module (e.g. mpmath.libmp.gammazeta.bernoulli_cache), some per context (e.g. QuadratureRule's caches).
Some caches actually can be unbounded (see related issue #811). Especially in such cases we need some interface (e.g. a context method like clear_caches()) to free memory. More low-level caches (i.e. in libmp) probably shouldn't be unbounded.
This might depend on #683. With a more "light" and fluent context objects, that can be created/destroyed on demand - freeing memory isn't a problem.
Caching methods in the mpmath vary from place to place. Some are per-module (e.g.
mpmath.libmp.gammazeta.bernoulli_cache), some per context (e.g.QuadratureRule's caches).Some caches actually can be unbounded (see related issue #811). Especially in such cases we need some interface (e.g. a context method like
clear_caches()) to free memory. More low-level caches (i.e. inlibmp) probably shouldn't be unbounded.This might depend on #683. With a more "light" and fluent context objects, that can be created/destroyed on demand - freeing memory isn't a problem.