1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40
|
import pytest
@pytest.fixture(scope="module", params=["host_to_host",
pytest.param("host_to_cuda", marks=pytest.mark.cuda_memory),
pytest.param("cuda_to_host", marks=pytest.mark.cuda_memory),
pytest.param("cuda_to_cuda", marks=pytest.mark.cuda_memory),
pytest.param("neuron_to_neuron", marks=pytest.mark.neuron_memory),
pytest.param("neuron_to_host", marks=pytest.mark.neuron_memory),
pytest.param("host_to_neuron", marks=pytest.mark.neuron_memory)])
def memory_type(request):
return request.param
@pytest.fixture(scope="module", params=["r:0,4,64",
"r:4048,4,4148",
"r:8000,4,9000",
"r:17000,4,18000",
"r:0,1024,1048576"])
def message_size(request):
return request.param
@pytest.fixture(scope="module", params=["r:0,4,64",
"r:4048,4,4148",
"r:8000,4,9000",])
def inject_message_size(request):
return request.param
@pytest.hookimpl(hookwrapper=True)
def pytest_collection_modifyitems(session, config, items):
# Called after collection has been performed, may filter or re-order the items in-place
# We use this hook to always run the MR exhaustion test at the end
mr_exhaustion_tests, other_tests = [], []
for item in items:
if "mr_exhaustion" in item.name:
mr_exhaustion_tests.append(item)
else:
other_tests.append(item)
yield other_tests + mr_exhaustion_tests
|