Does anyone know how to decrease the time it takes for auto-complete  to display the dropdown menu in every instance?
I've noticed the delay I've specified in ac-delay and ac-auto-show-menu is enforced only in those instances that require a trigger character/string (e.g. : or ->). However those instances that require 2 characters to be typed, the dropdown takes >3 seconds to be shown. Doing M-x auto-complete results in the popup being shown immediately so it's not like auto-complete is busy processing - the delay is being overriden somehow.
Would appreciate some input on this as I find it a terrific programming tool.
Here's how I set it up:
(setq ac-auto-show-menu 0.2)
(setq ac-delay 0.2)
(setq ac-menu-height 20)
(setq ac-auto-start t)
(setq ac-show-menu-immediately-on-auto-complete t)
Could you please try to reproduce the problem in vanilla Emacs (starting with -q option) with the auto-complete config you attached?
I had the same problem like @miguel-guedes, but i tested it with -q and boiled the error down to a bad interaction with flyspell-prog-mode. I ran it in a hook for prog-mode.
Looking at the source of auto-complete.el showed me that you guys are already running an advice to workaround flycheck.
My wild guess is (and my emacs-fu is not strong enough to test/verify/fix it) that the advice doesn't fire the way it should for flyspell-prog-mode.
EDIT: I'm an idiot. Actually calling (ac-flyspell-workaround) in my .emacs fixes my issue.