Suvankar Roy <suvankar(dot)roy(at)tcs(dot)com> wrote:
> Actually I am trying to figure out how much execution time any query
> is taking is taking when executed for the first time.
>
> Because once a query is executed for the first time, the query plan,
> data buffer is cached so subsequently time taken is much lower.
>
> For this, I want to have the Shared buffer cache flushed to note
> the initial execution time.
>
> Is my understanding correct here ?
Keep in mind that the OS cache will also normally have a significant
amount of PostgreSQL data cached. For "uncached" timings, you will
need to purge this, too. Of course, for real-life production
benchmarks the most meaningful timings are normally those taken within
your actual production mix, with all the caching and resource
competition which goes along with that.
-Kevin