Page 1 of 1

Regarding Array Size

Posted: Fri Jan 04, 2008 7:05 am
by manojbh31
Hi

Happy New Year to All.

I want to set Array size to my project, on wat basis this can be achived.
Please let me because performance very low.

Posted: Fri Jan 04, 2008 7:17 am
by chulett
:? Array Size is neither a project level variable nor a magic bullet for performance issues. You'll need to get more specific if you want specific help.

Posted: Fri Jan 04, 2008 7:27 am
by manojbh31
Ok. Is there any particular Criteria to define Array Size? In previous company array size was 32767. On what basis this value is defined?

Posted: Fri Jan 04, 2008 7:33 am
by chulett
Sheesh... that is a ridiculous value to use and falls into the 'bigger must be better' camp. Typically, you need to be aware of your network packet size and average record length then adjust your Array Size accordingly.

In other words, there is no one magic value - it will vary from job to job. You'll need to experiment to find the 'sweet spot' for any particular job, anything too high will actually hinder performance.

Posted: Fri Jan 04, 2008 2:55 pm
by ray.wurlod
Approximately (packet_size / row_size) or a small multiple thereof should be your starting point for experimentation.

Posted: Fri Sep 05, 2008 11:28 am
by RodBarnes
ray.wurlod wrote:Approximately (packet_size / row_size) or a small multiple thereof should be your starting point for experimentation.
This makes sense. However, if the rows are typically larger than the packet size, each row will always be fragmented, and so the packet size really becomes no longer part of the equation. Do you agree?

It seems that with very large rows (e.g.; a row with large text values), the array size is more a factor of the memory on the DS server and the buffer size to ensure the data doesn't overstep the buffer/memory by array_size * row_size.

Posted: Fri Sep 05, 2008 5:25 pm
by ray.wurlod
Agree.

In that case something like (small_multiple_of_packet_size / row_size) ought to be close.

Trial and error seems to be necessary (making sure that all other variabilities are reasonably controlled for), and it's not even a smooth curve - some experiments have indicated a multi-nodal curve, then time for experimentation was curtailed.

I wonder if IBM pays anyone to research these kinds of things?

Re: Regarding Array Size

Posted: Tue Oct 14, 2008 1:01 pm
by manojbh31
Hi can you please tell me what is packet size where can we find the packet size

Re: Regarding Array Size

Posted: Tue Oct 14, 2008 1:22 pm
by RodBarnes
manojbh31 wrote:Hi can you please tell me what is packet size where can we find the packet size
Typically, ethernet packetsize will be 1500 or less. You can use the command "ping <target> -f -l <size>" in a repetitive fashion to find out what the current size really is. If the specified size is larger than the current packetsize, the system will respond with: "Packet needs to be fragmented...". Reduce the size value and run the command again. Repeat this until it responds with a normal ping reply; e.g., "Reply from <target>: bytes=<size>..."

Posted: Tue Oct 14, 2008 1:26 pm
by chulett
I would think you should be able to ask your Network peoples.