diff --git a/.pick_status.json b/.pick_status.json index 63e1448578b..135c58431f2 100644 --- a/.pick_status.json +++ b/.pick_status.json @@ -1684,7 +1684,7 @@ "description": "etnaviv/nn: Make parallel jobs disabled by default", "nominated": true, "nomination_type": 1, - "resolution": 0, + "resolution": 1, "main_sha": null, "because_sha": "d6473ce28ee0f36890e24b3832cd53d3ed5e98e7", "notes": null diff --git a/src/gallium/drivers/etnaviv/etnaviv_debug.h b/src/gallium/drivers/etnaviv/etnaviv_debug.h index 12a4165d768..3245855f7c3 100644 --- a/src/gallium/drivers/etnaviv/etnaviv_debug.h +++ b/src/gallium/drivers/etnaviv/etnaviv_debug.h @@ -62,7 +62,7 @@ enum etna_dbg { ETNA_DBG_LINEAR_PE = BITFIELD_BIT(25), /* Enable linear PE */ ETNA_DBG_NO_MSAA = BITFIELD_BIT(26), /* Disable MSAA */ ETNA_DBG_SHARED_TS = BITFIELD_BIT(27), /* Enable TS sharing */ - ETNA_DBG_NPU_NO_PARALLEL = BITFIELD_BIT(28), /* Disable parallelism inside NPU batches */ + ETNA_DBG_NPU_PARALLEL = BITFIELD_BIT(28), /* Enable parallelism inside NPU batches (unsafe) */ ETNA_DBG_NPU_NO_BATCHING = BITFIELD_BIT(29), /* Disable batching NPU jobs */ }; diff --git a/src/gallium/drivers/etnaviv/etnaviv_ml.c b/src/gallium/drivers/etnaviv/etnaviv_ml.c index 659c588f38a..559e60e5ed9 100644 --- a/src/gallium/drivers/etnaviv/etnaviv_ml.c +++ b/src/gallium/drivers/etnaviv/etnaviv_ml.c @@ -342,7 +342,7 @@ close_batch(struct pipe_context *pctx) struct etna_cmd_stream *stream = ctx->stream; unsigned cache = VIVS_GL_FLUSH_CACHE_DEPTH | VIVS_GL_FLUSH_CACHE_COLOR | VIVS_GL_FLUSH_CACHE_UNK10; - if (DBG_ENABLED(ETNA_DBG_NPU_NO_PARALLEL)) + if (!DBG_ENABLED(ETNA_DBG_NPU_PARALLEL)) cache |= VIVS_GL_FLUSH_CACHE_UNK11 | VIVS_GL_FLUSH_CACHE_SHADER_L1; etna_set_state(stream, VIVS_GL_FLUSH_CACHE, cache); diff --git a/src/gallium/drivers/etnaviv/etnaviv_ml_nn.c b/src/gallium/drivers/etnaviv/etnaviv_ml_nn.c index b55002f94d4..9fe4b83242f 100644 --- a/src/gallium/drivers/etnaviv/etnaviv_ml_nn.c +++ b/src/gallium/drivers/etnaviv/etnaviv_ml_nn.c @@ -1377,7 +1377,7 @@ etna_ml_emit_operation_nn(struct etna_ml_subgraph *subgraph, unsigned offset = idx + 1; unsigned nn_config = VIVS_GL_NN_CONFIG_NN_CORE_COUNT(0x0); /* This disables power control of NN cores and enables all of them */ - if (DBG_ENABLED(ETNA_DBG_NPU_NO_PARALLEL)) { + if (!DBG_ENABLED(ETNA_DBG_NPU_PARALLEL)) { nn_config |= VIVS_GL_NN_CONFIG_SMALL_BATCH; offset = 0; } diff --git a/src/gallium/drivers/etnaviv/etnaviv_ml_tp.c b/src/gallium/drivers/etnaviv/etnaviv_ml_tp.c index 1433f9595fd..3aa8364662e 100644 --- a/src/gallium/drivers/etnaviv/etnaviv_ml_tp.c +++ b/src/gallium/drivers/etnaviv/etnaviv_ml_tp.c @@ -759,7 +759,7 @@ etna_ml_emit_operation_tp(struct etna_ml_subgraph *subgraph, unsigned tp_core_count = ctx->screen->specs.tp_core_count; struct etna_cmd_stream *stream = ctx->stream; bool more_than_one_tp_job = operation->configs[1] != NULL; - bool parallel = !DBG_ENABLED(ETNA_DBG_NPU_NO_PARALLEL); + bool parallel = DBG_ENABLED(ETNA_DBG_NPU_PARALLEL); for (unsigned j = 0; j < tp_core_count && operation->configs[j]; j++) { unsigned offset = parallel ? idx + 1 : 0; diff --git a/src/gallium/drivers/etnaviv/etnaviv_screen.c b/src/gallium/drivers/etnaviv/etnaviv_screen.c index 499e3adce83..19a6a98ad8f 100644 --- a/src/gallium/drivers/etnaviv/etnaviv_screen.c +++ b/src/gallium/drivers/etnaviv/etnaviv_screen.c @@ -77,7 +77,7 @@ static const struct debug_named_value etna_debug_options[] = { {"no_msaa", ETNA_DBG_NO_MSAA, "Disable MSAA support"}, {"shared_ts", ETNA_DBG_SHARED_TS, "Enable TS sharing"}, {"perf", ETNA_DBG_PERF, "Enable performance warnings"}, - {"npu_no_parallel",ETNA_DBG_NPU_NO_PARALLEL, "Disable parallelism inside NPU batches"}, + {"npu_parallel", ETNA_DBG_NPU_PARALLEL, "Enable parallelism inside NPU batches (unsafe)"}, {"npu_no_batching",ETNA_DBG_NPU_NO_BATCHING, "Disable batching NPU jobs"}, DEBUG_NAMED_VALUE_END };