Exemplo n.º 1
0
def test_dpctl_api(filter_str):
    device = dpctl.SyclDevice(filter_str)
    with dpctl.device_context(device):
        dpctl.lsplatform()
        dpctl.get_current_queue()
        dpctl.get_num_activated_queues()
        dpctl.is_in_device_context()
Exemplo n.º 2
0
def test_dpctl_api(filter_str):
    if skip_test(filter_str):
        pytest.skip()

    device = dpctl.SyclDevice(filter_str)
    with dppy.offload_to_sycl_device(device):
        dpctl.lsplatform()
        dpctl.get_current_queue()
        dpctl.get_num_activated_queues()
        dpctl.is_in_device_context()
Exemplo n.º 3
0
def test_is_in_device_context_inside_nested_device_ctxt_cpu():
    cpu = dpctl.SyclDevice("cpu")
    n = cpu.max_compute_units
    n_half = n // 2
    try:
        d0, d1 = cpu.create_subdevices(partition=[n_half, n - n_half])
    except Exception:
        pytest.skip("Could not create subdevices")
    assert 0 == dpctl.get_num_activated_queues()
    with dpctl.device_context(d0):
        assert 1 == dpctl.get_num_activated_queues()
        with dpctl.device_context(d1):
            assert 2 == dpctl.get_num_activated_queues()
            assert dpctl.is_in_device_context()
        assert dpctl.is_in_device_context()
        assert 1 == dpctl.get_num_activated_queues()
    assert not dpctl.is_in_device_context()
    assert 0 == dpctl.get_num_activated_queues()
Exemplo n.º 4
0
    def test_num_current_queues_inside_threads(self):
        from threading import Thread

        def SessionThread(self):
            self.assertEqual(dpctl.get_num_activated_queues(), 0)
            with dpctl.device_context("opencl:gpu:0"):
                self.assertEqual(dpctl.get_num_activated_queues(), 1)

        Session1 = Thread(target=SessionThread(self))
        Session2 = Thread(target=SessionThread(self))
        with dpctl.device_context("opencl:cpu:0"):
            self.assertEqual(dpctl.get_num_activated_queues(), 1)
            Session1.start()
            Session2.start()
Exemplo n.º 5
0
def test_num_current_queues_inside_threads():
    from threading import Thread

    def SessionThread():
        assert dpctl.get_num_activated_queues() == 0
        with dpctl.device_context("opencl:gpu:0"):
            assert dpctl.get_num_activated_queues() == 1

    Session1 = Thread(target=SessionThread())
    Session2 = Thread(target=SessionThread())
    with dpctl.device_context("opencl:cpu:0"):
        assert dpctl.get_num_activated_queues() == 1
        Session1.start()
        Session2.start()
Exemplo n.º 6
0
 def test_num_current_queues_inside_with_clause(self):
     with dpctl.device_context("opencl:cpu:0"):
         self.assertEqual(dpctl.get_num_activated_queues(), 1)
         with dpctl.device_context("opencl:gpu:0"):
             self.assertEqual(dpctl.get_num_activated_queues(), 2)
     self.assertEqual(dpctl.get_num_activated_queues(), 0)
Exemplo n.º 7
0
 def test_num_current_queues_outside_with_clause(self):
     self.assertEqual(dpctl.get_num_activated_queues(), 0)
Exemplo n.º 8
0
 def SessionThread(self):
     self.assertEqual(dpctl.get_num_activated_queues(), 0)
     with dpctl.device_context("opencl:gpu:0"):
         self.assertEqual(dpctl.get_num_activated_queues(), 1)
Exemplo n.º 9
0
 def SessionThread():
     assert dpctl.get_num_activated_queues() == 0
     with dpctl.device_context("opencl:gpu:0"):
         assert dpctl.get_num_activated_queues() == 1
Exemplo n.º 10
0
def test_num_current_queues_inside_with_clause():
    with dpctl.device_context("opencl:cpu:0"):
        assert 1 == dpctl.get_num_activated_queues()
        with dpctl.device_context("opencl:gpu:0"):
            assert 2 == dpctl.get_num_activated_queues()
    assert 0 == dpctl.get_num_activated_queues()
Exemplo n.º 11
0
def test_num_current_queues_outside_with_clause():
    assert 0 == dpctl.get_num_activated_queues()