Qual é a maneira mais rápida de analisar uma linha no Delphi?

Eu tenho um arquivo enorme que devo analisar linha por linha. A velocidade é essencial.

Exemplo de uma linha:

Token-1   Here-is-the-Next-Token      Last-Token-on-Line
      ^                        ^
   Current                 Position
   Position              after GetToken

O GetToken é chamado, retornando "Aqui está o próximo token" e define o CurrentPosition para a posição do último caractere do token, para que esteja pronto para a próxima chamada ao GetToken. Os tokens são separados por um ou mais espaços.

Suponha que o arquivo já esteja em um StringList na memória. Cabe na memória facilmente, digamos 200 MB.

Estou preocupado apenas com o tempo de execução da análise. Qual código produzirá a execução mais rápida absoluta em Delphi (Pascal)?

questionAnswers(9)

yourAnswerToTheQuestion