1 / 21

Madagascar Installation

Madagascar Installation. Sergey Fomel University of Texas at Austin August 30, 2006 Vancouver, BC. This Presentation. Introductory remarks History Goals Design principles Installation and compilation Downloading Software construction with SCons File structure. Madagascar Story.

eryk
Download Presentation

Madagascar Installation

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. MadagascarInstallation Sergey Fomel University of Texas at Austin August 30, 2006 Vancouver, BC

  2. This Presentation • Introductory remarks • History • Goals • Design principles • Installation and compilation • Downloading • Software construction with SCons • File structure Vancouver School & Workshop

  3. Madagascar Story • Started in 2003 • Publicly open in June 2006 • Open-source http://rsf.sourceforge.net • Standing on SEPlib/SU shoulders • RSF (regularly sampled format) Vancouver School & Workshop

  4. Cumulative Downloads Registered at freshmeat.net Vancouver School announced Vancouver School & Workshop

  5. Vancouver School & Workshop

  6. Source Referral (August 2006) Vancouver School & Workshop

  7. Goal • To make our research* productive • To make technology transfer efficient *computational experiments Vancouver School & Workshop

  8. One Week Technology Transfer a b c Vancouver School & Workshop

  9. Madagascar Design Principles • Document computational experiments • Old experiments are regression tests • New experiments become unit tests Test Driven Development Vancouver School & Workshop

  10. This Presentation • Introductory remarks • History • Goal • Design principles • Installation and compilation • Downloading • Compiling with SCons • File structure Vancouver School & Workshop

  11. Downloading Madagascar • Stable version • madagascar-0.9.3 • SourceForge • Unstable (development) version • svn co https://svn.sourceforge.net/svnroot/rsf/trunk rsf • Update withsvn update • Commit withsvn commit(developers) • Browse at http://svn.sourceforge.net/viewvc/rsf/ • Subversion facilitates collaboration and version control Vancouver School & Workshop

  12. Cumulative Subversion Access Vancouver School & Workshop

  13. SCons (Software Construction) • “make” replacement • Built-in “autoconf/automake” functionality • Written in • Open-source http://www.scons.org • Used for compiling Madagascar • Used for managing processing flows SCons is an easier, more reliable and faster way to build software. Vancouver School & Workshop

  14. From Tim O’Reilly’s blog “O’Reilly Radar” Vancouver School & Workshop

  15. Installing from Source • Unpack • tar xvzf madagascar-0.9.3.tgz • Prerequisites • Install Python and SCons if necessary • Set environmental variables • Build • scons config (generates config.py) • scons install • http://rsf.sf.net/wiki/index.php/Installation $RSFROOT root of installation $PYTHONPATH add $RSFROOT/lib $DATAPATH home for binary files Vancouver School & Workshop

  16. madagascar-0.9.3/ Sconstruct config.py api/ book/ filt/ user/ pens/ plot/ python/ convenience Python scripts scons/ SCons sources $RSFROOT/ bin/ lib/ include/ doc/ figs/ Open Source created by scons install Vancouver School & Workshop

  17. Look Inside I • madagascar-0.9.3/ • Sconstruct top software construction • config.py created by scons config ENV = {'PATH': '/usr/local/bin:/bin:/usr/bin'} AR = 'ar' JPEG = 'jpeg' PPM = None CC = 'gcc' CCFLAGS = '-O2 -std=gnu99 -Wall -pedantic -DNO_COMPLEX' CPPPATH = [] LIBPATH = [] LIBS = ['m', 'rpc'] XLIBPATH = ['/usr/X11R6/lib'] XLIBS = ['Xaw', 'Xt', 'X11'] XINC = ['/usr/X11R6/include'] CXX = 'g++' Vancouver School & Workshop

  18. Look Inside II • api/ API tests C++/Fortran/MATLAB… • book/ reproducible research tests • gee/ book • ajt/ chapter/paper • SConstruct • paper.tex (LaTeX) • causint/ project • SConstruct • conv/ • … • hlx/ • … • bei/ • geo391/ • … from rsfproj import * Flow('data1',None,'spike n1=30 k1=15 label1=') Flow('data2','data1','causint') Flow('data3','data1','causint adj=y') Flow('data4',None, 'spike n1=30 nsp=2 k1=10,15 mag=1,-1 label1= ') Flow('data5','data4','causint') Flow('data6','data4','causint adj=y') Flow('data7','data5','causint') Vancouver School & Workshop

  19. Look Inside III • filt/ program sources arranged by subject • lib/ sources for rsf.h, librsf.a and API bindings • SConstruct • alloc.c • … • main/ most common data manipulation programs • SConstruct • add.c • … • proc/ “processing” • imag/ “imaging” • user/ program sources arranged by author • fomels/ • slim/ • … easily extensible Vancouver School & Workshop

  20. Look Inside IV • plot/ sources for Vplot generation • lib/ sources for rsfplot.h, librsfplot.a • SConstruct • axis.c • … • main/ RSF to Vplot • SConstruct • contour.c • … • test/ Vplot from source • pens/ sources for Vplot manipulation • main/ • SConstruct • pspen.c Vplot to PostScript • … • … Vancouver School & Workshop

  21. Lessons • Madagascar goal • To make our research productive • To make technology transfer efficient • Multiple levels • (Tuesday) implement – main modules, C • (Wednesday) test – projects, SCons/Python • (Thursday) communicate – papers, LaTeX • If you don’t like it, please voice your concerns. Wiki | Blog | Mailing list | Forums | Bug tracking | Feature requests Vancouver School & Workshop

More Related