Reducing time-to-first-token in large language models