def test_create_devices_to_monitor_gpu0_with_one_gpu_api_return_one_correctly_configured_nvidia_gpu_device( one_gpu_api): domains = [NvidiaGPUDomain(0)] devices = EnergyDeviceFactory.create_devices(domains) assert len(devices) == 1 assert isinstance(devices[0], NvidiaGPUDevice) assert devices[0].get_configured_domains() == domains
def test_create_devices_with_rapl_package_and_dram_domains_return_one_correctly_configured_rapl_device( fs_pkg_dram_one_socket): domains = [RaplPackageDomain(0), RaplDramDomain(0)] devices = EnergyDeviceFactory.create_devices(domains) assert len(devices) == 1 assert isinstance(devices[0], RaplDevice) assert devices[0].get_configured_domains() == domains
def test_create_devices_with_default_values_on_machine_with_one_gpu_and_package_api_create_one_nvidia_gpu_device_and_rapl_device_configured_for_package( one_gpu_api, fs_pkg_one_socket): devices = EnergyDeviceFactory.create_devices() assert len(devices) == 2 assert isinstance(devices[1], NvidiaGPUDevice) assert devices[1].get_configured_domains() == [NvidiaGPUDomain(0)] assert isinstance(devices[0], RaplDevice) assert devices[0].get_configured_domains() == [RaplPackageDomain(0)]
def test_create_devices_with_default_values_on_machine_with_only_rapl_pkg_and_dram_api_create_one_device_configured_for_dram_and_rapl( fs_pkg_dram_one_socket): devices = EnergyDeviceFactory.create_devices() assert len(devices) == 1 assert isinstance(devices[0], RaplDevice) assert devices[0].get_configured_domains() == [ RaplPackageDomain(0), RaplDramDomain(0) ]
def test_create_devices_to_monitor_gpu0_and_package_0_machine_with_two_gpu_and_package_dram_api_create_one_nvidia_gpu_device_and_rapl_device_configured_for_package( two_gpu_api, fs_pkg_dram_one_socket): devices = EnergyDeviceFactory.create_devices( [RaplPackageDomain(0), NvidiaGPUDomain(0)]) assert len(devices) == 2 assert isinstance(devices[1], NvidiaGPUDevice) assert devices[1].get_configured_domains() == [NvidiaGPUDomain(0)] assert isinstance(devices[0], RaplDevice) assert devices[0].get_configured_domains() == [RaplPackageDomain(0)]
def test_create_devices_to_monitor_gpu1_with_only_one_gpu_api_raise_NoSuchDomainError( one_gpu_api): with pytest.raises(NoSuchDomainError): EnergyDeviceFactory.create_devices([NvidiaGPUDomain(1)])
def test_create_devices_to_monitor_gpu0_without_gpu_api_raise_NoSuchEnergyDeviceError( no_gpu_api): with pytest.raises(NoSuchEnergyDeviceError): EnergyDeviceFactory.create_devices([NvidiaGPUDomain(0)])
def test_create_devices_to_monitor_rapl_without_rapl_api_raise_NoSuchEnergyDeviceError( empty_fs): with pytest.raises(NoSuchEnergyDeviceError): EnergyDeviceFactory.create_devices([RaplDramDomain(0)])
def test_create_devices_with_dram_rapl_domain_without_dram_support_raise_NoSuchDomainError( fs_pkg_one_socket): with pytest.raises(NoSuchDomainError): EnergyDeviceFactory.create_devices([RaplDramDomain(0)])