Displaying a map tile takes a varying amount of work depending on what it is:
* Unrevealed tiles take almost no time at all - it just needs to look up what "random glyph" to display there
* Layer stone tiles need to take the biome number and layer number and look up the layer material, then look up the inorganic raw object to get the symbol/color
* Lava stone tiles need to take the biome number and look up some region information to determine what lava-stone to use, then continue as above
* Feature stone tiles (i.e. adamantine) need to look up the map feature located within the tile to figure out what it's made of, then continue as above
* Vein stone tiles need to do a linear lookup within a list specific to the 16x16x1 map block to see which vein they match and determine the material, then continue as above
* Grass tiles need to do a linear lookup within that same list to figure out what type of grass is present, then look up the plant raw object to get the symbol/color (and also account for animations)
* Shrubs and saplings need to search a separate list (not sure if it's the global list or a column-specific one) to find the plant in question and determine its symbol/color
* As of 0.40, trees need to do a linear search through a column-specific list (one list per 48x48 tile embark region block) to determine what growths are present in the tile and look up within the plant itself to get the symbol/color
* Constructed tiles need to do a binary search by X/Y/Z coordinates in a separate list to determine what material it uses, then look up that material for the symbol/color
* On top of all of that, it does a binary search by X/Y/Z coordinates in yet another list to determine whether or not an engraving is present (and, if there is, what tile to display)
* Other tile contents (units, buildings, items, vermin, etc.) get displayed
* After all of that is done, it then does yet another linear search (though the same list as with vein stones and grass) to see if the tile has a spatter on it (e.g. mud, blood, vomit, or leaves) and adjust the symbol/color accordingly
If you want to keep your FPS high, even when paused, there are several things you can do:
1. Avoid using constructions. Flarechannel's average FPS was ridiculously low - this is one of the reasons why.
2. Use as few engravings as possible.
3. Keep your map clean of contaminants. The DFHack "clean map" command works well for this, though some may consider it cheaty.
4. Minimize the number of living plants. This will not endear you to the Elves.
5. Avoid looking at complicated areas.