Start a Conversation

Unsolved

This post is more than 5 years old

5167

September 17th, 2009 00:00

Centera SDK XAM VIM reference guide

On page 90 of this guide in the section titled XAM application considerations, under the heading Buffer Size, the following is stated:

"For optimal performance reads and writes, EMC recommends that you use a buffer size of at least 5 MB. Increasing this buffer size to 20 MB provides a marginal performance improvement."

However, when setting this value on com.emc.centera.buffersize, an exception is thrown. The Centera SDK 3.1 API Ref Guide says the following:

"FP_OPTION_BUFFERSIZE — The size of an internal C-Clip buffer in bytes. The default value is 16*1024. The minimum value is 1 KB. The maximum value is 10 MB."

Is this a documentation error, or is the first doc talking about a different buffer? It seems that there are a few errors in the doco - is there an Errata somewhere?

2 Intern

 • 

417 Posts

September 17th, 2009 01:00

As stated in the documentation, the BUFFERSIZE option sets the size of the CDF buffer. This is not related to the transfer buffer size.

In order to increase the data transfer buffer, specify the required value as a parameter in the Read and Write calls to the XStream you create.

The 3.1 SDK is end of life - I suggest that you download the latest SDK and check the documentation included with it. If you still believe there are errors then feel free to post the details here and they will be investigated.

16 Posts

September 17th, 2009 18:00

When you say:

In order to increase the data transfer buffer, specify the required value as a parameter in the Read and Write calls to the XStream you create.

are you referring to the following type of call:

            Using stream As XStream = xs.CreateXStream("fieldName", Constants.DEFAULT_MIME_TYPE)
                stream.Write(data, 0, data.Length)
                stream.Close()
            End Using

and changing the parameter in bold?

If the application is constantly dealing with streams of an average size of 500K and storing on stream per XSet, is there any benefit to be gained by having a buffer size of > 5MB, as suggested in the performance section of the Centera SDK XAM VIM Reference Guide?

I'm not sure I'm clear on which buffer size, and which method calls the documentation and you are referring to. I realise that the documentation I quoted is for the XAM SDK, and not the .Net wrapper, however I thought that the same parameters would be exposed in each, particularly those affecting performance.

Would you prefer it if questions relating to the .NET Xam wrapper were raised on the Codeplex site, or do you want to keep all discussion here?

16 Posts

September 28th, 2009 18:00

Is anyone able to provide any information for these questions?

409 Posts

September 29th, 2009 00:00

The transfer buffer size being refered to here is the size of the buffer you are writing via the stream write (and vice versa for read).

The larger the buffer the better (particularly for read) and you will see a difference between IOs of 500KB and 5MB.  However if your object is 500KB in size then unless you containerise you will not be able to use buffers larger than that.  That is a design issue for you to consider

No Events found!

Top