Here's how i stabilised my fps so i could run a server & a launcher on the same pc.
1.
Download Process Explorer
HTML:
http://technet.microsoft.com/en-us/sysinternals/bb896653.aspx
(Win task manager is a joke) Put process explorer it in a folder were you can run it when needed.
2.
Start your game(FTB/dire20 or whatever)& wait till you see java.exe pop up
3.
Right click java.exe and
select affinity
4.Depending on you cpu count,
deselect till only 2 remain
(side note:I hear hyperthreading is bad shit turn it off)
I've played minecraft with 3 different pc's now,starting with an
athlon2800+ with 1g ddr & an agp 512mb nividia gpu(which was a hand down),it could handle pre 1.3.2 minecraft at 30 fps with the help of optifine.When i started to add mods namely the early piston mod performance dropped badly.
Next i built my own with a
Pentium E6600 4g ddr3 & an amd6450 gpu,i saw 60 fps in minecraft for the first time & i could use far render but again if i was using mods i had to turn down render distance & use optifine to handle some other effects individually to try reduce lag.
And finally i upgraded so i could play bf3 & skyrim at more than 800x600 with 30 fps so i built a
Phenom 965 x4 system(overclocked to 4ghz) with 4g ddr3 & an asus6850 gpu & my god did minecraft benefit greatly from this.
For the first time i could use a crazy amount of mods & not be forced to use only a few & this brought me to running a server & finding out that
setting affinity to your programs will help them alot.
But i will say don't ever use far render when using lots of mods because the mods will start to use the resources the far render would normally use & give you crazy lag spikes.
I tell you this just so you can get an understanding to how the mods will hamper even the best system because some of them do crazy things in the background to supply you with the great gameplay that they do.
Learn your pc's limits & you should be able to avoid bad fps/lag & thus avoid a poor gameplay experience.