I used some commands added to the launchgtaiv.exe to make mine run quite a bit better. Using these commands, the game is tricked into thinking that your video card has less RAM that it actually does. After you add the command to force the game to run at your desired resolution, the texture levels will run at whatever resolution you set in game. So, if you set the resolution to 800x600, you'll get low texture levels. This is the only way to adjust the texture levels.
These are the commands that you need to add to your launchgtaiv.exe:
-height 1080 -width 1920 -refreshrate 60 -availablevidmem 0.75
Of course you'll set the resolution and refresh rate to whatever you're using. The availablevidmem command sets the amount of your actual video memory the game is able to use. So setting it to .75 allows it to use 75% of your video ram. You'll have to play around with settings to see what runs the best and to see how much of your video ram you want to give to the game. When you find the best performing settings, you need to adjust your availablevidmem to make it so that your available memory in game is very very close to the amount of memory that is being used by the game so that it will be forced to use the low resolution textures.
If you have trouble following my directions, here's some more detailed instructions:
http://www.nvnews.net/vbulletin/showthread.php?t=124128
Using these tweaks, I went from getting low 20's to 40's. That's still pretty terrible, but it's playable. I have a q6600, 4GB RAM, and a 1GB 4850 so it's not like a game with this quality of graphics (not so great) should run like this on my system (I get close to 100 FPS all the time in CoD 4, around 90 or so in Fallout 3 and Oblivion, and 80's in BFBC2.. all of which look much better than GTAIV). The engine that GTA IV uses has always been horribly optimized. It even ran about as terribly on consoles as it did before I did the tweaks on my PC. After doing the tweaks, the game was very playable for me.