A caixa de combinação de preenchimento automático da interface do usuário do jQuery é muito lenta com grandes listas de seleção

Estou usando uma versão modificada da caixa de combinação de preenchimento automático da interface do usuário do jQuery, conforme mostrado aqui:http://jqueryui.com/demos/autocomplete/#combobox

Para o bem desta pergunta, digamos que eu tenha exatamente esse código ^^^

Ao abrir a caixa de combinação, clicando no botão ou concentrando-se na entrada de texto da caixa de combinação, há um grande atraso antes de mostrar a lista de itens. Esse atraso fica visivelmente maior quando a lista de seleção tem mais opções.

Esse atraso também não ocorre apenas na primeira vez, acontece sempre.

Como algumas das listas de seleção deste projeto são muito grandes (centenas e centenas de itens), o atraso / congelamento do navegador é inaceitável.

Alguém pode me indicar a direção certa para otimizar isso? Ou mesmo onde está o problema de desempenho?

Acredito que o problema possa estar relacionado à maneira como o script mostra a lista completa de itens (um preenchimento automático procura uma sequência vazia); existe outra maneira de exibir todos os itens? Talvez eu pudesse criar um caso único para exibir todos os itens (como é comum abrir a lista antes de começar a digitar) que não faz toda a correspondência de regex?

Aqui está um jsfiddle para mexer com:http://jsfiddle.net/9TaMu/

questionAnswers(5)

yourAnswerToTheQuestion