use __attribute__((target(...))) for AVX-512 stuff

Edit
ID 5305
Title use __attribute__((target(...))) for AVX-512 stuff
Topic Refactoring
Created 2024-10-16 21:05:10
Last modified 2024-11-07 20:02:31 (1 week, 6 days ago)
Latest email 2024-11-07 20:40:32 (1 week, 6 days ago)
Status
2024-11: Committed
Target version 18
Authors Nathan Bossart (bossartn)
Reviewers Become reviewer
Committer Nathan Bossart (bossartn)
Links CFbot results (CirrusCI) CFbot GitHub
Checkout latest CFbot patchset Go to your local checkout of the PostgreSQL repository and run:
git remote add commitfest https://github.com/postgresql-cfbot/postgresql.git
git fetch commitfest cf/5305
git checkout commitfest/cf/5305
Emails
Popcount optimization using AVX512
First at 2023-11-02 14:22:10 by "Amonson, Paul D" <paul.d.amonson at intel.com>
Latest at 2024-11-07 20:40:32 by Nathan Bossart <nathandbossart at gmail.com>
Latest attachment (0001-fix-__attribute__-target-.-usage.patch) at 2024-11-07 20:32:09 from Nathan Bossart <nathandbossart at gmail.com>
    Attachment (0001-fix-__attribute__-target-.-usage.patch) at 2024-11-07 20:32:09 from Nathan Bossart <nathandbossart at gmail.com> (Patch: Yes)
    Attachment (v3-0001-use-__attribute__-target-.-for-AVX-512-stuff.patch) at 2024-11-07 02:26:47 from Nathan Bossart <nathandbossart at gmail.com> (Patch: Yes)
    Attachment (v2-0001-use-__attribute__-target-.-for-AVX-512-stuff.patch) at 2024-10-31 19:21:24 from Nathan Bossart <nathandbossart at gmail.com> (Patch: Yes)
    Attachment (v1-0001-use-__attribute__-target-.-for-AVX-512-stuff.patch) at 2024-10-16 21:04:04 from Nathan Bossart <nathandbossart at gmail.com> (Patch: Yes)
    Attachment (v3-0001-osxsave.patch) at 2024-04-18 21:59:02 from Nathan Bossart <nathandbossart at gmail.com> (Patch: Yes)
    Attachment (v2-0001-osxsave.patch) at 2024-04-18 21:01:58 from Nathan Bossart <nathandbossart at gmail.com> (Patch: Yes)
    Attachment (osxsave.patch) at 2024-04-18 02:44:59 from Nathan Bossart <nathandbossart at gmail.com> (Patch: Yes)
    Attachment (v28-0001-Optimize-pg_popcount-with-AVX-512-instructions.patch) at 2024-04-06 19:41:01 from Nathan Bossart <nathandbossart at gmail.com> (Patch: Yes)
    Attachment (v27-0001-AVX512-popcount-support.patch) at 2024-04-05 15:38:11 from Nathan Bossart <nathandbossart at gmail.com> (Patch: Yes)
    Attachment (avx512-peel-first-iteration.patch) at 2024-04-05 07:33:27 from Ants Aasma <ants.aasma at cybertec.at> (Patch: Yes)
    Attachment (v26-0001-AVX512-popcount-support.patch) at 2024-04-05 04:15:43 from Nathan Bossart <nathandbossart at gmail.com> (Patch: Yes)
    Attachment (v25-0001-AVX512-popcount-support.patch) at 2024-04-03 20:12:58 from Nathan Bossart <nathandbossart at gmail.com> (Patch: Yes)
    Attachment (v24-0001-AVX512-popcount-support.patch) at 2024-04-03 17:41:27 from Nathan Bossart <nathandbossart at gmail.com> (Patch: Yes)
    Attachment (v23-0001-inline-pg_popcount-for-small-numbers-of-bytes.patch) at 2024-04-03 02:09:14 from Nathan Bossart <nathandbossart at gmail.com> (Patch: Yes)
    Attachment (v22-0001-inline-pg_popcount-for-small-numbers-of-bytes.patch) at 2024-04-02 22:20:20 from Nathan Bossart <nathandbossart at gmail.com> (Patch: Yes)
    Attachment (v21-0001-inline-pg_popcount-for-small-numbers-of-bytes.patch) at 2024-04-02 22:01:32 from Nathan Bossart <nathandbossart at gmail.com> (Patch: Yes)
    Attachment (avx512-popcnt-aligned-and-masked.patch) at 2024-04-02 20:30:39 from Ants Aasma <ants.aasma at cybertec.at> (Patch: Yes)
    Attachment (v20-0001-AVX512-popcount-support.patch) at 2024-04-02 15:53:01 from Nathan Bossart <nathandbossart at gmail.com> (Patch: Yes)
    Attachment (v19-0001-refactor-popcount-function-choosing.patch) at 2024-04-01 22:11:17 from Nathan Bossart <nathandbossart at gmail.com> (Patch: Yes)
    Attachment (avx512-popcnt-masked-tail.patch) at 2024-04-01 21:11:59 from Ants Aasma <ants.aasma at cybertec.at> (Patch: Yes)
    Attachment (v18-0001-AVX512-popcount-support.patch) at 2024-04-01 01:17:08 from Nathan Bossart <nathandbossart at gmail.com> (Patch: Yes)
    Attachment (avx512_popcnt.jpg) at 2024-03-30 20:03:29 from Nathan Bossart <nathandbossart at gmail.com> (Patch: No)
    Attachment (v17-0001-AVX512-popcount-support.patch) at 2024-03-30 03:22:09 from Nathan Bossart <nathandbossart at gmail.com> (Patch: Yes)
    Attachment (v16-0001-AVX512-popcount-support.patch) at 2024-03-29 19:13:12 from Nathan Bossart <nathandbossart at gmail.com> (Patch: Yes)
    Attachment (v15-0001-AVX512-popcount-support.patch) at 2024-03-29 15:59:40 from Nathan Bossart <nathandbossart at gmail.com> (Patch: Yes)
    Attachment (v14-0001-AVX512-popcount-support.patch) at 2024-03-28 21:38:54 from Nathan Bossart <nathandbossart at gmail.com> (Patch: Yes)
    Attachment (v13-0001-AVX512-popcount-support.patch) at 2024-03-27 22:00:10 from Nathan Bossart <nathandbossart at gmail.com> (Patch: Yes)
    Attachment (v12-0001-Refactor-Split-pg_popcount-functions-into-multiple-f.patch) at 2024-03-25 15:06:16 from "Amonson, Paul D" <paul.d.amonson at intel.com> (Patch: Yes)
    Attachment (v12-0001-Refactor-Split-pg_popcount-functions-into-multiple-f.patch) at 2024-03-21 19:17:54 from "Amonson, Paul D" <paul.d.amonson at intel.com> (Patch: Yes)
    Attachment (v11-0001-Refactor-inlining-and-direct-calls-for-_slow-functio.patch) at 2024-03-20 14:23:55 from "Amonson, Paul D" <paul.d.amonson at intel.com> (Patch: Yes)
    Attachment (v10-0001-Refactor-inlining-and-direct-calls-for-_slow-functio.patch) at 2024-03-19 22:56:01 from "Amonson, Paul D" <paul.d.amonson at intel.com> (Patch: Yes)
    Attachment (v4-0001-inline-function-calls-in-pg_popcount-when-possibl.patch) at 2024-03-18 22:08:45 from Nathan Bossart <nathandbossart at gmail.com> (Patch: Yes)
    Attachment (0001-inline-function-calls-in-pg_popcount-when-possible.patch) at 2024-03-18 17:53:50 from Nathan Bossart <nathandbossart at gmail.com> (Patch: Yes)
    Attachment (0001-inline-function-calls-in-pg_popcount-when-possible.patch) at 2024-03-18 17:30:04 from Nathan Bossart <nathandbossart at gmail.com> (Patch: Yes)
    Attachment (remove_indirect_func_call_in_pg_popcount.patch.txt) at 2024-03-17 20:56:32 from David Rowley <dgrowleyml at gmail.com> (Patch: Yes)
    Attachment (v8-0001-Refactor-POPCNT-code-refactored-for-future-accelerat.patch) at 2024-03-14 19:50:46 from "Amonson, Paul D" <paul.d.amonson at intel.com> (Patch: Yes)
    Attachment (v7-0001-Refactor-POPCNT.patch) at 2024-03-11 21:59:53 from "Amonson, Paul D" <paul.d.amonson at intel.com> (Patch: Yes)
    Attachment (v6-0001-Add-support-for-AVX512-implemented-POPCNT.patch) at 2024-03-05 16:31:15 from "Amonson, Paul D" <paul.d.amonson at intel.com> (Patch: Yes)
    Attachment (v5-0001-Add-support-for-AVX512-implemented-POPCNT.patch) at 2024-03-04 21:39:36 from "Amonson, Paul D" <paul.d.amonson at intel.com> (Patch: Yes)
    Attachment (v5-0001-Add-support-for-AVX512-implemented-POPCNT.patch) at 2024-02-27 20:46:06 from "Amonson, Paul D" <paul.d.amonson at intel.com> (Patch: Yes)
    Attachment (v4-0001-Add-support-for-AVX512-implemented-POPCNT.patch) at 2024-02-09 17:39:46 from "Amonson, Paul D" <paul.d.amonson at intel.com> (Patch: Yes)
    Attachment (v3-0001-Add-support-for-AVX512-implemented-POPCNT.patch) at 2024-02-07 10:13:14 from Alvaro Herrera <alvherre at alvh.no-ip.org> (Patch: Yes)
    Attachment (Official-PostgreSQL-AVX-512-POPCNT.patch) at 2024-02-06 18:16:23 from "Amonson, Paul D" <paul.d.amonson at intel.com> (Patch: Yes)
    Attachment (perf-avx512-1.8mrows.svg) at 2024-01-25 05:43:41 from "Shankaran, Akash" <akash.shankaran at intel.com> (Patch: No)
    Attachment (proposed_popcnt.patch) at 2023-11-15 20:27:57 from "Shankaran, Akash" <akash.shankaran at intel.com> (Patch: Yes)
    Attachment (ifunc_test.patch) at 2023-11-07 20:14:41 from Nathan Bossart <nathandbossart at gmail.com> (Patch: Yes)
    Attachment (AVX512 Popcount Benefits.png) at 2023-11-02 14:22:10 from "Amonson, Paul D" <paul.d.amonson at intel.com> (Patch: No)
History
When Who What
2024-11-07 20:02:31 Nathan Bossart (bossartn) Closed in commitfest 2024-11 with status: Committed
2024-11-07 20:02:30 Nathan Bossart (bossartn) Changed committer to bossartn
2024-10-30 20:53:10 Raghuveer Devulapalli (rdevulap) Posted comment with messageid <173032159044.1162.17669652767784249811.pgcf@coridan.postgresql.org>
2024-10-29 19:23:58 Raghuveer Devulapalli (rdevulap) Posted review with messageid <173022983862.1162.9439822012408182864.pgcf@coridan.postgresql.org>
2024-10-29 19:23:58 Raghuveer Devulapalli (rdevulap) New status: Ready for Committer
2024-10-16 21:05:19 Nathan Bossart (bossartn) Changed authors to Nathan Bossart (bossartn)
2024-10-16 21:05:19 Nathan Bossart (bossartn) Changed targetversion to 18
2024-10-16 21:05:10 Nathan Bossart (bossartn) Attached mail thread BL1PR11MB5304097DF7EA81D04C33F3D1DCA6A@BL1PR11MB5304.namprd11.prod.outlook.com
2024-10-16 21:05:10 Nathan Bossart (bossartn) Created patch record
Edit