def METHOD_NAME(logging_outputs) -> None:
    """Aggregate logging outputs from data parallel training."""
    loss_sum = utils.item(sum(log.get("loss", 0) for log in logging_outputs))
    ntokens = utils.item(sum(log.get("ntokens", 0) for log in logging_outputs))
    nsentences = utils.item(
        sum(log.get("nsentences", 0) for log in logging_outputs)
    )
    sample_size = utils.item(
        sum(log.get("sample_size", 0) for log in logging_outputs)
    )
    metrics.log_scalar(
        "loss", loss_sum / (sample_size or 1) / math.log(2), sample_size, round=3
    )
    metrics.log_scalar("ntokens", ntokens)
    metrics.log_scalar("nsentences", nsentences)
    correct = sum(log.get("correct", 0) for log in logging_outputs)
    metrics.log_scalar("_correct", correct)
    total = sum(log.get("count", 0) for log in logging_outputs)
    metrics.log_scalar("_total", total)
    if total > 0:
        metrics.log_derived(
            "accuracy",
            lambda meters: safe_round(
                meters["_correct"].sum / meters["_total"].sum, 5
            )
            if meters["_total"].sum > 0
            else float("nan"),
        )
    builtin_keys = {
        "loss",
        "ntokens",
        "nsentences",
        "sample_size",
        "correct",
        "count",
    }
    for k in logging_outputs[0]:
        if k not in builtin_keys:
            val = sum(log.get(k, 0) for log in logging_outputs)
            if k.startswith("loss"):
                metrics.log_scalar(
                    k, val / (sample_size or 1) / math.log(2), sample_size, round=3
                )
            else:
                metrics.log_scalar(k, val / len(logging_outputs), round=3)