Looks like you can run any Android on any device if you know what you’re doing.
We already know about some stuff regarding Android P, like navigation gestures, an overhauled Material design, private DNS etc. But you can only run the preview of Android P on the Pixel series.
However, this developer doesn’t seem to care about it and got Android P running on a Moto Z. In the short clip he posted, you can see the OS running smoothly. Originally, the Moto Z came with Marshmallow, and got updated to Nougat, and there are no plans for Android P. However, developer erfanoabdi managed to port Android P. Without going into too many details, he modified the existing system image from the Pixel, and that allowed him to flash the OS to the device. Pretty impressive stuff! Check the video below. But it does have some issues tho… camera, WiFi and radio do not work.