i would rather say: maybe on android JVM have default much memory usage limit or something.
im not android programmer, but often Java slow issues comes from wrong JVM/run configuration, nothing else.
i dont think JME add too much overhead. but some add for sure, anyway it should not impact much.
its like in my previous work people said “hey, dont use netbeans, its slow”. i said “yes, it is because you run it using 25% of your memory”
anyway more probably is that topic author have something wrong in code. because if i hear that using thread to calculate frame time instead of just use tfp variable. The thread need to synchronize(if he really need update frame time) and synchronize = wait = slow, anyway its not full code he provided as i see. but thats my guess
so in short i guess counter variable is some synchronized variable and it might cause slow, because require wait update method(thread) for user thread or otherwise.
1000/30 = 30 waits per second that could really make 2-8 fps