Silent e has its origins in early Middle English so it is before the Great Vowel Shift (1350-1600). However, the rule of giving a long value to a vowel immediately before a consonant which precedes a silent e might have been finalized with the Great Vowel Shift.
Silent e was not always silent and it had various grammatical functions in Middle English. Grammar Girl gives the following information about the origin of silent e by quoting from the Cambridge Encyclopedia of the English Language (by David Crystal).
According to the Cambridge Encyclopedia of the English Language, by David Crystal, this rule has its origins in the early part of the Middle English period—in other words, in the 11th century. In those days, English used suffixes much more than it does now to show if a word was singular or plural or if it was being used as the subject of a sentence or an object. For example, hus [“hoose”], spelled H-U-S. meant just “house,” but huse [“HOOSE-uh”], spelled H-U-S-E, meant “to a house.” However, in the Middle English period, that final “uh” sound got dropped completely, so that whether the word was spelled H-U-S or H-U-S-E, it was pronounced “hoose.”
Still, that didn’t stop people from writing that final E. As Crystal writes, “Although the final [uh] sound disappeared, the -e spelling remained, and it gradually came to be used to show that the preceding vowel was long. This is the origin of the modern spelling ‘rule’ about ‘silent e’ in such words as name and rose” (p. 42).
Anglo-Saxon monks couldn't use the silent vowel strategy to show a long vowel because every letter was pronounced in Old English. If there was a vowel at the end of a word, it would be sounded. This situation changed as the Old English period came to an end and the Middle English period began. David Crystal, in his another book Spell It Out: The singular story of English spelling, says that the scribes in Middle English period began to use various ways to show long vowel and they used them all from the 12th century. Here is the relevant excerpt: