I did some testing on my equipment and want to share my findings. I will try to do some testing and report back.
I’m also not sure if darktable is even using the LUT in the “XYZ LUT + matrix” default profile produced by Displa圜AL or if it’s falling back to the matrix.
Both LUT-based and matrix-based profiles may include calibration curves which can be loaded into a video card’s gamma table hardware. Note: LUT-based profiles (which contain three-dimensional LUTs) might be confused with video card LUT (calibration) curves (one-dimensional LUTs), but they’re two different things. Lab or XYZ can be used as PCS, with XYZ being recommended especially for wide-gamut displays bacause their primaries might exceed the ICC Lab encoding range (Note: Under Windows, XYZ LUT types are only available in Displa圜AL if using ArgyllCMS >= 1.1.0 because of a requirement for matrix tags in the profile, which are not created by prior ArgyllCMS versions). When choosing a LUT based profile type, advanced gamut mapping options become available which you can use to create perceptual and/or saturation tables inside the profile in addition to the default colorimetric tables which are always created. LUT based profiles are larger in filesize, more accurate (but may sacrifice smoothness), in some cases less compatible (applications might not be able to use or show bugs/quirks with LUT type profiles, or certain variations of them). A single curve or gamma can be used if individual curves or gamma values degrade the gray balance of an otherwise good calibration. Curves are more accurate than gamma values. You can choose between using individual curves for each channel (red, green and blue), a single curve for all channels, individual gamma values for each channel or a single gamma for all channels. For matrix based profiles, the PCS is always XYZ. Matrix based profiles are smaller in filesize, somewhat less accurate (though in most cases smoother) compared to LUT based types, and usually have the best compatibility across CMMs, applications and systems - but only support the colorimetric intent for color transforms. Generally you can differentiate between two types of profiles: LUT based and matrix based. I found this in the Displa圜AL documentation, but it does not discuss the matter of whether an XYZ LUT is only valid at a single white level: