[Mesa-dev] [PATCH 07/11] intel/compiler/icl: Set the condition for dependency control on gen11+
Matt Turner
mattst88 at gmail.com
Wed Mar 21 21:54:47 UTC 2018
On Wed, Mar 21, 2018 at 2:51 PM, Kenneth Graunke <kenneth at whitecape.org> wrote:
> On Wednesday, March 21, 2018 2:06:18 PM PDT Matt Turner wrote:
>> From: Anuj Phogat <anuj.phogat at gmail.com>
>>
>> When source or destination datatype is 64b or operation is integer
>> DWord multiply, DepCtrl must not be used.
>> We had this restriction on few previous intel platforms. It has been
>> brought back on Gen11+.
>> ---
>> src/intel/compiler/brw_vec4.cpp | 8 ++++++--
>> 1 file changed, 6 insertions(+), 2 deletions(-)
>>
>> diff --git a/src/intel/compiler/brw_vec4.cpp b/src/intel/compiler/brw_vec4.cpp
>> index e4838146ac1..bb668b2538a 100644
>> --- a/src/intel/compiler/brw_vec4.cpp
>> +++ b/src/intel/compiler/brw_vec4.cpp
>> @@ -984,15 +984,19 @@ vec4_visitor::is_dep_ctrl_unsafe(const vec4_instruction *inst)
>> * SKL PRMs don't include this restriction, however, gen7 seems to be
>> * affected, at least by the 64b restriction, since DepCtrl with double
>> * precision instructions seems to produce GPU hangs in some cases.
>> + *
>> + * This restriction is back in ICL+ platforms.
>> */
>> - if (devinfo->gen == 8 || gen_device_info_is_9lp(devinfo)) {
>> + if (devinfo->gen == 8 ||
>> + gen_device_info_is_9lp(devinfo) ||
>> + devinfo->gen >= 11) {
>> if (inst->opcode == BRW_OPCODE_MUL &&
>> IS_DWORD(inst->src[0]) &&
>> IS_DWORD(inst->src[1]))
>> return true;
>> }
>>
>> - if (devinfo->gen >= 7 && devinfo->gen <= 8) {
>> + if ((devinfo->gen >= 7 && devinfo->gen <= 8) || devinfo->gen >= 11) {
>> if (IS_64BIT(inst->dst) || IS_64BIT(inst->src[0]) ||
>> IS_64BIT(inst->src[1]) || IS_64BIT(inst->src[2]))
>> return true;
>>
>
> Patch is bogus. Gen10+ doesn't and Gen11+ /cannot/ use the vec4
> backend, so why are we updating it with Gen11 code?
Right you are. Dropped.
More information about the mesa-dev
mailing list