Some rules of thumb for OpenBSD optimizing: 1) Don't try to optimize things if there are no real performance problems or threats of such problems. 2) Don't guess. Find or run benchmarks. 3) Remember that benchmarks are not real applications. Only way to find out if a real application does its job properly is to run it in a production environment for at least a month or two. Sorry. 4) Benchmarks are often specific on specific hardware-software combinations. 5) GCC optimizations, such as recompiling the system with -O3 -march=i686 instead of letting it go at the default -O2 [-march=i386 implied for x86]) are usually a waste of time. There are, of course, exceptions, but they rarely are system-wide but are more closely related to one math-intensive library or application. Debugging and profiling compilations don't usually significantly slow down programs, but they offer the wonderful opportunity to find *real* bottlenecks. 6) Aim for future scalability. 7) Performance doesn't matter if you don't also have reliability. 500 hits per second doesn't help if you only get 12 hours a day. 8) Remember to read your configuration manuals carefully. 9) After you've read the configuration manuals really, really carefully, re-read them, and pay some attention this time. 10) Calculate one hour of your work configuring, compiling, optimizing, aso. costs to your company or organization, and compare it to updating your hardware or outsourcing the thing. Things to read: http://www.openbsd.org/faq/faq11.html man sa(8), x11perf(1), systat(1), vmstat(8), top(1), ps(1), iostat(8) http://www.kegel.com/c10k.html http://perl.apache.org/guide/performance.html http://httpd.apache.org/docs/misc/perf-bsd44.html http://httpd.apache.org/docs/misc/perf-tuning.html http://www.ontek.com/mikey/optimization.html http://www.daemonnews.org/199908/portability.html http://www.spec.org/spec/faq/