English is quite strict about word order. In factual sentences (i.e. not questions or some other rarer forms) the subject must precede the verb. English has no way of marking nouns that are subjects and objects, and the grammatical function of a word or phrase is determined by position.
So the subject is "The cackling of geese" and the object is "Rome". The predicate, consisting of the verb and its objects, is "saved Rome"
Semantically the "cackling" did the action and "Rome" received the action. This is why "cackling" is the subject and "Rome" is the object. You can say that this sentence's topic is "Rome". But the topic of a sentence can be the grammatical subject or object. Don't confuse the topic with the grammatical subject.