@@ -224,7 +224,7 @@ def _cached_filter_string(d : SyclDevice):
224
224
and cached with `functools.cache`.
225
225
226
226
Args:
227
- d (dpctl.SyclDevice):
227
+ d (:class:` dpctl.SyclDevice` ):
228
228
A device for which to compute the filter string.
229
229
Returns:
230
230
out(str):
@@ -1797,24 +1797,30 @@ cdef class SyclDevice(_SyclDevice):
1797
1797
return _get_devices(cDVRef)
1798
1798
1799
1799
def can_access_peer_access_supported (self , peer ):
1800
- """ Returns ``True`` if `self` can enable peer access
1801
- to `peer`, ``False`` otherwise.
1800
+ """ Returns ``True`` if this device (``self``) can enable peer access
1801
+ to USM device memory on ``peer``, ``False`` otherwise.
1802
+
1803
+ If peer access is supported, it may be enabled by calling
1804
+ :meth:`.enable_peer_access`.
1805
+
1806
+ For details, see
1807
+ :oneapi_peer_access:`DPC++ peer access SYCL extension <>`.
1802
1808
1803
1809
Args:
1804
- peer (dpctl.SyclDevice):
1805
- The :class:`dpctl.SyclDevice` instance to
1806
- check .
1810
+ peer (:class:` dpctl.SyclDevice` ):
1811
+ The :class:`dpctl.SyclDevice` instance to check for peer access
1812
+ by this device .
1807
1813
1808
1814
Returns:
1809
1815
bool:
1810
- ``True`` if `self` can enable peer access
1811
- to ` peer`, otherwise ``False``.
1816
+ ``True`` if this device may access USM device memory on
1817
+ `` peer`` when peer access is enabled , otherwise ``False``.
1812
1818
1813
1819
Raises:
1814
1820
TypeError:
1815
- If `peer` is not `dpctl.SyclDevice`.
1821
+ If `` peer`` is not :class: `dpctl.SyclDevice`.
1816
1822
ValueError:
1817
- If the backend associated with `self` or `peer` does not
1823
+ If the backend associated with this device or `` peer` ` does not
1818
1824
support peer access.
1819
1825
"""
1820
1826
cdef SyclDevice p_dev
@@ -1855,25 +1861,32 @@ cdef class SyclDevice(_SyclDevice):
1855
1861
)
1856
1862
1857
1863
def can_access_peer_atomics_supported (self , peer ):
1858
- """ Returns ``True`` if `self` can enable peer access
1859
- to and can atomically modify memory on `peer`, ``False`` otherwise.
1864
+ """ Returns ``True`` if this device (``self``) can concurrently access
1865
+ and modify USM device memory on ``peer`` when peer access is enabled,
1866
+ ``False`` otherwise.
1867
+
1868
+ If peer access is supported, it may be enabled by calling
1869
+ :meth:`.enable_peer_access`.
1870
+
1871
+ For details, see
1872
+ :oneapi_peer_access:`DPC++ peer access SYCL extension <>`.
1860
1873
1861
1874
Args:
1862
- peer (dpctl.SyclDevice):
1863
- The :class:`dpctl.SyclDevice` instance to
1864
- check .
1875
+ peer (:class:` dpctl.SyclDevice` ):
1876
+ The :class:`dpctl.SyclDevice` instance to check for concurrent
1877
+ peer access and modification by this device .
1865
1878
1866
1879
Returns:
1867
1880
bool:
1868
- ``True`` if `self` can enable peer access
1869
- to and can atomically modify memory on `peer`,
1881
+ ``True`` if this device may concurrently access and modify USM
1882
+ device memory on `` peer`` when peer access is enabled ,
1870
1883
otherwise ``False``.
1871
1884
1872
1885
Raises:
1873
1886
TypeError:
1874
- If `peer` is not `dpctl.SyclDevice`.
1887
+ If `` peer`` is not :class: `dpctl.SyclDevice`.
1875
1888
ValueError:
1876
- If the backend associated with `self` or `peer` does not
1889
+ If the backend associated with this device or `` peer` ` does not
1877
1890
support peer access.
1878
1891
"""
1879
1892
cdef SyclDevice p_dev
@@ -1914,19 +1927,24 @@ cdef class SyclDevice(_SyclDevice):
1914
1927
)
1915
1928
1916
1929
def enable_peer_access (self , peer ):
1917
- """ Enables this device (`self`) to access USM device allocations
1918
- located on `peer`.
1930
+ """ Enables this device (``self``) to access USM device allocations
1931
+ located on ``peer``.
1932
+
1933
+ Peer access may be disabled by calling :meth:`.disable_peer_access`.
1934
+
1935
+ For details, see
1936
+ :oneapi_peer_access:`DPC++ peer access SYCL extension <>`.
1919
1937
1920
1938
Args:
1921
- peer (dpctl.SyclDevice):
1922
- The :class:`dpctl.SyclDevice` instance to
1923
- enable peer access to.
1939
+ peer (:class:` dpctl.SyclDevice` ):
1940
+ The :class:`dpctl.SyclDevice` instance to enable peer access
1941
+ to.
1924
1942
1925
1943
Raises:
1926
1944
TypeError:
1927
- If `peer` is not `dpctl.SyclDevice`.
1945
+ If `` peer`` is not :class: `dpctl.SyclDevice`.
1928
1946
ValueError:
1929
- If the backend associated with `self` or `peer` does not
1947
+ If the backend associated with this device or `` peer` ` does not
1930
1948
support peer access.
1931
1949
"""
1932
1950
cdef SyclDevice p_dev
@@ -1966,18 +1984,21 @@ cdef class SyclDevice(_SyclDevice):
1966
1984
return
1967
1985
1968
1986
def disable_peer_access (self , peer ):
1969
- """ Disables peer access to `peer` from `self`.
1987
+ """ Disables peer access to ``peer`` from this device (``self``).
1988
+
1989
+ For details, see
1990
+ :oneapi_peer_access:`DPC++ peer access SYCL extension <>`.
1970
1991
1971
1992
Args:
1972
- peer (dpctl.SyclDevice):
1993
+ peer (:class:` dpctl.SyclDevice` ):
1973
1994
The :class:`dpctl.SyclDevice` instance to
1974
1995
disable peer access to.
1975
1996
1976
1997
Raises:
1977
1998
TypeError:
1978
- If `peer` is not `dpctl.SyclDevice`.
1999
+ If `` peer`` is not :class: `dpctl.SyclDevice`.
1979
2000
ValueError:
1980
- If the backend associated with `self` or `peer` does not
2001
+ If the backend associated with this device or `` peer` ` does not
1981
2002
support peer access.
1982
2003
"""
1983
2004
cdef SyclDevice p_dev
@@ -2134,7 +2155,7 @@ cdef class SyclDevice(_SyclDevice):
2134
2155
same _device_ref as this SyclDevice.
2135
2156
2136
2157
Args:
2137
- other (dpctl.SyclDevice):
2158
+ other (:class:` dpctl.SyclDevice` ):
2138
2159
A :class:`dpctl.SyclDevice` instance to
2139
2160
compare against.
2140
2161
0 commit comments