Commit be2f825
Neil Conway
Apply the "nodeAgg" optimization to more of the builtin transition
functions. This patch optimizes int2_sum(), int4_sum(), float4_accum()
and float8_accum() to avoid needing to copy the transition function's
state for each input tuple of the aggregate. In an extreme case
(e.g. SELECT sum(int2_col) FROM table where table has a single column),
it improves performance by about 20%. For more complex queries or tables
with wider rows, the relative performance improvement will not be as
significant.1 parent a6bbfed commit be2f825
2 files changed
+112
-36
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
8 | 8 | | |
9 | 9 | | |
10 | 10 | | |
11 | | - | |
| 11 | + | |
12 | 12 | | |
13 | 13 | | |
14 | 14 | | |
| |||
1902 | 1902 | | |
1903 | 1903 | | |
1904 | 1904 | | |
1905 | | - | |
1906 | | - | |
1907 | 1905 | | |
1908 | 1906 | | |
1909 | 1907 | | |
| |||
1914 | 1912 | | |
1915 | 1913 | | |
1916 | 1914 | | |
1917 | | - | |
1918 | | - | |
1919 | | - | |
| 1915 | + | |
| 1916 | + | |
| 1917 | + | |
| 1918 | + | |
| 1919 | + | |
| 1920 | + | |
| 1921 | + | |
| 1922 | + | |
| 1923 | + | |
| 1924 | + | |
| 1925 | + | |
1920 | 1926 | | |
1921 | | - | |
1922 | | - | |
1923 | | - | |
| 1927 | + | |
| 1928 | + | |
| 1929 | + | |
| 1930 | + | |
| 1931 | + | |
| 1932 | + | |
| 1933 | + | |
| 1934 | + | |
| 1935 | + | |
| 1936 | + | |
1924 | 1937 | | |
1925 | | - | |
| 1938 | + | |
| 1939 | + | |
| 1940 | + | |
| 1941 | + | |
| 1942 | + | |
| 1943 | + | |
1926 | 1944 | | |
1927 | 1945 | | |
1928 | 1946 | | |
| |||
1935 | 1953 | | |
1936 | 1954 | | |
1937 | 1955 | | |
1938 | | - | |
1939 | | - | |
1940 | 1956 | | |
1941 | 1957 | | |
1942 | 1958 | | |
| |||
1950 | 1966 | | |
1951 | 1967 | | |
1952 | 1968 | | |
1953 | | - | |
1954 | | - | |
1955 | | - | |
| 1969 | + | |
| 1970 | + | |
| 1971 | + | |
| 1972 | + | |
| 1973 | + | |
| 1974 | + | |
| 1975 | + | |
| 1976 | + | |
| 1977 | + | |
| 1978 | + | |
| 1979 | + | |
1956 | 1980 | | |
1957 | | - | |
1958 | | - | |
1959 | | - | |
| 1981 | + | |
| 1982 | + | |
| 1983 | + | |
| 1984 | + | |
| 1985 | + | |
| 1986 | + | |
| 1987 | + | |
| 1988 | + | |
| 1989 | + | |
| 1990 | + | |
1960 | 1991 | | |
1961 | | - | |
| 1992 | + | |
| 1993 | + | |
| 1994 | + | |
| 1995 | + | |
| 1996 | + | |
| 1997 | + | |
1962 | 1998 | | |
1963 | 1999 | | |
1964 | 2000 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
14 | 14 | | |
15 | 15 | | |
16 | 16 | | |
17 | | - | |
| 17 | + | |
18 | 18 | | |
19 | 19 | | |
20 | 20 | | |
| |||
2357 | 2357 | | |
2358 | 2358 | | |
2359 | 2359 | | |
2360 | | - | |
2361 | 2360 | | |
2362 | 2361 | | |
2363 | 2362 | | |
| |||
2370 | 2369 | | |
2371 | 2370 | | |
2372 | 2371 | | |
2373 | | - | |
| 2372 | + | |
| 2373 | + | |
| 2374 | + | |
| 2375 | + | |
| 2376 | + | |
| 2377 | + | |
| 2378 | + | |
| 2379 | + | |
2374 | 2380 | | |
2375 | | - | |
2376 | | - | |
2377 | | - | |
| 2381 | + | |
| 2382 | + | |
| 2383 | + | |
2378 | 2384 | | |
2379 | | - | |
2380 | | - | |
| 2385 | + | |
| 2386 | + | |
| 2387 | + | |
| 2388 | + | |
| 2389 | + | |
| 2390 | + | |
| 2391 | + | |
| 2392 | + | |
| 2393 | + | |
| 2394 | + | |
| 2395 | + | |
| 2396 | + | |
2381 | 2397 | | |
2382 | | - | |
| 2398 | + | |
| 2399 | + | |
2383 | 2400 | | |
2384 | 2401 | | |
2385 | 2402 | | |
2386 | 2403 | | |
2387 | 2404 | | |
2388 | | - | |
2389 | 2405 | | |
2390 | 2406 | | |
2391 | 2407 | | |
| |||
2398 | 2414 | | |
2399 | 2415 | | |
2400 | 2416 | | |
2401 | | - | |
| 2417 | + | |
| 2418 | + | |
| 2419 | + | |
| 2420 | + | |
| 2421 | + | |
| 2422 | + | |
| 2423 | + | |
| 2424 | + | |
2402 | 2425 | | |
2403 | | - | |
2404 | | - | |
2405 | | - | |
| 2426 | + | |
| 2427 | + | |
| 2428 | + | |
2406 | 2429 | | |
2407 | | - | |
2408 | | - | |
| 2430 | + | |
| 2431 | + | |
| 2432 | + | |
| 2433 | + | |
| 2434 | + | |
2409 | 2435 | | |
2410 | | - | |
| 2436 | + | |
| 2437 | + | |
| 2438 | + | |
| 2439 | + | |
| 2440 | + | |
| 2441 | + | |
| 2442 | + | |
| 2443 | + | |
| 2444 | + | |
2411 | 2445 | | |
2412 | 2446 | | |
2413 | 2447 | | |
| |||
2426 | 2460 | | |
2427 | 2461 | | |
2428 | 2462 | | |
| 2463 | + | |
| 2464 | + | |
| 2465 | + | |
| 2466 | + | |
| 2467 | + | |
| 2468 | + | |
2429 | 2469 | | |
2430 | 2470 | | |
2431 | 2471 | | |
| |||
0 commit comments