A Numba CUDA version of AAMP for parallel computation of the non-normalized (i.e., without z-normalization) matrix profile, matrix profile indices, left matrix profile indices, and right matrix profile indices. Parameters ---------- T_A_fname : str The file name for
(
T_A_fname,
T_B_fname,
m,
range_stop,
excl_zone,
T_A_subseq_isfinite_fname,
T_B_subseq_isfinite_fname,
p,
p_norm_fname,
p_norm_first_fname,
w,
ignore_trivial=True,
range_start=1,
device_id=0,
k=1,
)
| 199 | |
| 200 | |
| 201 | def _gpu_aamp( |
| 202 | T_A_fname, |
| 203 | T_B_fname, |
| 204 | m, |
| 205 | range_stop, |
| 206 | excl_zone, |
| 207 | T_A_subseq_isfinite_fname, |
| 208 | T_B_subseq_isfinite_fname, |
| 209 | p, |
| 210 | p_norm_fname, |
| 211 | p_norm_first_fname, |
| 212 | w, |
| 213 | ignore_trivial=True, |
| 214 | range_start=1, |
| 215 | device_id=0, |
| 216 | k=1, |
| 217 | ): |
| 218 | """ |
| 219 | A Numba CUDA version of AAMP for parallel computation of the non-normalized (i.e., |
| 220 | without z-normalization) matrix profile, matrix profile indices, left matrix profile |
| 221 | indices, and right matrix profile indices. |
| 222 | |
| 223 | Parameters |
| 224 | ---------- |
| 225 | T_A_fname : str |
| 226 | The file name for the time series or sequence for which to compute |
| 227 | the matrix profile |
| 228 | |
| 229 | T_B_fname : str |
| 230 | The file name for the time series or sequence that will be used to annotate T_A. |
| 231 | For every subsequence in T_A, its nearest neighbor in T_B will be recorded. |
| 232 | |
| 233 | m : int |
| 234 | Window size |
| 235 | |
| 236 | range_stop : int |
| 237 | The index value along T_B for which to stop the matrix profile |
| 238 | calculation. This parameter is here for consistency with the |
| 239 | distributed `stumped` algorithm. |
| 240 | |
| 241 | excl_zone : int |
| 242 | The half width for the exclusion zone relative to the current |
| 243 | sliding window |
| 244 | |
| 245 | T_A_subseq_isfinite_fname : str |
| 246 | The file name for the boolean array that indicates whether a subsequence in |
| 247 | `T_A` contains a `np.nan`/`np.inf` value (False) |
| 248 | |
| 249 | T_B_subseq_isfinite_fname : str |
| 250 | The file name for the boolean array that indicates whether a subsequence in |
| 251 | `T_B` contains a `np.nan`/`np.inf` value (False) |
| 252 | |
| 253 | p : float |
| 254 | The p-norm to apply for computing the Minkowski distance. Minkowski distance is |
| 255 | typically used with `p` being 1 or 2, which correspond to the Manhattan distance |
| 256 | and the Euclidean distance, respectively. |
| 257 | |
| 258 | p_norm_fname : str |