                                "default": False,
                                "help": "Don't run extraction in parallel. Will run detection first "
                                        "then alignment (2 passes). Useful if VRAM is at a premium. "
                                        "Only has an effect if both the aligner and detector use "
                                        "the GPU, otherwise this is automatically off."})
          argument_list.append({"opts": ("-sz", "--size"),
                                "type": int,
                                "action": Slider,
                                "min_max": (128, 512),
                                "default": 256,
 
</s> remove             "help": "R|Detector to use. Some of these have configurable settings in "
 </s> add             "help": "R|Detector to use. NB: Unless stated, all aligners will run on CPU for AMD "
                    "GPUs. Some of these have configurable settings in " </s> remove             "help": "R|Aligner to use."
 </s> add             "help": "R|Aligner to use. NB: Unless stated, all aligners will run on CPU for AMD "
                    "GPUs." </s> remove                     "\nL|'fan': Face Alignment Network. Best aligner. "
                    "GPU heavy, slow when not running on GPU"})
 </s> add                     "\nL|'fan': Face Alignment Network. Best aligner. GPU heavy, slow when not "
                    "running on GPU"
                    "\nL|'fan-amd': Face Alignment Network. Uses Keras backend to support AMD "
                    "Cards. Best aligner. GPU heavy, slow when not running on GPU"}) </s> remove         numeric_level = getattr(logging, loglevel.upper(), None)
 </s> add         if isinstance(loglevel, int):
            numeric_level = loglevel
        else:
            numeric_level = getattr(logging, loglevel.upper(), None)
                                      "the GPU, otherwise this is automatically off. NB: AMD "
                                      "cards do not support parallel processing, so if both "
                                      "aligner and detector use an AMD GPU this will "
                                      "automatically be enabled."})
                                "default": False,
                                "help": "Don't run extraction in parallel. Will run detection first "
                                        "then alignment (2 passes). Useful if VRAM is at a premium. "
                                        "Only has an effect if both the aligner and detector use "
                                      "the GPU, otherwise this is automatically off. NB: AMD "
                                      "cards do not support parallel processing, so if both "
                                      "aligner and detector use an AMD GPU this will "
                                      "automatically be enabled."})
          argument_list.append({"opts": ("-sz", "--size"),
                                "type": int,
                                "action": Slider,
                                "min_max": (128, 512),
                                "default": 256,
keep keep keep keep replace keep keep keep keep keep
 PlaidML Updates

- Add fan-amd details to Cli
- Update Extract Parallel Processing rules for plaidML
- Handle missing plaidML lib on amd flag
- Pass through correct loglevel from GPUStats to plaidml_tools 
lib/cli.py