Presentation is loading. Please wait.

Presentation is loading. Please wait.

INFOMR Project Dafne van Kuppevelt ● Vikram Doshi ● Seçkin Savaşçı Development Review.

Similar presentations


Presentation on theme: "INFOMR Project Dafne van Kuppevelt ● Vikram Doshi ● Seçkin Savaşçı Development Review."— Presentation transcript:

1 INFOMR Project Dafne van Kuppevelt ● Vikram Doshi ● Seçkin Savaşçı Development Review

2 Heat Kernel Signature

3 Before Development C#  develop faster  use.NET framework’s abilities  our experience on C# and other similar languages(java) x86 architecture Visual Studio IDE Google Code for project hosting  Easy to start  Complete package for project management  Support git, svn & mercurial  http://code.google.com/p/infomr-group-x/ http://code.google.com/p/infomr-group-x/

4 Initial Parsing Getting Laplacian Matrices form Off Files L = D – A  Storage Problem 30 3 0 0 3 0 3 4 1 01 101 1111 45000 2 * 32 = 7.54 GB 45000*44999/2*1= 120 MB  ~64X Compression  Computational Overhead

5 Initial Parsing  Storage Problem( continued) Human Readable Matrix FileSerialization to Files Able to use in different language implementations Language Specific Storage Inefficient (string conversion, whitespaces, line feeds) Storage Efficient Own parsing methodDeserialize and use!  Time Problem Human Readable - IntegerSerialization – Bitwise ~2 hours~2 mins Larger files cannot be parsedAll can be parsed

6 Initial Parsing Getting Eigen Values & Vectors from Laplacian Matrices We tried to implement our own eigen decomposer  FAILED We started to search for a suitable library  Our needs were: - Structure for storing sparse symmetric matrices - Eigen decomposer method that is specialized for sparse symmetric matrices  partially FAILED  We switched to trial & error for finding a good library, our goal was now speed and good memory usage.

7 Initial Parsing librarySpecStatusTimeMemory Math.NETC# x86 Seq LAPACKxGPL20+ minsAverage DotNumericsC# x86 Seq LAPACK portxGPL2 minsAverage CenterSpaceC# x86 Seq LAPACK$129530+ minsGood EigenC++ x86 Seq UNIQUExGPL2 hoursGood Experiment results with 2000 vertex model : DotNumerics  Structure for storing Symmetric matrices  Eigen Decomposer for Symmetric matrices  ~40 largest models are out of project scope due to time and memory problems

8 Initial Parsing Time and Memory Problems Largest model will take more than 250 hours to parse For the largest model we must have ~16 GB memory space because DotNumerics use Double precision for storing values Overview of running on current architecture (x86):  2GB process dedicated memory  /largeaddressaware 3 GB  We cannot make injections due to LAPACK calls It is impossible to reach beyond 3 GB address space on x86, theoretically 4 GB Curious Cat?

9 Initial Parsing Prototype FromTo Archx86x64 Virtual address space3 GB8 TB Virtual Memory4 GB20 GB LanguageC#C++ LibraryDotNumericsArmadillo(xGPL, tweaked for x64) Base libraryLAPACKIntel MKL Parallel ( $129) Other Library-Boost Parallel, Used CPUsNo, 1Yes, 2 Optimization for Intel CPUNoYes Other Memory Improvements-Memory Mapped File Result : Eigen Decomposition time for 2000 vertex model? Guess?

10 Initial Parsing Model Vertex CountTimeMemory 200010 secondsSuperb Largest one (45000)2 days ( Due to my 3GB main memory and memory mapped files, Disk I/O times become significant ; average 10 times slower for the best access) Very bad because of memory mapping Prototype Results  We didn’t change to develop on this prototype, because : Parsing the largest one is still infeasible Not all of us have x64 architecture

11

12


Download ppt "INFOMR Project Dafne van Kuppevelt ● Vikram Doshi ● Seçkin Savaşçı Development Review."

Similar presentations


Ads by Google