20
20
== Notice
21
21
22
22
[%hardbreaks]
23
- Copyright (C) 2022-2022 Intel Corporation. All rights reserved.
23
+ Copyright (C) 2022-2023 Intel Corporation. All rights reserved.
24
24
25
25
Khronos(R) is a registered trademark and SYCL(TM) and SPIR(TM) are trademarks
26
26
of The Khronos Group Inc. OpenCL(TM) is a trademark of Apple Inc. used by
@@ -65,7 +65,7 @@ new partitioning type
65
65
`info::partition_property::ext_intel_partition_by_cslice`.
66
66
67
67
The only Intel GPU devices that currently support this type of partitioning
68
- are the Data Center GPU Max series (aka PVC), and this support is only
68
+ are the Intel(R) Data Center GPU Max Series (aka PVC), and this support is only
69
69
available when the device driver is configured in {multi-CCS}[multi-CCS] mode.
70
70
See that documentation for instructions on how to enable this mode and for
71
71
other important information. Currently, it is only possible to partition a
@@ -83,20 +83,20 @@ be further partitioned by `ext_intel_partition_by_cslice`.
83
83
84
84
It is important to understand that the device driver virtualizes work
85
85
submission to the cslice sub-devices. (More specifically, the device driver
86
- virtualizes work submission to different CCS-es, and this means that on Data
87
- Center GPU Max series devices the work submission to a cslice is virtualized.)
88
- This virtualization happens only between processes, and not within a single
89
- process. For example, consider a single process that constructs two SYCL
90
- queues on cslice sub-device #0. Kernels submitted to these two queues are
91
- guaranteed to conflict, both using the same set of execution units. Therefore,
92
- if a single process wants to explicitly submit kernels to cslice sub-devices
93
- and it wants to avoid conflict, it should create queues on different
94
- sub-devices. By contrast, consider an example where two separate processes
95
- create a SYCL queue on cslice sub-device #0. In this case, the device driver
96
- virtualizes access to this cslice, and kernels submitted from the first process
97
- may run on different execution units than kernels submitted from the second
98
- process. In this second case, the device driver binds the process's requested
99
- cslice to a physical cslice according to the overall system load.
86
+ virtualizes work submission to different CCS-es, and this means that on
87
+ Intel(R) Data Center GPU Max Series devices the work submission to a cslice is
88
+ virtualized.) This virtualization happens only between processes, and not
89
+ within a single process. For example, consider a single process that
90
+ constructs two SYCL queues on cslice sub-device #0. Kernels submitted to these
91
+ two queues are guaranteed to conflict, both using the same set of execution
92
+ units. Therefore, if a single process wants to explicitly submit kernels to
93
+ cslice sub-devices and it wants to avoid conflict, it should create queues on
94
+ different sub-devices. By contrast, consider an example where two separate
95
+ processes create a SYCL queue on cslice sub-device #0. In this case, the
96
+ device driver virtualizes access to this cslice, and kernels submitted from the
97
+ first process may run on different execution units than kernels submitted from
98
+ the second process. In this second case, the device driver binds the process's
99
+ requested cslice to a physical cslice according to the overall system load.
100
100
101
101
Note that this extension can be supported by any implementation. If an
102
102
implementation supports a backend or device without the concept of cslice
0 commit comments