The "loop sound" command, when used on a 3dsound creates a 50% drop in frame rate. This is not a bug, it is an optimization problem. My first work around was to calculate distance from the 3dsound and then loop them based on player proximity.
Frame rates still drastically suffered when the player entered the 3dsound zone. But at least I wasn't suffering that loss * the number of 3dsounds in the game. I did a little test program in the bugs section if anyone wants to check it out. (however, its not really a bug, its an optimization problem)
To alleviate the frame drops altogether I dropped the "loop 3dsound" command. Instead I just check to see if the sound is playing and when it stops playing, I issue the "play sound" command again, repeating that over and over until the player is once again out of range.
However, this does introduce a slight delay between the sound ending and restarting. Frame rates drop by only a few fps rather than a massive 50%. Fading your 3dsound in and out during its playback will help mask the pause of restarting the sound when it ends. This is only a problem for ambient or continuous sounds in your level that use 3d positioning.
It would be nice if 3dsound looping could be tweaked to not cause such a huge frame rate drop.