offload_constants.py 2.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869
  1. """
  2. "Copyright 2020 The Microsoft DeepSpeed Team.
  3. Licensed under the MIT license.
  4. """
  5. #########################################
  6. # TENSOR OFFLOADING
  7. #########################################
  8. OFFLOAD_NONE_DEVICE = "none"
  9. OFFLOAD_CPU_DEVICE = "cpu"
  10. OFFLOAD_NVME_DEVICE = "nvme"
  11. VALID_OFFLOAD_DEVICES = [OFFLOAD_NONE_DEVICE, OFFLOAD_CPU_DEVICE, OFFLOAD_NVME_DEVICE]
  12. #########################################
  13. # PARAM TENSOR OFFLOADING
  14. #########################################
  15. OFFLOAD_PARAM_FORMAT = '''
  16. "offload_param": {
  17. "device": [none|cpu|nvme],
  18. "nvme_path": "/local_nvme",
  19. "buffer_count": 5,
  20. "buffer_size": 1e8,
  21. "max_in_cpu": 1e9,
  22. "pin_memory": [true|false]
  23. }
  24. '''
  25. OFFLOAD_PARAM = "offload_param"
  26. OFFLOAD_PARAM_DEVICE = "device"
  27. OFFLOAD_PARAM_DEVICE_DEFAULT = None
  28. OFFLOAD_PARAM_NVME_PATH = "nvme_path"
  29. OFFLOAD_PARAM_NVME_PATH_DEFAULT = None
  30. OFFLOAD_PARAM_BUFFER_COUNT = "buffer_count"
  31. OFFLOAD_PARAM_BUFFER_COUNT_DEFAULT = 5
  32. OFFLOAD_PARAM_BUFFER_SIZE = "buffer_size"
  33. OFFLOAD_PARAM_BUFFER_SIZE_DEFAULT = 1e8
  34. OFFLOAD_PARAM_MAX_IN_CPU = "max_in_cpu"
  35. OFFLOAD_PARAM_MAX_IN_CPU_DEFAULT = 1e9
  36. OFFLOAD_PARAM_PIN_MEMORY = "pin_memory"
  37. OFFLOAD_PARAM_PIN_MEMORY_DEFAULT = False
  38. #########################################
  39. # OPTIMIZER TENSOR OFFLOADING
  40. #########################################
  41. OFFLOAD_OPTIMIZER_FORMAT = '''
  42. "offload_optimizer": {
  43. "device": [none|cpu|nvme],
  44. "nvme_path": "/local_nvme",
  45. "buffer_count": 4,
  46. "pin_memory": [true|false],
  47. "pipeline_read": false,
  48. "pipeline_write": false,
  49. "fast_init": false
  50. }
  51. '''
  52. OFFLOAD_OPTIMIZER = "offload_optimizer"
  53. OFFLOAD_OPTIMIZER_DEVICE = "device"
  54. OFFLOAD_OPTIMIZER_DEVICE_DEFAULT = None
  55. OFFLOAD_OPTIMIZER_NVME_PATH = "nvme_path"
  56. OFFLOAD_OPTIMIZER_NVME_PATH_DEFAULT = None
  57. OFFLOAD_OPTIMIZER_BUFFER_COUNT = "buffer_count"
  58. OFFLOAD_OPTIMIZER_BUFFER_COUNT_DEFAULT = 4
  59. OFFLOAD_OPTIMIZER_PIN_MEMORY = "pin_memory"
  60. OFFLOAD_OPTIMIZER_PIN_MEMORY_DEFAULT = False
  61. OFFLOAD_OPTIMIZER_PIPELINE_READ = "pipeline_read"
  62. OFFLOAD_OPTIMIZER_PIPELINE_READ_DEFAULT = False
  63. OFFLOAD_OPTIMIZER_PIPELINE_WRITE = "pipeline_write"
  64. OFFLOAD_OPTIMIZER_PIPELINE_WRITE_DEFAULT = False
  65. OFFLOAD_OPTIMIZER_PIPELINE = "pipeline"
  66. OFFLOAD_OPTIMIZER_FAST_INIT = "fast_init"
  67. OFFLOAD_OPTIMIZER_FAST_INIT_DEFAULT = False