@@ -189,11 +189,26 @@ class IntelTargetInfo<string Name, list<Aspect> Aspects, list<int> subGroupSizes
189189// Note: only the "canonical" target names are listed here - see
190190// SYCL::gen::resolveGenDevice().
191191//
192- // TODO: instructions on how to get "???" values below are required. Currently
193- // device architectures below which have "???" in it are not fully supported.
194- //
195- // def : IntelTargetInfo<"intel_gpu_ptl_u", ???, ???>;
196- // def : IntelTargetInfo<"intel_gpu_ptl_h", ???, ???>;
192+ // When adding the new Intel architectures, the ideal way to get these
193+ // values is to run sycl-ls --verbose on the target machine. However,
194+ // if you don't have access to the target machine, then you can look in
195+ // the intel/compute-runtime source code to get the values. For
196+ // the fp64 and atomic64 aspects, look for the definition
197+ // of specific RuntimeCapabilityTable's. These will be defined in
198+ // a file called hw_info_<device>.cpp. For example, for PVC, it
199+ // would be hw_info_pvc.cpp. For fp16, this is supported by all
200+ // Intel GPUs currently. (see definition of getDeviceExtensions in
201+ // compiler_product_helper_base.inl). For the supported sub-group sizes,
202+ // it is not as straightforward. They are defined per family in
203+ // GfxCoreHelperHw<Family>::getDeviceSubGroupSizes and by default
204+ // the default sub-group sizes are 8, 16, and 32. (see gfx_core_helper_base.inl)
205+ // However, this can be overriden by specific families. For example,
206+ // gfx_core_helper_xe_hpc_core.cpp defines the supported sub-group
207+ // sizes to be 16 and 32, which corresponds to PVC having 16 and 32
208+ // as sub-group sizes the supported sub-group sizes.
209+
210+ def : IntelTargetInfo<"intel_gpu_ptl_u", Fp16Fp64Atomic64, Sg16_32>;
211+ def : IntelTargetInfo<"intel_gpu_ptl_h", Fp16Fp64Atomic64, Sg16_32>;
197212def : IntelTargetInfo<"intel_gpu_lnl_m", Fp16Fp64Atomic64, Sg16_32>;
198213def : IntelTargetInfo<"intel_gpu_bmg_g21", Fp16Fp64Atomic64, Sg16_32>;
199214def : IntelTargetInfo<"intel_gpu_arl_h", Fp16Fp64Atomic64, Sg8_16_32>;
0 commit comments