code: def test_parallel_gpu_aamp_self_join(T_A, T_B):
      device_ids = [device.id for device in cuda.list_devices()]
      if len(T_B) > 10:
          m = 3
          zone = int(np.ceil(m / 4))
          ref_mp = naive.aamp(T_B, m, exclusion_zone=zone)
          comp_mp = gpu_aamp(
              T_B,
              m,
              ignore_trivial=True,
              device_id=device_ids,
          )
          naive.replace_inf(ref_mp)
          naive.replace_inf(comp_mp)
          npt.assert_almost_equal(ref_mp, comp_mp)
  
imports: from unittest.mock import patch
  import numpy
  import numpy.testing
  import pandas
  from numba import cuda
  from stumpy import config, gpu_aamp
  import naive
  import pytest
label_desc: Use image node_id 5 for calling a global function with example usage: test_parallel_gpu_aamp_self_join(T_A, T_B) without return types