Performance tuning AIX

performance-tuning-aix

Many people think that performance tuning AIX can give you something that you did not already have whereas in reality it is more like slicing a cake. Imagine dividing a cake into six equal portions only to find that one person does not like cake. The obvious solution is to divide the remaining slice into smaller pieces, or for one lucky person to have two! The main thing to realise is that you still only have ONE cake, and that if you increase the size on one slice, you can only do this by reducing another, and that if you don’t eat all the cake, it is lost and you don’t get it back!

A systems performance is governed mostly by two things:

1. The speed at which it can process data (CPU speed)
2. The speed at which it can read-in and write-out data (network and disk speed)

Everything else regarding performance tuning AIX is dependent upon these two factors. When you tune a system what you are actually looking for are tasks that require fewer resources, or to be checked less often, e.g. if you have ten hard disks and one gets 90% of the IO, and the other nine get the rest, it makes sense to redistribute your data in order to spread the load.

Performance tuning AIX, Less is more.

It should also be noted that it is only possible for a processor to do nothing when it is powered-off, otherwise it has to continually check if there is anything for it to do. Many systems call this a NOP (Non-operation), and a high number of NOPs can actually create a lot of overhead, hence AIX attempts to reduce the number of active processors by dynamically de-configuring processors that are not required. This also saves heat and power and is a good way to apply performance tuning AIX.

The most costly operation for a processor is always to de-queue a process thread, return it to the dispatcher, and then re-queue it elsewhere, hence IBM uses NUMA (non-uniform-memory-access) technology to minimise these costly operations by taking recently executed threads and where possible placing them back onto the run-queue of the same processor. Without NUMA technology IBM systems would suffer from the same scalability issue of traditional multi-processor systems whereby the actual work required to maintain multiple processors increases exponentially until adding more processors actually slows-down system response.

Modern processors such as the IBM Power family also possess multiple cores and are designed to break-down complex processes operations into light-weight ops, or threads, and to run them on different cores at the same time.

It is vital to note that advanced features such as these can only work when the workload is written in a compatible language. An example of this is if your software is not thread-aware, then the system will actually waste time trying to create threads, or if the code is 32 bit only the processor has to run in a compatibility-mode which greatly reduces system performance as it has to translate addresses between 64 and 32bits.

Where possible always ensure that you have the latest version of the software and that it has been tuned and tested to run on your hardware and OS version. You should also pay close attention to any documentation and release notes in case there any specific restrictions or performance tuning AIX required.

Performance tuning AIX, the right way

By far the best increases in performance are realised by removing software and processes that you don’t need and/or don’t use, and by disabling services such as printing if the system does not have a printer attached etc. The same is true of system tuneables. This is a smart way to use performance tuning AIX in your advantage. If you have a large number of disks/LUNs you may have relatively small queue-depths in order that the system does not become overloaded, however if you only have a few disks it makes sense to increase those queue-depths to take advantage of the unused memory.

When AIX is installed it uses a “sensible” set of defaults to divide-up the processor and memory resources, and devotes a certain amount of resources to IO or comms and it can be that you can safely adjust these ratios in order to rebalance your system in favour of your workload.

The most vital thing to remember when you apply performance tuning AIX, is that you always research, plan, and test any change, and ensure that you have the systems in place to measure the effect of performance tuning AIX.

 

System Scan AIX is designed to be help you understand how your system was build and to look at highlight potential issues. The software analyse your system as close to “Zero Footprint” as possible and provides you with recommendations for improvement.

In summary System Scan AIX is unique because it is more concerned with how the actual OS has been built and configured, and potential security and performance problems that may not even be included in your policies or practices, thus enabling you to actually improve the way you work now and in the future.

Contact BlueFinch by filling in the form on the right.