I've done a search, and this hasn't come up. To reduce the framerate loss, Dwarf Fortress should have some options that allow the player to increase framerate, but simplifying the way the game works or reducing the number of calculations made.
Framerate drop comes from pathing, item count, unit count, liquids, embark volume, and contaminants.
Simplification comes from changing the number of ticks between which the game has to run calculations. There will be an option in the raws to set this number.
Item check: Item check will be run either when a dwarf or other creature needs to use an item, or after a certain number of ticks set in the INIT files. Another INIT option will see items left unused for a long period of time get allocated to a "reserve list" which only gets checked if in-use items are unavailable, or every month, or if the items are ordered to be traded or dumped or melted.
Pathfinding: (not sure if this already happens) Pathfinding is run for a unit when it wants to go somewhere (i.e. for a job or to idle out), when it hits an obstacle, or when the pathfinding counter runs down. The number of ticks to elapse before pathfinding is run again is set in the raws.
Liquid pathfinding: Recheck fluid movement when there is a new disturbance in the fluid, or when the required number of ticks elapses.
Yes, this will create some strange behaviour if your counters are set particularly high. Dwarves, for example, may choose a less efficient path or crawl over one another. Fluids may behave strangely. However, this will not usually kill a fortress. Players have been OK with more serious suboptimal A.I. decisions in the past. Framerate, however, always kills fortresses.
In order to save on RAM use, another INIT option will have the data of items not in regular use dumped to the drive, and then recovered when needed. Because the data will not be needed frequently, the slow access time will not be relevant.
I think players will be OK with, say, a large number of calculations regarding reserve items being done once a month.
Applying these options may allow us to run 100-year or 1000 year fortresses much more easily.
I'd also like to bring this to the attention of those involved in DFhack. It may be possible to create an unofficial implementation of this, I know some people have already implemented their own algorithms, for example with the "digging invaders" hack.
That has been a suggestion for a long time and there's no sign of it being implemented yet, so someone eventually made a DFhack version to fill it in. There's also a lot of bug-fixing patches from DFhack now. It will be a worthwhile effort.