Difference between revisions of "GSOC2009"

From Madagascar
Jump to: navigation, search
(Java API)
(Extending Python interface)
Line 23: Line 23:
  
 
==Extending Python interface==
 
==Extending Python interface==
* Current [[API#Python_interface|Python interface]] provides elementary operations with [[Format|RSF file]] objects, which represent multidimensional vectors. Extend the interface to allow for more operations.
+
* Current [[Guide_to_madagascar_API#Python_interface|Python interface]] provides elementary operations with [[Guide to RSF file format|RSF file]] objects, which represent multidimensional vectors. Extend the interface to allow for more operations.
 
* Investigate possible connection with [http://slim.eos.ubc.ca/SLIMpy/ SLIMpy].
 
* Investigate possible connection with [http://slim.eos.ubc.ca/SLIMpy/ SLIMpy].
  

Revision as of 04:22, 12 October 2008

Google Summer of Code is a program that offers student developers stipends to write code for various open source projects. Google will be working with several open source, free software, and technology-related groups to identify and fund several projects over a three month period.


Project Ideas

See also feature request tracker

Graphical User Interface

Java API

Extending Python interface

  • Current Python interface provides elementary operations with RSF file objects, which represent multidimensional vectors. Extend the interface to allow for more operations.
  • Investigate possible connection with SLIMpy.

Binary Packages

  • Generate binary packages to simplify installation on multiple platforms.
  • Given Madagascar's dependencies, and a standardized way of finding other package's dependencies come up with a way/apply a tool to determine the minimum number of packages that make a self-contained Linux distributions that runs Madagascar. Build such a distribution starting from an existing well-supported distribution. Build a virtual appliance from that distribution.

Geophysics / Numerical Analysis

  • Implement an optimal algorithm for parallel transposes of arrays with 4 or 5 dimensions, up to a few tens of terabytes in volume, on a multi-node Linux cluster
  • As a bonus, FFT one of the transposed dimensions
  • Implement a hardware-adaptive transpose algorithm for a 1-node, SMP machine of 8 nodes or more. Investigate speed of transfers, size of caches, memory arrangement, etc, and make it hardware-adaptive. Bonus for out-of-core capabilities.
  • Implement 3-D seismic data header storage using the fastest open-source database, then compare header I/O times with the classic approach of having a simple table. Which is the fastest way of implementing a large database knowing that the values it will hold are all bools, ints and floats?

Mentors

  • Sergey Fomel
  • Paul Sava
  • Nick Vlad