def METHOD_NAME(queue, scale, shift, dtype):
    rng = np.random.RandomState(0)
    X = np.array(5 * rng.random_sample((10, 4)), dtype=dtype)
    Y = np.array(5 * rng.random_sample((15, 4)), dtype=dtype)
    result = linear_kernel(X, Y, scale=scale, shift=shift, queue=queue)
    expected = np.dot(X, np.array(Y).T) * scale + shift
    tol = 1e-14 if result.dtype == np.float64 else 1e-6
    assert_allclose(result, expected, rtol=tol)