Does Firebird support SMP?
Short answer:
It does, you need to use Firebird Classic.
Long:
Firebird comes in two different architectures, Classic and SuperServer. Super runs one thread per connection, while Classic runs one process per connection. This makes Classic somewhat heavier on resources, but it enables multiple users to run long-running queries and still not create a bottleneck for short transactions.
Since Firebird doesn't have good SMP support in Super Server, you can use Classic and let your operating system and Firebird lock manager handle things.
Note: Classic was only supported on Linux before, but now there is support for Windows as well.
If you just want to run on one procesor, then you can use SuperServer and set the CPU Affinity setting in firebird.conf file to number of processor you wish to use (for example: 1). This setting has no effect on Linux, where it's left for kernel to decide what to do. There are reports that SuperServer works fine in some SMP Linux kernel configurations.
If you can't get it to work properly on Linux, you can also try to disable one of the CPU cores using a command like this:
echo 0 >> /sys/devices/system/cpu/cpu1/online
To see how many cores are running, you can run the command "top" and press "1" on the keyboard, or view the content of /proc/cpuinfo:
cat /proc/cpuinfo