From patchwork Tue Jun 4 13:11:33 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Lionel Landwerlin X-Patchwork-Id: 10974951 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 51A0A92A for ; Tue, 4 Jun 2019 13:11:48 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 4136C203B9 for ; Tue, 4 Jun 2019 13:11:48 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 2BD93287AB; Tue, 4 Jun 2019 13:11:48 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-5.2 required=2.0 tests=BAYES_00,MAILING_LIST_MULTI, RCVD_IN_DNSWL_MED autolearn=ham version=3.3.1 Received: from gabe.freedesktop.org (gabe.freedesktop.org [131.252.210.177]) (using TLSv1.2 with cipher DHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.wl.linuxfoundation.org (Postfix) with ESMTPS id D9BA5203B9 for ; Tue, 4 Jun 2019 13:11:47 +0000 (UTC) Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id C73F68957B; Tue, 4 Jun 2019 13:11:46 +0000 (UTC) X-Original-To: intel-gfx@lists.freedesktop.org Delivered-To: intel-gfx@lists.freedesktop.org Received: from mga17.intel.com (mga17.intel.com [192.55.52.151]) by gabe.freedesktop.org (Postfix) with ESMTPS id 5B3C78957B for ; Tue, 4 Jun 2019 13:11:45 +0000 (UTC) X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from fmsmga003.fm.intel.com ([10.253.24.29]) by fmsmga107.fm.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 04 Jun 2019 06:11:45 -0700 X-ExtLoop1: 1 Received: from bblokx-mobl.ger.corp.intel.com (HELO delly.ger.corp.intel.com) ([10.249.139.199]) by FMSMGA003.fm.intel.com with ESMTP; 04 Jun 2019 06:11:43 -0700 From: Lionel Landwerlin To: intel-gfx@lists.freedesktop.org Date: Tue, 4 Jun 2019 16:11:33 +0300 Message-Id: <20190604131140.12647-1-lionel.g.landwerlin@intel.com> X-Mailer: git-send-email 2.21.0.392.gf8f6787159e MIME-Version: 1.0 Subject: [Intel-gfx] [PATCH v3 0/7] drm/i915: Vulkan performance query support X-BeenThere: intel-gfx@lists.freedesktop.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: Intel graphics driver community testing & development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" X-Virus-Scanned: ClamAV using ClamSMTP Hi all, This is a pretty big update following v2. The first big change is to drop the HW arbitration usage in favor of a software mechanism using a special priority in the scheduler. The second is a rework of the uAPI. Since we have a couple of execbuf uAPI changes for this series (VK_INTEL_performance_query) & timeline semaphores, we can come up with a more generic mechanism that could be extended in the future. Rather than reusing partially deprecated fields. Unfortunately (or not!) that requires timeline semaphores to be added to the series because we need to use cliprects_ptr that is already used by FENCE_ARRAY. Cheers, Lionel Landwerlin (7): drm/i915/perf: introduce a versioning of the i915-perf uapi drm/i915/perf: allow for CS OA configs to be created lazily drm/i915: introduce a mechanism to extend execbuf2 drm/i915: add syncobj timeline support drm/i915: add a new perf configuration execbuf parameter drm/i915/perf: allow holding preemption on filtered ctx drm/i915: add support for perf configuration queries .../gpu/drm/i915/gem/i915_gem_execbuffer.c | 437 +++++++++++++++--- drivers/gpu/drm/i915/gt/intel_engine_types.h | 7 + drivers/gpu/drm/i915/gt/intel_gpu_commands.h | 1 + drivers/gpu/drm/i915/gt/intel_lrc.c | 7 + drivers/gpu/drm/i915/gt/intel_ringbuffer.c | 4 +- drivers/gpu/drm/i915/i915_drv.c | 11 +- drivers/gpu/drm/i915/i915_drv.h | 37 +- drivers/gpu/drm/i915/i915_perf.c | 197 ++++++-- drivers/gpu/drm/i915/i915_priolist_types.h | 7 + drivers/gpu/drm/i915/i915_query.c | 279 +++++++++++ drivers/gpu/drm/i915/i915_request.c | 1 + drivers/gpu/drm/i915/i915_request.h | 1 + drivers/gpu/drm/i915/intel_guc_submission.c | 6 + include/uapi/drm/i915_drm.h | 211 ++++++++- 14 files changed, 1109 insertions(+), 97 deletions(-) --- 2.21.0.392.gf8f6787159e