def METHOD_NAME(batch=1, seq=512, n_embd=768, n_head=12):
    from test_autochunk_gpt import GPT2Config, GPT2Model, get_data
    model = GPT2Model
    config = GPT2Config(n_embd=n_embd, n_positions=seq, n_layer=2, n_head=n_head)
    model = model(config=config)
    shape = [batch, seq]
    print("\nbatch: %d, seq: %d, n_embd: %d, n_head: %d" % (batch, seq, n_embd, n_head))
    max_mem = _benchmark_autochunk_gpt_origin(model, get_data(shape))
    for ratio in [0.5, 0.4, 0.3, 0.2]:
        try:
            _benchmark_autochunk_gpt_gm(model, get_data(shape), max_mem * ratio)
        except RuntimeError as e:
            if e.args[0] == 'Search failed. Try a larger memory threshold.':
                break
        except Exception as e:
            raise e
    _benchmark_autochunk_gpt_gm(model, get_data(shape), None)