Hi, We've started working on something along these lines as part of the CD pipeline framework. The idea is to compile and test the libmxnet.so (both statically and dynamically linked) for the different variants (cpu, gpu, mkl, etc.) then have the different mxnet frontends (python, Julia, scala, etc) just wrap around the library.
I've been on long term sick leave and haven't been able to move forward with this, although I have an open PR that kicks off this work: https://github.com/apache/incubator-mxnet/pull/15051 - I welcome everyone to take a look. It's the first of a series of PRs to automate the distribution of the python (pip and docker) packages. Instead of using maven, we have opted to use S3. But this decision can be revisited. We also want to distribute what we termed "runtime" docker images. Docker images containing the dynamically linked mxnet library and all of the runtime dependencies (examples: https://hub.docker.com/r/mxnet/runtime). This could facilitate the packaging and distribution of docker images for the different frontends. Cheers, Per On Wed., 3 Jul. 2019, 8:47 am Qing Lan, <[email protected]> wrote: > In that case, the answer is yes. The Scala package will be published in > one version with a variaty of backend package choices. User can easily > attach and detach different MXNet versions. However, the Scala package > cannot run without a backend. > > Another key advantage of this design will be a broader support on > different implementations such as Java Cpp. User will be able to implement > their customized MXNet frontend to use the native library. > > Thanks, > Qing > > ________________________________ > From: Sheng Zha <[email protected]> > Sent: Tuesday, July 2, 2019 22:14 > To: [email protected] > Subject: Re: [DISCUSS] Make MXNet deploy it's own distribution > > Does it mean that the scala binding of mxnet will be an independent > package that doesn’t directly depend on the native package, and user > projects need to declare dependency on both the scala binding and one of > the native packages? > > -sz > > > On Jul 2, 2019, at 5:50 PM, Frank Liu <[email protected]> wrote: > > > > Currently, MXNet were built along with different language bindings such > as > > Scala. > > > > The libmxnet.so files are bundled within scala jar package. > > > > It would be nice to distribute libmxnet.so library independently in > maven, > > and scala package can choose which native library to use. > > > > Here is the design document on cwiki: > > > https://cwiki.apache.org/confluence/display/MXNET/Make+MXNet+deploy+it%27s+own+distribution > > > > Thanks, > > > > Frank >
