Pervasive
Sign in | Join | Help
in

XIO or L2 Cache?

Last post 07-22-2008 3:28 AM by Smily. 5 replies.
Page 1 of 1 (6 items)
Sort Posts: Previous Next
  • 07-17-2008 12:52 AM

    • Smily
    • Top 150 Contributor
    • Joined on 01-08-2008
    • Slovenia
    • Posts 32

    XIO or L2 Cache?

    Hi!

    I have a question regarding XIO and L2 Cache in v10.10.

    What is better to use, XIO or L2 Cache?

    Pervasive stated in »Advanced Operations Guide.pdf« that L2 Cache should be turned off if you want to use XIO. So I need to choose between XIO or L2.

    Quote:« The Pervasive PSQL L2 cache must be turned “off.” That is, the
    setting for “Max MicroKernel Memory Usage” must be set to
    zero. See “Max MicroKernel Memory Usage” on page 4-48. Note
    that, if you choose to install XIO, the Pervasive PSQL installation
    turns off the L2 cache.«

    Best regards,
    Smiljan

  • 07-17-2008 9:22 AM In reply to

    Re: XIO or L2 Cache?

    Which is better, a sports car or a pickup truck?  It all depends on what you are doing, as hauling a load of manure doesn't work well in a sports car.

    Seriously, though, you will see different results with either, so your environment and load will dictate which is better.  Let's look at a few examples:

    1. x64 Server, x64 Engine: Lots of memory available here (and XIO won't install), so we use a large L1 and L2 cache.
    2. x64 Server, x86 Engine: Database can use up to 4GB of virtual address space.  However, XIO doesn't install in this environment, so we have to go with a larger L1 and L2 cache.
    3. x86 Server, x86 Engine, 4GB+ of RAM: Database can only use 2GB of virtual address space between L1 and L2.  Extra memory is essentially wasted.  With this environment, we can use "extra" server memory for XIO database file cache and improve performance for the database dramatically.
    4. x86 Server, x86 Engine, <2GB RAM: XIO won't load, but small memory space means that we won't exceed 2GB limit anyway.  Use L2.
    5. x86 Server, x86 Engine, 2-4GB RAM: XIO loads, but small memory makes it a toss-up.  Try it both ways & see which works better for you.

     

    Bill Bach
    Goldstar Software Inc.
    www.goldstarsoftware.com
  • 07-18-2008 1:24 AM In reply to

    • Smily
    • Top 150 Contributor
    • Joined on 01-08-2008
    • Slovenia
    • Posts 32

    Re: XIO or L2 Cache?

    Hi!


    We use 5th option - x86 Server, x86 Engine with 4GB RAM.

    »It all depends on what you are doing.« - 90% of load is trough transactional service and the rest trough relational. But it's expected for relational access to increase up to 30% in near future. The whole database is approximately 7GB large with 100 users.

    Setup: 2xHP server 2xXeon dual core in cluster connected to HP MSA storage (fiber-channel).

    What would you suggest? As I can see from your reply there would probably be no gain in performance with 4GB of RAM.

    Thank you and best regards,
    Smiljan


     

  • 07-18-2008 8:21 AM In reply to

    Re: XIO or L2 Cache?

    Honestly, you may have to try both & see which works better for you.  I believe that XIO will be faster than L2 in your case, especially as you can get up to 2GB of XIO cache, and L2 will be limited to MUCH smaller than that. 

     

    Bill Bach
    Goldstar Software Inc.
    www.goldstarsoftware.com
  • 07-18-2008 6:00 PM In reply to

    Re: XIO or L2 Cache?

    A few things to keep in mind when evaluating XIO.

    1) XIO works the best when you have more than 4GB's of memory because XIO can grab anything above 4GB and reserve it for exclusive use by PSQL.  With an 8GB server you can see XIO maintain a 6.5GB cache and depending on the compression ratio of the data blocks, you can stuff a lot of data into the XIO cache.

    2) The compression in XIO is roughly 25% faster than the compression used in the L2 and XIO does some tricks internally to make good use of multi-core boxes that can only be done in kernel mode where XIO lives.

    3) In our testing we have found that the best benefit with XIO comes where you are targeting large databases on x86 platforms that can benefit from having large datasets in the extended cache that XIO provides.  For users targeting x64 platforms the 64-bit PSQL is a comparable choice to XIO given a box with the same memory.  XIO could possibly edge out the 64-bit solution because of #2 above, but that too is dependent on how much data is being pushed and pulled from the PSQL L2.

    4) XIO can be viewed as a stepping stone into the 64-bit world where you need more database in memory than a 32-bit straight 2GB address space limit can provide.  Use XIO as the intermediary step and when you migrate to 64-bit then the 64-bit PSQL has you covered there too.  Having both gives you more options at deployment time based on your database requirements and current/future hardware deployments. 

    5) As Bill stated, it's best to try out some scenarios and find out which works the best for your situation. 

    Brett
     

  • 07-22-2008 3:28 AM In reply to

    • Smily
    • Top 150 Contributor
    • Joined on 01-08-2008
    • Slovenia
    • Posts 32

    Re: XIO or L2 Cache?

    Hi!

    Now I know everything I need to proceed.
    Thanks’ to everyone for the info.

    Best regards,
    Smiljan

     

Page 1 of 1 (6 items)
© 2008 Pervasive Software Inc. All Rights Reserved.