Throughput will vary from system to system and network to network. Best bet to determine if redis is overloaded is to look at the various metrics of the system hosting redis (CPU usage, I/O usage if you have AOF/RDB on).
If the redis host isn't being fully utilized I'd look at how long the sync() calls are taking as they will block a thread until they complete. If CPU usage on the machine running the app is low then it's likely a case of resource starvation (thread or network being most likely).
Also, JedisPool is threadsafe so you only need one instance between all the threads. Rule of thumb I usually start with for the pool is a connection for every thread, tweaking as needed.