Difference between revisions of "GSOC2009"

From Madagascar
Jump to navigation Jump to search
Line 29: Line 29:
 
* Investigate possible connections with [http://www.mines.edu/~dhale/jtk/ Mines JTK] and [http://sourceforge.net/projects/javaseis/ JavaSeis]
 
* Investigate possible connections with [http://www.mines.edu/~dhale/jtk/ Mines JTK] and [http://sourceforge.net/projects/javaseis/ JavaSeis]
  
==Seismic I/O Library==
+
==Seismic I/O Library (''Mentor: Bert Bril'')==
 
* See [[Seismic Library]]
 
* See [[Seismic Library]]
  

Revision as of 18:28, 5 March 2009

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 (Mentor: Sergey Fomel)

Data Visualization (Mentor: Vladimir Bashkardin)

  • Migrate 2D rendering OpenGL-based code from GSEGYView to Madagascar and create an interactive viewer with zooming/panning features.
  • Migrate 3D rendering GLSL-based code from GSEGYView to Madagascar and create a viewer with the support of pluggable shader programs.
  • Finish 3D rays viewer
  • Create a set of alternatives to sfgraph, sfgrey, sfcontour programs, that would use PLPLOT library instead of VPlot; also, create "pens", that could read from those programs and generate ps, pdf, png output; analyze flexibility of PLPLOT and the possibility to fully mimic VPlot's output (including animation).

Java API (Mentor: )

Seismic I/O Library (Mentor: Bert Bril)

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

  • Vladimir Bashkardin
  • Bert Bril
  • Sergey Fomel
  • Paul Sava
  • Nick Vlad