{"push_id":2768594508,"size":8,"distinct_size":8,"ref":"refs/heads/master","head":"a25c9a4f529eb34c924d546988552af6b15a25a6","before":"0b2953a436eead1c53b987b8e42be84b901e4768","commits":[{"sha":"7e6ca710f5ec8d21411794907e39e5417281d200","author":{"name":"Nicolas Boumal","email":"d4e4d7c9a2e711997eee68c4b0448ca133a375b3@gmail.com"},"message":"Core changes to StoreDB. Essentially two changes: (1) purge() now purges based on latest access time (access = read or write) rather than latest write time. (2) added functions remove() and removefirstifdifferent(), which makes it possible for solvers and line search algorithms to tell the storedb when a certain store is no longer relevant. For solvers that use the new remove() capabilities, purge() and storedepth have now very little importance. Furthermore, access is now more protected, with warnings issued if improper keys are accessed; this should make it easier to debug new solvers.","distinct":true,"url":"https://api.github.com/repos/NicolasBoumal/manopt/commits/7e6ca710f5ec8d21411794907e39e5417281d200"},{"sha":"b143a3035b658e965fdd4aa7d89b800f1d26e496","author":{"name":"Nicolas Boumal","email":"d4e4d7c9a2e711997eee68c4b0448ca133a375b3@gmail.com"},"message":"Differential checking tools now use storedb.remove() to avoid cache build up","distinct":true,"url":"https://api.github.com/repos/NicolasBoumal/manopt/commits/b143a3035b658e965fdd4aa7d89b800f1d26e496"},{"sha":"4cfba345d35e906e99fa9cbf3d2c3815ddfcc0a5","author":{"name":"Nicolas Boumal","email":"d4e4d7c9a2e711997eee68c4b0448ca133a375b3@gmail.com"},"message":"The value of the cost function is now always cached. This leads to significant speed-ups in algorithms which use a line-search that evaluates the cost function (steepestdescent, conjugategradient, barzilaiborwein, rlbfgs included.)","distinct":true,"url":"https://api.github.com/repos/NicolasBoumal/manopt/commits/4cfba345d35e906e99fa9cbf3d2c3815ddfcc0a5"},{"sha":"1e1200ba4270f67524ea4b21b4a7a7e05d044442","author":{"name":"Nicolas Boumal","email":"d4e4d7c9a2e711997eee68c4b0448ca133a375b3@gmail.com"},"message":"Caught a potential bug in the way the store is handled with automatic caching in Euclidean gradient computation (this did not appear in any release: it was created a few days ago.)","distinct":true,"url":"https://api.github.com/repos/NicolasBoumal/manopt/commits/1e1200ba4270f67524ea4b21b4a7a7e05d044442"},{"sha":"e98b46d6208d4ef601c88fa541f9ce7c35268b4e","author":{"name":"Nicolas Boumal","email":"d4e4d7c9a2e711997eee68c4b0448ca133a375b3@gmail.com"},"message":"Enriched the example to exploit the caching features (as one more example of how that works) and to compare 3 algorithms. (Should modify it to compare an arbitrary number of algorithms.) Also fixed the random number generator to ease comparisons. This is quite useful when working on the caching system. Also registering functiontime now, which is a double, to show how that works (rather than having a comment about it.)","distinct":true,"url":"https://api.github.com/repos/NicolasBoumal/manopt/commits/e98b46d6208d4ef601c88fa541f9ce7c35268b4e"},{"sha":"a230af2f5011644bdae02188d2da5d2092ffa559","author":{"name":"Nicolas Boumal","email":"d4e4d7c9a2e711997eee68c4b0448ca133a375b3@gmail.com"},"message":"Line-search algorithms now use storedb.remove() to inform the caching system when points are no longer relevant. This means these line-search algortihms now use at most one extra store, instead of \"as many as the number of line-search iterations\" before. For high dimensional problems where the user does a lot of caching upon cost function evaluation, this can be significant.","distinct":true,"url":"https://api.github.com/repos/NicolasBoumal/manopt/commits/a230af2f5011644bdae02188d2da5d2092ffa559"},{"sha":"5feda1f3b397c68f62ef212bc8f73615a28fc7a4","author":{"name":"Nicolas Boumal","email":"d4e4d7c9a2e711997eee68c4b0448ca133a375b3@gmail.com"},"message":"All these solvers now use the new storedb.remove() functionalities. As a result, they also need much less depth in the storedb, so the default value for storedepth has been much reduced.","distinct":true,"url":"https://api.github.com/repos/NicolasBoumal/manopt/commits/5feda1f3b397c68f62ef212bc8f73615a28fc7a4"},{"sha":"a25c9a4f529eb34c924d546988552af6b15a25a6","author":{"name":"Nicolas Boumal","email":"d4e4d7c9a2e711997eee68c4b0448ca133a375b3@gmail.com"},"message":"Trust-regions now also uses storedb.remove(), selectively based on accept/reject","distinct":true,"url":"https://api.github.com/repos/NicolasBoumal/manopt/commits/a25c9a4f529eb34c924d546988552af6b15a25a6"}]}
{"actor":{"display_login":"NicolasBoumal"}}