CXPACKET waits occur when parallel worker threads exchange packets via the Exchange iterator. In SQL Server 2016 SP2+ and 2017+, harmless coordinator idle time is segregated into CXCONSUMER.
Persistent high CXPACKET accompanied by high CPU indicates thread imbalance, stale statistics causing skewed cardinality estimates, or default unoptimized MAXDOP and Cost Threshold for Parallelism settings.