Hi, Melih Mutlu <m.melihmu...@gmail.com>, 28 Mar 2024 Per, 22:44 tarihinde şunu yazdı: > > On Wed, Mar 27, 2024 at 14:39 David Rowley <dgrowle...@gmail.com> wrote: >> >> On Fri, 22 Mar 2024 at 12:46, Melih Mutlu <m.melihmu...@gmail.com> wrote: >> can you confirm if the test was done in debug with casserts on? If >> so, it would be much better to have asserts off and have >> -Dbuildtype=release. > > > Yes, previous numbers were with --buildtype debug -Dcassert=true. I can share new numbers with release build and asserts off soon.
While testing the patch without --buildtype debug -Dcassert=true, I felt like there was still a slight regression. I changed internal_flush() to an inline function, results look better this way. 1- row size = 100 bytes, # of rows = 1000000 ┌───────────┬────────────┬───────┬───────┬───────┬───────┬───────┐ │ │ 1400 bytes │ 2KB │ 4KB │ 8KB │ 16KB │ 32KB │ ├───────────┼────────────┼───────┼───────┼───────┼───────┼───────┤ │ HEAD │ 861 │ 765 │ 612 │ 521 │ 477 │ 480 │ ├───────────┼────────────┼───────┼───────┼───────┼───────┼───────┤ │ patch │ 869 │ 766 │ 612 │ 519 │ 482 │ 467 │ ├───────────┼────────────┼───────┼───────┼───────┼───────┼───────┤ │ no buffer │ 13978 │ 13746 │ 13909 │ 13956 │ 13920 │ 13895 │ └───────────┴────────────┴───────┴───────┴───────┴───────┴───────┘ 2- row size = half of the rows are 1KB and rest is 10KB , # of rows = 1000000 ┌───────────┬────────────┬───────┬───────┬───────┬───────┬───────┐ │ │ 1400 bytes │ 2KB │ 4KB │ 8KB │ 16KB │ 32KB │ ├───────────┼────────────┼───────┼───────┼───────┼───────┼───────┤ │ HEAD │ 30195 │ 26455 │ 17338 │ 14562 │ 12844 │ 11652 │ ├───────────┼────────────┼───────┼───────┼───────┼───────┼───────┤ │ patch │ 14744 │ 15830 │ 15697 │ 14273 │ 12794 │ 11652 │ ├───────────┼────────────┼───────┼───────┼───────┼───────┼───────┤ │ no buffer │ 24054 │ 23992 │ 24162 │ 23951 │ 23901 │ 23925 │ └───────────┴────────────┴───────┴───────┴───────┴───────┴───────┘ 3- row size = half of the rows are 1KB and rest is 1MB , # of rows = 1000 ┌───────────┬────────────┬──────┬──────┬──────┬──────┬──────┐ │ │ 1400 bytes │ 2KB │ 4KB │ 8KB │ 16KB │ 32KB │ ├───────────┼────────────┼──────┼──────┼──────┼──────┼──────┤ │ HEAD │ 3546 │ 3029 │ 2373 │ 2032 │ 1873 │ 1806 │ ├───────────┼────────────┼──────┼──────┼──────┼──────┼──────┤ │ patch │ 1715 │ 1723 │ 1724 │ 1731 │ 1729 │ 1709 │ ├───────────┼────────────┼──────┼──────┼──────┼──────┼──────┤ │ no buffer │ 1749 │ 1748 │ 1742 │ 1744 │ 1757 │ 1744 │ └───────────┴────────────┴──────┴──────┴──────┴──────┴──────┘ 4- row size = all rows are 1MB , # of rows = 1000 ┌───────────┬────────────┬──────┬──────┬──────┬──────┬──────┐ │ │ 1400 bytes │ 2KB │ 4KB │ 8KB │ 16KB │ 32KB │ ├───────────┼────────────┼──────┼──────┼──────┼──────┼──────┤ │ HEAD │ 7089 │ 5987 │ 4697 │ 4048 │ 3737 │ 3523 │ ├───────────┼────────────┼──────┼──────┼──────┼──────┼──────┤ │ patch │ 3438 │ 3411 │ 3400 │ 3416 │ 3399 │ 3429 │ ├───────────┼────────────┼──────┼──────┼──────┼──────┼──────┤ │ no buffer │ 3432 │ 3432 │ 3416 │ 3424 │ 3378 │ 3429 │ └───────────┴────────────┴──────┴──────┴──────┴──────┴──────┘ Thanks, -- Melih Mutlu Microsoft
v4-0001-Flush-large-data-immediately-in-pqcomm.patch
Description: Binary data