- Notifications
You must be signed in to change notification settings - Fork28
Commit3cf1fd3
committed
Tom Lane <tgl@sss.pgh.pa.us> writes:
> a_ogawa <a_ogawa@hi-ho.ne.jp> writes:> > It is a reasonable idea. However, the majority part of MemSet was not> > able to be avoided by this idea. Because the per-tuple contexts are used> > at the early stage of executor.>> Drat. Well, what about changing that? We could introduce additional> contexts or change the startup behavior so that the ones that are> frequently reset don't have any data in them unless you are working> with pass-by-ref values inside the inner loop.That might be possible. However, I think that we should change onlyaset.c about this article.I thought further: We can check whether context was used from the lastreset even when blocks list is not empty. Please see attached patch.The effect of the patch that I measured is as follows:o Execution time that executed the SQL ten times.(1)Linux(CPU: Pentium III, Compiler option: -O2) - original: 24.960s - patched : 23.114s(2)Linux(CPU: Pentium 4, Compiler option: -O2) - original: 8.730s - patched : 7.962s(3)Solaris(CPU: Ultra SPARC III, Compiler option: -O2) - original: 37.0s - patched : 33.7sAtsushi Ogawa (a_ogawa)1 parente18e8f8 commit3cf1fd3
1 file changed
+12
-1
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
11 | 11 | | |
12 | 12 | | |
13 | 13 | | |
14 | | - | |
| 14 | + | |
15 | 15 | | |
16 | 16 | | |
17 | 17 | | |
| |||
399 | 399 | | |
400 | 400 | | |
401 | 401 | | |
| 402 | + | |
| 403 | + | |
| 404 | + | |
| 405 | + | |
| 406 | + | |
| 407 | + | |
| 408 | + | |
| 409 | + | |
| 410 | + | |
| 411 | + | |
| 412 | + | |
402 | 413 | | |
403 | 414 | | |
404 | 415 | | |
| |||
0 commit comments
Comments
(0)