OpenCL test documents for Calc

opencl-doc-shot

Some of you have asked me previously whether or not we can share any test documents to demonstrate Calc’s new OpenCL-based formula engine. Thanks to AMD, we can now make available 3 test documents that showcase the performance of the new engine, and how it compares to Calc’s existing engine as well as Excel’s.

Download Platform
OpenCL-test-documents-Excel-64-bit.zip Excel (64-bit)
OpenCL-test-documents.zip Calc (Windows, 32-bit)
Calc (Linux, 32-bit)
Calc (Linux, 64-bit)
Excel (32-bit)

These files are intentionally in Excel format so that they can be used both in Calc and Excel. They also contain VBA script to automate the execution of formula cell recalculation and measure the recalculation time with a single button click.

All you have to do is to open one of these files, click “Recalculate” and wait for it to finish. It should give you the number that represents the duration of the recalculation in milliseconds.

Note that the 64-bit version of Excel requires different VBA syntax for calling native function in DLL, which is why we have a separate set of documents just for that version. You should not use these documents unless you want to test them specifically in the 64-bit version of Excel. Use the other one for all the rest.

On Linux, you need to use a reasonably recent build from the master branch in order for the VBA macro to be able to call the native DLL function. If you decide to run them on Linux, make sure your build is recent enough to contain this commit.

Once again, huge thanks to AMD for allowing us to share these documents with everyone!

13 thoughts on “OpenCL test documents for Calc”

  1. I have a Dell Vostro 3560 notebook with Intel I7 and 2 videos adapters: one Intel HD Graphics 4000 and the other AMD Radeon HD 7670M.

    My measurements are:
    Wih “Detailed calculations settings” in “Standard”, I get 33.651

    While In “Customized” and “Internal, software intepreter”: 5503,41

    and in “Customized and “AMD Accelerated parallell processing in Intel I7…” I get 88.802,65

    I guess the architecture of my machine is better served by the internal, software interpreter…

    1. So, the performance of OpenCL varies a lot between GPU’s, and Intel’s GPU may not give you any superior performance over the original formula engine.

      The software interpreter is basically the original formula engine with some twist to take advantage of Calc’s new array storage. Despite that, it may give you pretty good performance advantage over the default engine on some hardware.

      At the moment, if you have an AMD GPU, it should give you quite good performance simply because we’ve done lots of testing on AMD hardware.

      1. FWIW, On an A10-5800K Running the “Dates worked.xls” the s/w version duration was 23279.66 and the OpenCL enabled version duration was 167.73. Over a two orders of magnitude improvement. That ROCKS!

    2. Oh BTW, “AMD Accelerated parallell processing in Intel I7…” that’s a CPU emulation of OpenCL which doesn’t actually use the GPU. There should be another entry in the calculation settings dialog that doesn’t mention Intel i7… Give that one a try.

      1. No, there is no other entry. But I am very excited to get that performance increase with OpenCL.

        (that 2 videos cards in my laptop is not even well explained by the manufacturer…)

        Anyway, thank you indeed for the wonderful work of refactoring Calc. I am eager to explore further on this.

  2. I am trying to run this on Linux running an A10-5800K and I am getting: “BASIC runtime error. ’73’ Not Implemented.”

    Here are my questions:
    Which video card or APU do you have this running on?
    Which version of the driver are you using?

    Thanks.

    1. I suggest you read my note about running it on Linux in my post. It’s toward the end.

      1. Yes, I downloaded and installed: libreoffice-4-3~2014-09-30_19.11.42_LibreOfficeDev_4.3.3.0.0_Linux_x86-64_rpm.tar.gz The commit listed above was dated 2014.09.19 so I should have it.

        Thanks.

        1. That basic run time error has no relevance to GPU or its driver. To be safe, get the latest master build. There may be additional fixes that went in that you need to have.

          I’ve tested the very latest master build, and it works there (for me at least).

          Also, make sure you use the 2nd one that’s marked for Excel 32-bit and Calc. If you use the first one that’s made for 64-bit Excel, you’ll get an Basic error.

  3. Hi! I’m on Gentoo and I found I can test it on 4.3.2 from portage with 3 patches from git applied:
    http://cgit.freedesktop.org/libreoffice/core/commit/?id=19ee058a21747efd36a91a5aaa2231fefe1e7fa4
    http://cgit.freedesktop.org/libreoffice/core/commit/?id=01e14011e5b38fbfa713f4dcd8ca5bf2ed75c436
    http://cgit.freedesktop.org/libreoffice/core/commit/?id=857f72dfe32b269a864dc30e687ce5920d1c0fda

    Here AMD FX-6300 + Nouveau on GeForce GT 220.
    Below my results (avg of run,run,run) for OpenCL and w/o OpenCL:
    Dates worked: 25952 opencl and 28828 without
    Ground water daily: 1490 opencl and 42072 without
    Stock history: 4954 opencl and 2835 without

    1. I haven’t OpenCL hardware and LO using its own emulation here.
      Hm… Why I got emulation 10% faster on “Dates”, 28x times faster on “Ground”, and 2x times slower on “Stock”?

      1. The emulator uses different formula cell calculation ordering than the conventional formula engine. This may boost performance for some documents even if you don’t have GPU capable of OpenCL, but it may make things slower for other documents. It all depends on how the formulas are laid out in the document.

Comments are closed.