mirror of
https://github.com/clearml/clearml-agent
synced 2025-06-26 18:16:15 +00:00
Fix file mode should be optional in configuration files
section
This commit is contained in:
parent
f367c5a571
commit
700ae85de0
@ -53,7 +53,7 @@ def apply_files(config):
|
|||||||
target_fmt = data.get("target_format", "string")
|
target_fmt = data.get("target_format", "string")
|
||||||
overwrite = bool(data.get("overwrite", True))
|
overwrite = bool(data.get("overwrite", True))
|
||||||
contents = data.get("contents")
|
contents = data.get("contents")
|
||||||
mode = data.get("mode")
|
mode = data.get("mode", None)
|
||||||
|
|
||||||
target = Path(expanduser(expandvars(path)))
|
target = Path(expanduser(expandvars(path)))
|
||||||
|
|
||||||
|
@ -438,6 +438,7 @@ class ResourceMonitor(object):
|
|||||||
class GpuFractionsHandler:
|
class GpuFractionsHandler:
|
||||||
_number_re = re.compile(r"^clear\.ml/fraction(-\d+)?$")
|
_number_re = re.compile(r"^clear\.ml/fraction(-\d+)?$")
|
||||||
_mig_re = re.compile(r"^nvidia\.com/mig-(?P<compute>[0-9]+)g\.(?P<memory>[0-9]+)gb$")
|
_mig_re = re.compile(r"^nvidia\.com/mig-(?P<compute>[0-9]+)g\.(?P<memory>[0-9]+)gb$")
|
||||||
|
_frac_gpu_injector_re = re.compile(r"^clearml-injector/fraction$")
|
||||||
|
|
||||||
_gpu_name_to_memory_gb = {
|
_gpu_name_to_memory_gb = {
|
||||||
"A30": 24,
|
"A30": 24,
|
||||||
@ -514,10 +515,14 @@ class GpuFractionsHandler:
|
|||||||
return 0
|
return 0
|
||||||
|
|
||||||
@classmethod
|
@classmethod
|
||||||
def encode_fractions(cls, limits: dict) -> str:
|
def encode_fractions(cls, limits: dict, annotations: dict) -> str:
|
||||||
if any(cls._number_re.match(x) for x in (limits or {})):
|
if limits:
|
||||||
return ",".join(str(v) for k, v in sorted(limits.items()) if cls._number_re.match(k))
|
if any(cls._number_re.match(x) for x in (limits or {})):
|
||||||
return ",".join(("{}:{}".format(k, v) for k, v in (limits or {}).items() if cls._mig_re.match(k)))
|
return ",".join(str(v) for k, v in sorted(limits.items()) if cls._number_re.match(k))
|
||||||
|
return ",".join(("{}:{}".format(k, v) for k, v in (limits or {}).items() if cls._mig_re.match(k)))
|
||||||
|
elif annotations:
|
||||||
|
if any(cls._frac_gpu_injector_re.match(x) for x in (annotations or {})):
|
||||||
|
return ",".join(str(v) for k, v in sorted(annotations.items()) if cls._frac_gpu_injector_re.match(k))
|
||||||
|
|
||||||
@staticmethod
|
@staticmethod
|
||||||
def decode_fractions(fractions: str) -> Union[List[float], Dict[str, int]]:
|
def decode_fractions(fractions: str) -> Union[List[float], Dict[str, int]]:
|
||||||
|
Loading…
Reference in New Issue
Block a user