[Mondrian] Parallelization of MDX queries in mondrian using OpenCL

Julian Hyde jhyde at pentaho.com
Sun Apr 10 18:11:22 EDT 2011


There are class diagrams in the online javadoc:
 
http://mondrian.pentaho.com/api/overview-summary.html
 
While class diagrams undoubtedly help in understanding the code, they don't
help much in finding hotspots. To find hotspots, do profiling using a
realistic benchmark. Even easier, run the benchmark and issue 'kill -QUIT
<pid>' signals to the process to cause Java to print a stack dump. Whever
the code is, that's likely to be your hotspot.
 
Mondrian is ROLAP. We intentionally do as much work as possible in the
database. We reason that a good database is written in C or C++, well tuned,
and parallelizable/scalable. 
 
If you are looking for a DBMS to work with, consider LucidDB, and open
source database. We have worked closely with them in the past (in fact, I am
a committer). Mondrian performs extremely well on LucidDB, but LucidDB could
nevertheless benefit from novel evaluation strategies.
 
Julian
 


  _____  

From: mondrian-bounces at pentaho.org [mailto:mondrian-bounces at pentaho.org] On
Behalf Of Abhishek Sharma
Sent: Friday, April 08, 2011 10:25 PM
To: Luc Boudreau
Cc: Mondrian developer mailing list
Subject: Re: [Mondrian] Parallelization of MDX queries in mondrian using
OpenCL


Hello everyone, 

Previously I was discussing about introducing parallelism into Mondrian code
specifically GPGPU computing. Sorry but I lost touch to the community for a
while coz of some personal work. I have a question. When I went through
Mondrian's documentation I found out that most of the work of *backend* is
carried out by database manager itself rather mondrian. And to be precise
GPGPU computing can only scale up calculations. So is there  calculation
based code in Mondrian as well?? Also when I was going through the API
documentation it was pretty hard to locate as in which class might be using
which smaller or fundamental class for its functionalities. Because for
parallelization we need to find out the "hotspots" of code where most of the
processing takes place and then there is one more question that whether that
hotspot has calculations in it. So those calculations can be carried out
parallely (if possible, some codes just can't be parallelized without
changing design!!!). So locating out hotspot can crucial areas can be made
easier if we have a "class diagram", so is there any such class diagram
which I may refer to.

I would like to ask the senior developers of mondrian about the above
mentioned state. If mondrian's code in itself involves no or less
calculations then I might have to target underlying RDBMS to make things
faster. Although I believe that since there is caching of data involved then
there must be some calculations going on in mondrian as well. So please
guide me about this. 



-- 
Abhishek Sharma 
B-Tech Information Technology
Indian Institute of Information Technology Allahabad

On Sun, Mar 6, 2011 at 12:25 AM, Abhishek Sharma
<spyzer.abhishek0 at gmail.com> wrote:


Thanks
--

Abhishek Sharma
B-Tech Information Technology
Indian Institute of Information Technology Allahabad






-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.pentaho.org/pipermail/mondrian/attachments/20110410/54cf36ec/attachment.html 


More information about the Mondrian mailing list