adam_test1.py 724 B

12345678910111213141516171819202122
  1. import torch
  2. from deepspeed.ops.adam import DeepSpeedCPUAdam
  3. import time
  4. device = 'cpu'
  5. model_size = 1 * 1024**3
  6. param = torch.nn.Parameter(torch.ones(model_size, device=device))
  7. param_fp16 = torch.nn.Parameter(torch.ones(model_size,
  8. dtype=torch.half,
  9. device='cuda:0'))
  10. optimizer = DeepSpeedCPUAdam([param])
  11. #torch.set_num_threads(128)
  12. param.grad = torch.ones(model_size, device=device)
  13. avg = 0
  14. for i in range(100):
  15. start = time.time()
  16. optimizer.step(fp16_param_groups=[param_fp16])
  17. stop = time.time()
  18. avg += (stop - start)
  19. param.grad = torch.ones(model_size, device=device) * 2
  20. print("Elapsed Time is ", avg / 100)