Prova ad eseguire il programma con un profiler, così vedi dove il tuo programma "rallenta".

NetBeans ne ha uno integrato semplicissimo da usare