[PERFORM] Async Query Processing on Solaris
I am using Asynchronous Query Processing interface from libpq library. And I got some strange results on Solaris My test select query is 'SELECT * from pg_user;' and I use select system synchronous I/O multiplexer in 'C' The first test sends 1 select queries using 10 nonblocking connections to database ( PQsendQuery ). The second test sends the same 1 select queries using 1 connection ( PQexec ). On FreeBSD there is a huge difference between the async and the sync tests. The async test is much faster than sync test. On Solaris there is no speed difference between async and sync test, actually async test is even slower than sync test. Q. Why ? On FreeBSD: /usr/bin/time ./PgAsyncManager async async test start ... 1 done 9.46 real 3.48 user 1.25 sys /usr/bin/time ./PgAsyncManager sync sync test start ... 1 done 22.64 real 3.35 user 1.24 sys On Solaris: /usr/bin/time ./PgAsyncManager async async test start ... 1 done real 20.6 user2.1 sys 0.4 /usr/bin/time ./PgAsyncManager sync sync test start ... 1 done real 18.4 user1.1 sys 0.5 ---(end of broadcast)--- TIP 2: you can get off all lists at once with the unregister command (send "unregister YourEmailAddressHere" to [EMAIL PROTECTED])
[PERFORM] Async Query Processing on Solaris
I am using Asynchronous Query Processing interface from libpq library. And I got some strange results on Solaris My test select query is 'SELECT * from pg_user;' and I use select system synchronous I/O multiplexer in 'C' The first test sends 1 select queries using 10 nonblocking connections to database ( PQsendQuery ). The second test sends the same 1 select queries using 1 connection ( PQexec ). On FreeBSD there is a huge difference between the async and the sync tests. The async test is much faster than sync test. On Solaris there is no speed difference between async and sync test, actually async test is even slower than sync test. Q. Why ? On FreeBSD: /usr/bin/time ./PgAsyncManager async async test start ... 1 done 9.46 real 3.48 user 1.25 sys /usr/bin/time ./PgAsyncManager sync sync test start ... 1 done 22.64 real 3.35 user 1.24 sys On Solaris: /usr/bin/time ./PgAsyncManager async async test start ... 1 done real 20.6 user2.1 sys 0.4 /usr/bin/time ./PgAsyncManager sync sync test start ... 1 done real 18.4 user1.1 sys 0.5 ---(end of broadcast)--- TIP 7: don't forget to increase your free space map settings