Cover the sweet potatoes with water in a large pot, bring to a boil and simmer for 15 to 18 minutes until tender. Drain thoroughly and let steam dry for 3 minutes.
Heat the oven to 350°F and grease a 2-quart baking dish. Mash the potatoes roughly with cream cheese, filling butter, milk, filling sugar, salt and cinnamon, leaving some small soft chunks.
Mix pecans, flour and topping sugar, then rub in the cold topping butter to form crumbs. Spread the potatoes in the dish and scatter the pecan crumbs over them.
Bake for 25 to 30 minutes until the filling is hot and the crumbs begin to brown. Add marshmallows in loose patches, leaving plenty of pecan topping visible between them.
Bake for 5 to 7 minutes more until the marshmallows are golden. Rest for 10 minutes before serving.