All of lore.kernel.org
 help / color / mirror / Atom feed
From: Tao Su <tao1.su@linux.intel.com>
To: qemu-devel@nongnu.org
Cc: pbonzini@redhat.com, mtosatti@redhat.com, xiaoyao.li@intel.com,
	zhao1.liu@intel.com, xuelian.guo@intel.com,
	tao1.su@linux.intel.com
Subject: [PATCH v3 0/8] Add AVX10.1 CPUID support and GraniteRapids-v2 model
Date: Thu, 31 Oct 2024 16:52:25 +0800	[thread overview]
Message-ID: <20241031085233.425388-1-tao1.su@linux.intel.com> (raw)

Add AVX10.1 CPUID support, i.e. add AVX10 support bit via
CPUID.(EAX=07H, ECX=01H):EDX[bit 19] and new CPUID leaf 0x24H so that
guest OS and applications can query the AVX10 CPUIDs directly. The AVX10.1
spec can be found in [1], it is worth mentioning that
VL128 (CPUID.(EAX=24H, ECX=00H):EBX[bit 16]) was dropped in rev3.0, but it
will be added back and reserved as 1 (SDM and AVX10.2 spec[2] have already
described).

Since GraniteRapids (stepping 1) is the first platform to support AVX10,
introduce GraniteRapids-v2 CPU model to add AVX10 in this patch set, and
add some missing features as well.

[1] https://cdrdv2.intel.com/v1/dl/getContent/671200
[2] https://cdrdv2.intel.com/v1/dl/getContent/828965

---
Changelog:

v2->v3:
 - Move assigning avx10_version from max_x86_cpu_realize() to
   x86_cpu_expand_features().
 - Add CPUIDs of vector lengths back in cpu_x86_cpuid().
 - Update comment on x86_cpu_expand_features(). (Zhao)
 - Tell user about revised version if version is invalid. (Zhao)
 - Handle when AVX10 enable bit is disabled but user sets avx10-verion.
   (Zhao)
 - Add Zhao's Reviewed-by and Xuelian's Tested-by.

v2: https://lore.kernel.org/all/20241029151858.550269-1-pbonzini@redhat.com/
v1: https://lore.kernel.org/all/20241028024512.156724-1-tao1.su@linux.intel.com/

---
Paolo Bonzini (3):
  target/i386: cpu: set correct supported XCR0 features for TCG
  target/i386: do not rely on ExtSaveArea for accelerator-supported XCR0
    bits
  target/i386: return bool from x86_cpu_filter_features

Tao Su (5):
  target/i386: add AVX10 feature and AVX10 version property
  target/i386: add CPUID.24 features for AVX10
  target/i386: Add feature dependencies for AVX10
  target/i386: Add AVX512 state when AVX10 is supported
  target/i386: Introduce GraniteRapids-v2 model

 target/i386/cpu.c         | 177 ++++++++++++++++++++++++++++++++++----
 target/i386/cpu.h         |  16 ++++
 target/i386/kvm/kvm-cpu.c |   4 -
 target/i386/kvm/kvm.c     |   3 +-
 4 files changed, 176 insertions(+), 24 deletions(-)


base-commit: 58d49b5895f2e0b5cfe4b2901bf24f3320b74f29
-- 
2.34.1



             reply	other threads:[~2024-10-31  8:59 UTC|newest]

Thread overview: 14+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-10-31  8:52 Tao Su [this message]
2024-10-31  8:52 ` [PATCH v3 1/8] target/i386: cpu: set correct supported XCR0 features for TCG Tao Su
2024-10-31  8:52 ` [PATCH v3 2/8] target/i386: do not rely on ExtSaveArea for accelerator-supported XCR0 bits Tao Su
2024-10-31  8:52 ` [PATCH v3 3/8] target/i386: return bool from x86_cpu_filter_features Tao Su
2024-10-31  8:52 ` [PATCH v3 4/8] target/i386: add AVX10 feature and AVX10 version property Tao Su
2024-10-31 16:52   ` Zhao Liu
2024-11-01  2:09     ` Tao Su
2024-11-01  2:44       ` Zhao Liu
2024-11-01  2:31         ` Tao Su
2024-11-01  2:57           ` Zhao Liu
2024-10-31  8:52 ` [PATCH v3 5/8] target/i386: add CPUID.24 features for AVX10 Tao Su
2024-10-31  8:52 ` [PATCH v3 6/8] target/i386: Add feature dependencies " Tao Su
2024-10-31  8:52 ` [PATCH v3 7/8] target/i386: Add AVX512 state when AVX10 is supported Tao Su
2024-10-31  8:52 ` [PATCH v3 8/8] target/i386: Introduce GraniteRapids-v2 model Tao Su

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20241031085233.425388-1-tao1.su@linux.intel.com \
    --to=tao1.su@linux.intel.com \
    --cc=mtosatti@redhat.com \
    --cc=pbonzini@redhat.com \
    --cc=qemu-devel@nongnu.org \
    --cc=xiaoyao.li@intel.com \
    --cc=xuelian.guo@intel.com \
    --cc=zhao1.liu@intel.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.