Skip to content

Commit d29340a

Browse files
committed
Add previously deleted test
1 parent 343c4c7 commit d29340a

File tree

1 file changed

+81
-0
lines changed

1 file changed

+81
-0
lines changed

cuda_bindings/tests/test_cufile.py

Lines changed: 81 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1904,6 +1904,87 @@ def test_set_get_parameter_size_t():
19041904
cufileVersionLessThan(1140), reason="cuFile parameter APIs require cuFile library version 1.14.0 or later"
19051905
)
19061906

1907+
def test_set_get_parameter_bool():
1908+
"""Test setting and getting boolean parameters with cuFile validation."""
1909+
1910+
# Initialize CUDA
1911+
(err,) = cuda.cuInit(0)
1912+
assert err == cuda.CUresult.CUDA_SUCCESS
1913+
1914+
err, device = cuda.cuDeviceGet(0)
1915+
assert err == cuda.CUresult.CUDA_SUCCESS
1916+
1917+
err, ctx = cuda.cuDevicePrimaryCtxRetain(device)
1918+
assert err == cuda.CUresult.CUDA_SUCCESS
1919+
(err,) = cuda.cuCtxSetCurrent(ctx)
1920+
assert err == cuda.CUresult.CUDA_SUCCESS
1921+
1922+
try:
1923+
# Test setting and getting various boolean parameters
1924+
1925+
# Test poll mode
1926+
cufile.set_parameter_bool(cufile.BoolConfigParameter.PROPERTIES_USE_POLL_MODE, True)
1927+
retrieved_value = cufile.get_parameter_bool(cufile.BoolConfigParameter.PROPERTIES_USE_POLL_MODE)
1928+
assert retrieved_value is True, f"Poll mode mismatch: set True, got {retrieved_value}"
1929+
1930+
# Test compatibility mode
1931+
cufile.set_parameter_bool(cufile.BoolConfigParameter.PROPERTIES_ALLOW_COMPAT_MODE, False)
1932+
retrieved_value = cufile.get_parameter_bool(cufile.BoolConfigParameter.PROPERTIES_ALLOW_COMPAT_MODE)
1933+
assert retrieved_value is False, f"Compatibility mode mismatch: set False, got {retrieved_value}"
1934+
1935+
# Test force compatibility mode
1936+
cufile.set_parameter_bool(cufile.BoolConfigParameter.FORCE_COMPAT_MODE, False)
1937+
retrieved_value = cufile.get_parameter_bool(cufile.BoolConfigParameter.FORCE_COMPAT_MODE)
1938+
assert retrieved_value is False, f"Force compatibility mode mismatch: set False, got {retrieved_value}"
1939+
1940+
# Test aggressive API check
1941+
cufile.set_parameter_bool(cufile.BoolConfigParameter.FS_MISC_API_CHECK_AGGRESSIVE, True)
1942+
retrieved_value = cufile.get_parameter_bool(cufile.BoolConfigParameter.FS_MISC_API_CHECK_AGGRESSIVE)
1943+
assert retrieved_value is True, f"Aggressive API check mismatch: set True, got {retrieved_value}"
1944+
1945+
# Test parallel IO
1946+
cufile.set_parameter_bool(cufile.BoolConfigParameter.EXECUTION_PARALLEL_IO, True)
1947+
retrieved_value = cufile.get_parameter_bool(cufile.BoolConfigParameter.EXECUTION_PARALLEL_IO)
1948+
assert retrieved_value is True, f"Parallel IO mismatch: set True, got {retrieved_value}"
1949+
1950+
# Test NVTX profiling
1951+
cufile.set_parameter_bool(cufile.BoolConfigParameter.PROFILE_NVTX, False)
1952+
retrieved_value = cufile.get_parameter_bool(cufile.BoolConfigParameter.PROFILE_NVTX)
1953+
assert retrieved_value is False, f"NVTX profiling mismatch: set False, got {retrieved_value}"
1954+
1955+
# Test system memory allowance
1956+
cufile.set_parameter_bool(cufile.BoolConfigParameter.PROPERTIES_ALLOW_SYSTEM_MEMORY, True)
1957+
retrieved_value = cufile.get_parameter_bool(cufile.BoolConfigParameter.PROPERTIES_ALLOW_SYSTEM_MEMORY)
1958+
assert retrieved_value is True, f"System memory allowance mismatch: set True, got {retrieved_value}"
1959+
1960+
# Test PCI P2P DMA
1961+
cufile.set_parameter_bool(cufile.BoolConfigParameter.USE_PCIP2PDMA, True)
1962+
retrieved_value = cufile.get_parameter_bool(cufile.BoolConfigParameter.USE_PCIP2PDMA)
1963+
assert retrieved_value is True, f"PCI P2P DMA mismatch: set True, got {retrieved_value}"
1964+
1965+
# Test IO uring preference
1966+
cufile.set_parameter_bool(cufile.BoolConfigParameter.PREFER_IO_URING, False)
1967+
retrieved_value = cufile.get_parameter_bool(cufile.BoolConfigParameter.PREFER_IO_URING)
1968+
assert retrieved_value is False, f"IO uring preference mismatch: set False, got {retrieved_value}"
1969+
1970+
# Test force O_DIRECT mode
1971+
cufile.set_parameter_bool(cufile.BoolConfigParameter.FORCE_ODIRECT_MODE, True)
1972+
retrieved_value = cufile.get_parameter_bool(cufile.BoolConfigParameter.FORCE_ODIRECT_MODE)
1973+
assert retrieved_value is True, f"Force O_DIRECT mode mismatch: set True, got {retrieved_value}"
1974+
1975+
# Test topology detection skip
1976+
cufile.set_parameter_bool(cufile.BoolConfigParameter.SKIP_TOPOLOGY_DETECTION, False)
1977+
retrieved_value = cufile.get_parameter_bool(cufile.BoolConfigParameter.SKIP_TOPOLOGY_DETECTION)
1978+
assert retrieved_value is False, f"Topology detection skip mismatch: set False, got {retrieved_value}"
1979+
1980+
# Test stream memops bypass
1981+
cufile.set_parameter_bool(cufile.BoolConfigParameter.STREAM_MEMOPS_BYPASS, True)
1982+
retrieved_value = cufile.get_parameter_bool(cufile.BoolConfigParameter.STREAM_MEMOPS_BYPASS)
1983+
assert retrieved_value is True, f"Stream memops bypass mismatch: set True, got {retrieved_value}"
1984+
1985+
finally:
1986+
cuda.cuDevicePrimaryCtxRelease(device)
1987+
19071988
def test_set_get_parameter_string():
19081989
"""Test setting and getting string parameters with cuFile validation."""
19091990

0 commit comments

Comments
 (0)