> grant@amadensor.com writes:
>> Here is the fun part. When running 8 threads spinning calculating
>> square
>> roots (using the stress package), the full scan returned consistently
>> 60%
>> faster than the machine with no load.
>
> Possibly the synchronized-seqscans logic kicking in, resulting in this
> guy not having to do all his own I/Os. It would be difficult to make
> any trustworthy conclusions about performance in such cases from a view
> of only one process's results --- you'd need to look at the aggregate
> behavior to understand what's happening.
>
> regards, tom lane
>
My though was that either:
1) It was preventing some other I/O or memory intensive process from
happening, opening the resources up.
2) It was keeping the machine busy from the hypervisor's point of view,
preventing it from waiting for a slot on the host machine.
3) The square roots happen quickly, resulting in more yields, and
therefore more time slices for my process than if the system was in its
idle loop.
Any way you look at it, it is fun and interesting that a load can make
something unrelated happen more quickly. I will continue to try to find
out why it is the case.