Commit 73487a6
committed
snapshot scalability: Move subxact info to ProcGlobal, remove PGXACT.
Similar to the previous changes this increases the chance that data
frequently needed by GetSnapshotData() stays in l2 cache. In many
workloads subtransactions are very rare, and this makes the check for
that considerably cheaper.
As this removes the last member of PGXACT, there is no need to keep it
around anymore.
On a larger 2 socket machine this and the two preceding commits result
in a ~1.07x performance increase in read-only pgbench. For read-heavy
mixed r/w workloads without row level contention, I see about 1.1x.
Author: Andres Freund <andres@anarazel.de>
Reviewed-By: Robert Haas <robertmhaas@gmail.com>
Reviewed-By: Thomas Munro <thomas.munro@gmail.com>
Reviewed-By: David Rowley <dgrowleyml@gmail.com>
Discussion: https://postgr.es/m/20200301083601.ews6hz5dduc3w2se@alap3.anarazel.de1 parent 5788e25 commit 73487a6
File tree
7 files changed
+113
-113
lines changed- src
- backend
- access/transam
- storage
- ipc
- lmgr
- include/storage
- tools/pgindent
7 files changed
+113
-113
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
295 | 295 | | |
296 | 296 | | |
297 | 297 | | |
298 | | - | |
| 298 | + | |
299 | 299 | | |
300 | 300 | | |
301 | 301 | | |
| |||
510 | 510 | | |
511 | 511 | | |
512 | 512 | | |
513 | | - | |
514 | 513 | | |
515 | 514 | | |
516 | 515 | | |
517 | 516 | | |
518 | 517 | | |
519 | | - | |
| 518 | + | |
520 | 519 | | |
521 | 520 | | |
522 | | - | |
| 521 | + | |
523 | 522 | | |
524 | 523 | | |
525 | 524 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
21 | 21 | | |
22 | 22 | | |
23 | 23 | | |
24 | | - | |
25 | | - | |
26 | | - | |
| 24 | + | |
| 25 | + | |
| 26 | + | |
27 | 27 | | |
28 | 28 | | |
29 | 29 | | |
| |||
447 | 447 | | |
448 | 448 | | |
449 | 449 | | |
450 | | - | |
451 | 450 | | |
452 | 451 | | |
453 | 452 | | |
454 | 453 | | |
455 | 454 | | |
456 | 455 | | |
457 | | - | |
458 | 456 | | |
459 | 457 | | |
460 | 458 | | |
| |||
480 | 478 | | |
481 | 479 | | |
482 | 480 | | |
483 | | - | |
484 | | - | |
| 481 | + | |
| 482 | + | |
485 | 483 | | |
486 | 484 | | |
487 | 485 | | |
| |||
510 | 508 | | |
511 | 509 | | |
512 | 510 | | |
513 | | - | |
514 | 511 | | |
515 | 512 | | |
516 | 513 | | |
517 | 514 | | |
518 | | - | |
| 515 | + | |
519 | 516 | | |
520 | 517 | | |
521 | 518 | | |
522 | 519 | | |
523 | 520 | | |
524 | 521 | | |
525 | | - | |
| 522 | + | |
526 | 523 | | |
527 | 524 | | |
528 | 525 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
222 | 222 | | |
223 | 223 | | |
224 | 224 | | |
| 225 | + | |
| 226 | + | |
| 227 | + | |
| 228 | + | |
| 229 | + | |
225 | 230 | | |
226 | 231 | | |
227 | 232 | | |
228 | 233 | | |
229 | 234 | | |
230 | 235 | | |
231 | | - | |
| 236 | + | |
| 237 | + | |
| 238 | + | |
| 239 | + | |
| 240 | + | |
232 | 241 | | |
233 | 242 | | |
234 | 243 | | |
235 | 244 | | |
236 | 245 | | |
237 | | - | |
| 246 | + | |
238 | 247 | | |
239 | 248 | | |
240 | | - | |
| 249 | + | |
241 | 250 | | |
242 | 251 | | |
243 | 252 | | |
| |||
0 commit comments