def METHOD_NAME(stats: Dict[str, str]) -> _Stats:
    """Parse stats from rocm-smi output."""
    parsed_stats: _Stats = {}
    try:
        parsed_stats["gpu"] = float(stats.get("GPU use (%)"))  # type: ignore
    except (TypeError, ValueError):
        logger.warning("Could not parse GPU usage as float")
    try:
        parsed_stats["memoryAllocated"] = float(stats.get("GPU memory use (%)"))  # type: ignore
    except (TypeError, ValueError):
        logger.warning("Could not parse GPU memory allocation as float")
    try:
        parsed_stats["temp"] = float(stats.get("Temperature (Sensor memory) (C)"))  # type: ignore
    except (TypeError, ValueError):
        logger.warning("Could not parse GPU temperature as float")
    try:
        parsed_stats["powerWatts"] = float(
            stats.get("Average Graphics Package Power (W)")  # type: ignore
        )
    except (TypeError, ValueError):
        logger.warning("Could not parse GPU power as float")
    try:
        parsed_stats["powerPercent"] = (
            float(stats.get("Average Graphics Package Power (W)"))  # type: ignore
            / float(stats.get("Max Graphics Package Power (W)"))  # type: ignore
            * 100
        )
    except (TypeError, ValueError):
        logger.warning("Could not parse GPU average/max power as float")
    return parsed_stats