How come my PyCharm/Kivy app runs so slowly in Rpi Raspbain?
How to fix it?
Well, There are many reasons that your PyCharm/Kivy app is slow. The same reasons apply to me running Intel PC Win10 Chrome faster than Rpi3B+ Raspbian Chromium.
Two basic problematic areas are:
Hardware difference - PC has more "cores".
Software difference - Win Chrome has less "layers".
I have been complaining since Rpi1A that Chromium is slow. Now I am happy that Rpi3B Chromium runs many times faster. I heard that the Rpi software guys have been working very hard, but of course the hardware upgrades (more, faster cores, etc) also help.
In other words, time heals everything - you problem will disappear as soon as Rpi4++ and Raspbian 10++ arrive.
Kivy - Wikipedia
Kivy is a free and open source Python library for developing mobile
apps and other multitouch application software with a natural user
interface (NUI). It is distributed under the terms of the MIT License,
and can run on Android, iOS, Linux, OS X, and Windows.
Kivy is the main framework developed by the Kivy organization,
alongside Python for Android, Kivy iOS, and several other libraries
meant to be used on all platforms. In 2012, Kivy got a $5000 grant
from the Python Software Foundation for porting it to Python 3.3. Kivy
also supports the Raspberry Pi which was funded through Bountysource.
The framework contains all the elements for building an application
extensive input support for mouse, keyboard, TUIO, and OS-specific
a graphic library using only OpenGL ES 2, and based on Vertex Buffer
Object and shaders,
a wide range of widgets that support multitouch,
an intermediate language (Kv) used to easily design custom widgets.
Kivy is the evolution of the PyMT project, and is recommended for new
The Kivy language (Kv) is a language dedicated to describing user
interface and interactions. As with other user interface markup
languages, it is possible to easily create a whole UI and attach
interaction. For example, to create a Loading dialog that includes a
file browser, and a Cancel / Load button, one could first create the
base widget in Python, and then construct the UI in Kv, ...