Pool size applies to a single ruby process. Some ruby interpreters may use threads to handle multiple requests, such as jRuby. Pool size applies to one process and all threads.
The passenger does not use threads, but instead creates new ruby processes.