code: def test_cpu_adam_kernel(adamw, weight_decay, p_dtype, g_dtype):
      rtol, atol = 1e-5, 1e-8
      if p_dtype is torch.float16 or g_dtype is torch.float16:
          rtol, atol = 1e-3, 1e-3
      check_adam_kernel(
          CPUAdamKernel,
          adamw,
          weight_decay,
          p_dtype,
          g_dtype,
          torch.device("cpu"),
          3,
          rtol,
          atol,
      )
  
imports: import math
  from abc import abstractmethod
  from typing import Type
  import pytest
  import torch
  from torch import Tensor
  from colossalai.utils import get_current_device, multi_tensor_applier
label_desc: Use image node_id 3 for calling a global function with example usage: test_cpu_adam_kernel(adamw, weight_decay, p_dtype, g_dtype) without return types