1. A method of performing speech synthesis, the method comprising: obtaining at a first time a plurality of phoneme sequences by applying a first part of a speech synthesizer to a text corpus to yield an obtained plurality of phoneme sequences, the first part of the speech synthesizer only identifying possible phoneme sequences to be used in synthesizing speech at a second time which is later than the first time; for each respective phoneme sequence of the obtained plurality of phoneme sequences, identifying joins that would be calculated to synthesize the respective phoneme sequence; and adding the identified joins to a cache for use in speech synthesis.