Problem in setting up Jedox GPU acceleration

This site uses cookies. By continuing to browse this site, you are agreeing to our Cookie Policy.

  • Problem in setting up Jedox GPU acceleration

    I am trying to setup Jedox GPU acceleration for one of my cubes as a POC.
    Its my first time so I am naive in this area.

    I added entry to Palo.ini file
    enable-gpu

    restarted all services of Jedox.

    Went to Jedox web -> modeler -> right clicked on my cube & selected ->"Activate GPU Acceleration"
    I see a message Proceed or No -> I click Yes -> Status Bar is moving for few seconds and then
    BOOM - I get a message "Request timed out"
    BANG - My PaloMolap service went down.

    When I try to restart PaloMolap service - It will not startup. (restarting the machine all things are fine, but cube is not GPU activated)
    No activity I am noticing on task manager.

    What I am doing wrong?
    and what It will take to make a cube into a gube :)

    Best regards,
    Noel.
    ======================================================
    I am using:
    Jedox 4 SR1
    My GPU is NVIDIA GEFORCE GT 630M which is CUDA compliant.
    Dedicated VRAM of 1 GB DDR3
    CPU Intel ICORE5 3.2 GHZ frequency.
    RAM - 8 GB
  • Hi Noel,

    as far I know special binaries (version of palo.exe should be 4.0.5 - the number 5 at the end is important) for GPU are installed only if supported GPU card is detected and officially supported are only Tesla cards. The card type is detected on setup. If not present only CPU version is installed.
    General advice: to get more info from palo.log change in palo.ini
    verbose debug
    or
    verbose trace
    // can slow down the system extremely - use it for limited time only
  • Hello Noel,
    Yes, Jiri is right.
    As described in the documentation, Jedox OLAP Accelerator supports GPUs of the NVIDIA Tesla series.
    The GT 630M is not a Tesla GPU.
    If no supported GPU is detected, the checkbox for the installation of Jedox OLAP Accelerator should be inactive during setup. Hence, I suppose that you do NOT have Jedox OLAP Accelerator installed. In that case, adding "enable-gpu" in palo.ini does not make sense.
    Note that the menu item "Activate GPU Acceleration" is always there but it should give you a "Palo Action failed" message, if no Accelerator is installed.
    Your suggestion to deactivate the menu point if GPU Accelerator is not installed is a good one -- I will put it on the issues list.

    What I am doing wrong?

    See above - no accelerator installed.

    and what It will take to make a cube into a gube

    Short answer: It will take a Tesla GPU.
    Long answer: It is -- in principle -- possible to use CUDA-capable GPUs other than Tesla for Jedox OLAP. However, since those devices are classed as "User Interface devices" by Windows, they cannot be used in Windows Services. Also note that with "smaller" graphics cards (such as the mobile devices you mentioned), a significant acceleration is not very likely.

    Regards,
    Tobias
  • Thanks, I understand now; pitty I don't have the hardware currently to test the GPU acceleration for Jedox.

    Its said for larger data sets GPU will make significant performance imporvement, but as I know GPU programming is bit tricky - it has no paging so if the calculation
    runs out of memory then calculation would crash. Also GPU clock cycles are way below than than of CPU, so if execution is serial performance will again degrade.

    So is Jedox GPU fail safe ? i.e if GPU calculation crashes then it switches over to CPU without bringing the MOLAP Server down ? and which kind of tasks it executes in parallel? do you know any customer who have switched over to GPU ?
    I have seen the whitepaper in Jedox home site, it just touches outer skin on these subjects.

    From my experience, I have seen major performance needs on side of complex business rule execution which here is teritory of Php macros and ETL jobs.

    Best regards,
    Noel.
  • Hi Noel,

    Some answers to your technical questions:

    noelgaur wrote:

    Its said for larger data sets GPU will make significant performance imporvement, but as I know GPU programming is bit tricky - it has no paging so if the calculation
    runs out of memory then calculation would crash. Also GPU clock cycles are way below than than of CPU, so if execution is serial performance will again degrade.
    You are right. GPU computing can only give speedup if the algorithms in question can be massively parallelized.
    In addition, it is important that the data transfer overhead (from CPU to GPU and back through PCIe bus) does not eat up the performance gain.
    Also, you are right that the programmer has to take care not to exceed memory limitations.

    noelgaur wrote:

    So is Jedox GPU fail safe ? i.e if GPU calculation crashes then it switches over to CPU without bringing the MOLAP Server down ? and which kind of tasks it executes in parallel? do you know any customer who have switched over to GPU ?
    Yes, the GPU Accelerator is designed to be "fail-safe" in the sense you mentioned. It uses GPU memory to store all cube cells in order to avoid large data transfers. If the cube doesn't fit in the total memory of all connected GPUs, the cube will not be accelerated. [To give you some feeling about memory requirements: a 6-dimensional cube with about 1 billion (10^9) filled cells fits in the memory of 3 Tesla C2070 cards.]
    As is also described in the Jedox OLAP Accelerator Fact Sheet, Jedox OLAP currently uses GPU for the following tasks that are highly parallelizable:
    1. Aggregate cell computation
    2. Certain B-Rules (more types of rules are added in coming versions)
    3. Splash, copy, like
    Whatever cannot be calc'ed on GPU will automatically be done by CPU.
    AFAIK, two Jedox GPU customers gave presentations at the 2011 Palo Open.

    Regards,
    Tobias