innodb-native-aio and high IOwait

There is a mysql config setting for InnoDB

innodb_use_native_aio = 0

It is enabled by default. However we get the following CPU loads with this setting enabled and disabled:

With “innodb_use_native_aio = 1”:

02:27:01 PM CPU %user %nice %system %iowait %steal %idle
02:33:01 PM all 22.15 0.00 13.32 7.50 0.00 57.03
02:34:01 PM all 21.30 0.00 13.39 9.57 0.00 55.74
02:35:01 PM all 20.20 0.00 13.39 9.00 0.00 57.41
With “innodb_use_native_aio = 0”:

02:39:01 PM CPU %user %nice %system %iowait %steal %idle
02:39:01 PM all 24.22 0.00 13.65 1.11 0.00 61.02
02:40:01 PM all 24.10 0.00 14.65 0.69 0.00 60.56
02:41:01 PM all 22.41 0.00 13.40 0.72 0.00 63.47
So we get approximtely 2% lower user cpu, but 6-9% higher iowait with asynchronous IO enabled. Since this is a setting that I would expect to decrease iowait, not increase it, it feels like something must not be acting correctly. Are the results we are seeing expected/typical/down to a presentation issue in the load output figures and the operation of AIO, or does this point to a genuine issue that requires investigation?

This is on mysql 5.5 on a RHEL 5.5 host running on a 2.6 kernel, with the data on an ext3 local mount, host running on vmware virtualisation and a VMFS filesystem.

Thank you.

It really has me puzzled.

Billy.