Skip to content

Commit b93f2fe

Browse files
committed
Address comment from Jaime
1 parent 6d7448a commit b93f2fe

File tree

1 file changed

+15
-13
lines changed

1 file changed

+15
-13
lines changed

sycl/doc/extensions/proposed/sycl_ext_intel_cslice.asciidoc

Lines changed: 15 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -83,19 +83,21 @@ Therefore, a device must first be partitioned into per-tile sub-devices via
8383
be further partitioned by `ext_intel_partition_by_cslice`.
8484

8585
It is important to understand that the device driver virtualizes work
86-
submission to the cslice sub-devices. This virtualization happens only between
87-
processes, and not within a single process. For example, consider a single
88-
process that constructs two SYCL queues on cslice sub-device #0. Kernels
89-
submitted to these two queues are guaranteed to conflict, both using the same
90-
set of execution units. Therefore, if a single process wants to explicitly
91-
submit kernels to cslice sub-devices and it wants to avoid conflict, it should
92-
create queues on different sub-devices. By contrast, consider an example where
93-
two separate processes create a SYCL queue on cslice sub-device #0. In this
94-
case, the device driver virtualizes access to this cslice, and kernels
95-
submitted from the first process may run on different execution units than
96-
kernels submitted from the second process. In this second case, the device
97-
driver binds the process's requested cslice to a physical cslice according to
98-
the overall system load.
86+
submission to the cslice sub-devices. (More specifically, the device driver
87+
virtualizes work submission to different CCS-es, and this means that on PVC
88+
the work submission to a cslice is virtualized.) This virtualization happens
89+
only between processes, and not within a single process. For example, consider
90+
a single process that constructs two SYCL queues on cslice sub-device #0.
91+
Kernels submitted to these two queues are guaranteed to conflict, both using
92+
the same set of execution units. Therefore, if a single process wants to
93+
explicitly submit kernels to cslice sub-devices and it wants to avoid conflict,
94+
it should create queues on different sub-devices. By contrast, consider an
95+
example where two separate processes create a SYCL queue on cslice sub-device
96+
#0. In this case, the device driver virtualizes access to this cslice, and
97+
kernels submitted from the first process may run on different execution units
98+
than kernels submitted from the second process. In this second case, the
99+
device driver binds the process's requested cslice to a physical cslice
100+
according to the overall system load.
99101

100102
Note that this extension can be supported by any implementation. If an
101103
implementation supports a backend or device without the concept of cslice

0 commit comments

Comments
 (0)