On Thu, 10 Oct 2013 13:17:50 -0300 Gustavo Sverzut Barbieri <barbi...@gmail.com> said:
> On Thu, Oct 10, 2013 at 10:34 AM, Carsten Haitzler <ras...@rasterman.com> > wrote: > > raster pushed a commit to branch master. > > > > http://git.enlightenment.org/core/efl.git/commit/?id=2c1c6b9335e38c6e52b06829a95d9b58d780c99e > > > > commit 2c1c6b9335e38c6e52b06829a95d9b58d780c99e > > Author: Carsten Haitzler (Rasterman) <ras...@rasterman.com> > > Date: Thu Oct 10 22:31:18 2013 +0900 > > > > ecore-con: make curl support entirely runtime loaded via eina_module > > > > this makes curl support a pure runtime-only thing. libcurl is loaded by > > eina_module (dlopen/dlsym) when curl is actually first needed (when a > > url connection/object is created). this means that ecore-con has no > > link or compile dependencies on curl, only runtime, AND this saves > > memory (due to curl inits using apparently a chunk of private pages). > > so this saves memory and moves the dependency to runtime (though still > > consider libcurl a dependency of efl - but like a binary executed, > > it's at runtime). > > excellent, next is to implement an alternative module that provides > the same API without curl, but just ecore primitives... that shouldn't > be that difficult. > > and this new lib should handle dynamic proxies correctly by means of libproxy. actually i was a bad boy. i didnt make it work on osx and windows. fixed now. at least in theory with some research... untested though... and yes - libproxy might be nice :) to be honest, this is JUST a memory optimization. apparently curl + deps generate a bunch of dirty pages private per process so spread this over a bunch of procs using efl and it adds up to several mb for apps not using the ecore_con_url api at all... :) this change above is based on the idea behind a patch i was given that actually had other problems (wrong libcurl major version, used dlopen directly thus needing dlopen link lines etc. but were not there). the idea is the same (dynamic load curl only when needed otherwise never even have it searched for at all or mapped), just done a bit more aggressively (on first time you use ecore_con_url vs on ecore_con_url init). -- ------------- Codito, ergo sum - "I code, therefore I am" -------------- The Rasterman (Carsten Haitzler) ras...@rasterman.com ------------------------------------------------------------------------------ October Webinars: Code for Performance Free Intel webinars can help you accelerate application performance. Explore tips for MPI, OpenMP, advanced profiling, and more. Get the most from the latest Intel processors and coprocessors. See abstracts and register > http://pubads.g.doubleclick.net/gampad/clk?id=60134071&iu=/4140/ostg.clktrk _______________________________________________ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel