Hello! You need prepared transactions only if you need two-phase commit to provide distributed atomic transaction on multiple different databases. If you not need distributed transactions - you not needed prepared transactions at all. But if you need distributed transactions - here is no more choice regardless performance questions.
As say in documentation https://www.postgresql.org/docs/current/static/sql-prepare-transaction.html > Unless you're writing a transaction manager, you probably shouldn't be using > PREPARE TRANSACTION. Regards, Sergei