So after making the changes (somewhat implied by Cyril) I ran apache bench with 2 concurrent instances of "-n 10000 -c 500 -w -k" and the result on haproxy stats page is:
pid = 18093 (process #1, nbproc = 1) uptime = 0d 2h55m08s system limits: memmax = unlimited; ulimit-n = 100043 maxsock = 100043; maxconn = 50000; maxpipes = 0 current conns = 2235; current pipes = 0/0; conn rate = 39/sec Running tasks: 1/2252; idle = 85 % and response times from the client are unacceptable, 15-20 seconds or longer. once the apache bench tests finish and concurrent conns go down to a few hundred or less the client response times are normal and quick. Not scientific but during the long wait on the client the browser reports down in the bottom browser bar "waiting for socket..." or "waiting for proxy tunnel..." TIA for any further help anyone can provide, I really would like to get this figured out.

