I think I found the culprit
The main problem is the "match finder function" which is called whenever another block is destroyed and fall, it's called to recheck the match again
Look at the highlighted part, the else event to recall the findmatch function
And this is the function
I'm seriously desperate to make it smoother
________________________________________________________
I've ported it to cocoonjs without the else -> call find match function and it performs noticeably far far smoother
Now, if only someone can help to optimize the code