vsekhar/cloudtools — Issue #2: A better way to ship extension modules
Author: vsekhar
Created: 2012-01-18 20:22:54+00:00
State: open

Possibilities

* Send code into a compile job, store binary to be used in compute jobs in cloud.files
* Pros: Binary compiled only once, cloud.files can handle many reads, binary (possibly large) transferred only within cloud, compilation can dynamically link (smaller resulting file), binary tracks run-time environment, remote servers may compile faster
* Cons: Adds (possibly lengthy) remote compile step, need to send source code or access repository, possibly lots of command-line needed (git, scons, etc.), hard to make truly general, compile errors and/or debug gets difficult

* Compile locally and upload binary to cloud
* Pros: compile/debug cycle unchanged, one fewer remote call cycle, less scripting
* Cons: need to statically link everything (including libc, etc., [if even possible](http://www.trilithium.com/johan/2005/06/static-libstdc/ ), repeated upload of huge binary incurs transfer cost and time