Jedox GPU Accelerator FAQ

image_pdfimage_print

Related links: Jedox GPU Accelerator, Requirements of Jedox GPU Accelerator, Installation of Jedox GPU Accelerator

General

Why should I use Jedox GPU Accelerator?
What is the speedup over CPU?
How can I test the speedup for my model/reports?
Is there a special license required for testing?
What exactly is accelerated with Jedox GPU Accelerator?
Are there best practices with regard to cube design?
Can Jedox GPU Accelerator also speed up my ETL process?

Hardware

What kind of hardware is recommended?
Can I use Jedox GPU Accelerator with any NVIDIA graphics card?
How much GPU memory do I need?
How should GPUs be connected on the system mainboard?
Can I test Jedox GPU Accelerator in the Cloud?
Does the Jedox GPU Accelerator run on non-NVIDIA graphics chips or other parallel architectures, such as the Intel Xeon Phi?

 

General

 
Why should I use Jedox GPU Accelerator?

Today’s graphics cards (GPUs) are capable of processing large data volumes in parallel much faster than CPUs. Calculations in OLAP, such as aggregations, rule functions, and filters, can be significantly accelerated if run on a graphics card, reducing time from minutes to milliseconds. Whenever the same arithmetic operation can be applied on large amounts of data (thousands or millions of cells), then the GPU processing power is fully utilized, and significant speedups over conventional processing with a CPU can be expected. Top

 
What is the speedup over CPU?

Current measurements show an average speedup of factor 5 to 10 compared to the CPU version of the OLAP Server. However, there is no general answer to this question, because of the nature of each particular query and uniqueness of each particular data model. In best-case scenarios, speedup can be much higher, e.g. 70 times faster on GPU, but in worst-case scenarios, there is very little or no speedup whatsoever. For this reason we recommend testing your model/reports on a GPU-enabled server before purchasing GPUs or GPU licenses. For details on how to test your model, see the next question. Top

 
How can I test the speedup for my model/reports?

We suggest using the GPU Accelerator Advisor that comes with Jedox 7.0 Excel Add-in to determine the GPU recommendation level for a specific cube (for details see Jedox GPU Accelerator Advisor). If the result shows a potential for speedup, then the next step can be either of the following:

  • Test Jedox GPU Accelerator on Azure NC instances: Jedox GPU Accelerator on Azure.
  • Use a comparable consumer GPU (e.g. NVIDIA GeForce GTX 1080 or NVIDIA Titan X) and test on your own server. As of Jedox 7.0, non-Tesla™ GPUs are supported for testing purposes (viable support). Note that non-Tesla™ GPUs have a driver-side CUDA kernel execution timeout (normally 5 seconds) that can reached in extremely computation-intensive operations, such as aggregations or dimension filters. This timeout might be configurable, but Jedox does not provide any support for these types of configuration changes.
  • Contact our GPU support team (support@jedox.com) to arrange a trial on our test servers (equipped with state-of-the-art GPUs). Top
 
Is there a special license required for testing?

No, you can use the 30-day Jedox test license that comes with the Jedox 7.0 trial version to utilize up to two GPUs. Top

 
What exactly is accelerated with Jedox GPU Accelerator?

Fully accelerated operations are:

  • aggregation (SUM, MAX, MIN, AVG, CNT)
  • data filters (ANY, ALL, MAX, MIN, SUM, AVG)
  • rules (arithmetic operations, IF statements, PALO.DATA)
  • accessing attribute cubes (numerical values)
  • all writeback operations

Some features are not processed on GPU yet, such as:

  • functions on element names or dimension names
  • functions that manipulate strings
  • operations on string cells

However, this is transparent for users; i.e., GPU processing is automatically applied whenever suitable, and CPU processing takes over elsewhere.

Note that cube locking and cube layout changes cannot yet be performed on GPU-activated cubes. Top

 
Are there best practices with regard to cube design?

As a general rule of thumb, arrange dimensions according to their sizes (base element count) and start with the smallest one as the first dimension in the cube. Time dimensions and dimensions that are typically reduced to base level in reports (high selectivity) should also be placed among the first dimensions. A dimension that is heavily used in B:Rules is also a candidate to be placed among the first dimensions. Top

 
Can Jedox GPU Accelerator also speed up my ETL process?

Generally not, because only OLAP Server operations are accelerated. However, much of the time spent in ETL processes is typically consumed by the OLAP Server performing READ and WRITE requests. If the processing of the READ requests are the bottleneck (e.g. large aggregations, B:Rule calculations, etc.), then the ETL process can indirectly profit from OLAP Server acceleration, because those requests will be performed faster. Top

 

Hardware

 
What kind of hardware is recommended?

We recommend the latest generations of NVIDIA Tesla™ series (e.g. NVIDIA Tesla™ K40, K80, or P100). It is possible to utilize multiple GPUs as long as they are of the same type. For the graphics card(s), you should consider their memory size with regard to the amount of data to be processed (see next question).  Top

 
Can I use Jedox GPU Accelerator with any NVIDIA graphics card?

Jedox GPU Accelerator supports all NVIDIA Tesla™ graphics cards with Compute Capability (CC) 2.0 or later.  As of Jedox 7.0, non-Tesla™ GPUs are supported for testing purposes (viable support), such that any CUDA-capable NVIDIA GPU can be used (again, at least CC 2.0 is required).

Note that GPUs with Compute Capability 2.0 and 2.1 have been deprecated with Jedox 7 SR2 and support will be dropped in 7.1.

You can check the Compute Capability of specific models here: https://developer.nvidia.com/cuda-gpus  Top

 

How much GPU memory do I need?

The amount of memory that is needed to store the data on a GPU can also be roughly estimated by the amount of RAM that is used in the OLAP Server for a particular cube (see cube .bin file in the data folder). Because a different compression algorithm is applied when converting the cube’s data to GPU format, this estimation can become invalid for specific cubes. Especially for large data volumes, it is recommended to precalculate the exact size of a cube in GPU format by using the GPU Accelerator Advisor from Jedox 7.o Excel Add-in for the particular cube.
For details, see http://knowledgebase.jedox.com/knowledgebase/accelerator-advisor/

Cube data is evenly distributed among all utilized GPUs such that the available memory is given by the sum of all memory capacities.

Note that GPU memory is also required by the GPU engine during calculations: as a rule of thumb, make sure that converted cubes do not use more than half of the available GPU memory.

As of Jedox 7.0, cube data can alternatively reside in conventional CPU RAM, which allows cubes that are larger than available GPU memory to be accelerated. A conversion of the cube to GPU format is still necessary and requires additional available RAM on the host system. Top

 
How should GPUs be connected on the system mainboard?

We recommend connecting the graphics card to undivided 16-bit PCI slots. We also recommend connecting all graphics cards on a single PCIe bus controller. This practice helps to avoid data transfer congestion and/or data having to take detours over main system memory when transferring from and into the memory of GPU. Top

Can I test Jedox GPU Accelerator in the Cloud?

Yes, we provide an Azure virtual machine image for running Jedox on Azure NC instances (featuring NVIDIA K80 GPUs). Find out more here: Jedox GPU Accelerator on Azure.  Top

Does the Jedox GPU Accelerator run on non-NVIDIA graphics chips or other parallel architectures, such as the Intel Xeon Phi?

Jedox GPU Accelerator employs the CUDA parallel computing platform by NVIDIA; therefore, NVIDIA graphics cards are required. Other graphics chips or parallel architectures are currently not supported. Top

image_pdfimage_print
Was this post helpful?
NoYes (-1 rating, 3 votes)
Loading...