The game server however which do not do any rendering or client i/o are primarily single-core (non-parrallel, multi-thread) due to the realtime, linear nature of the server-side world-update calculations. When you do not need to do additional/simultaneous tasks such as get player input, or render to screen, then executing instructions in parrallel could cause issues with the time-based calculations of the majority of a game server. The percentage of code that could be run in parallel is pretty small, the majority of the CPU usage would still need to be sequential. (Note: just because a program runs on multiple cores doesnt mean it runs on all cores at the same time - the threads are moved around, but executed on one core at any one time)
Note: At least that has been the case up until recently unless there have been major changes in engines :-)