Eager execution: Most of the ops are placed on host instead of device

Running Keras model in eager execution causes most of the ops to be placed on the host instead of device. Obviously, it causes eager execution to be much slower. Is it some issue, or that’s how eager execution works?

TensorFlow Profiler output:
Code : keras-io/mnist_convnet.py at master · keras-team/keras-io · GitHub
tf_profile_graph

Same code with run_eagerly=True in the model.compile().
tf_profile_eager

system: 5.10.42-1-MANJARO
version: tensorflow 2.5 (Manjaro repository)