In PostgreSQL, TEMP tables are session-private. These tables are session based and stored in a special schema and visible only to the backend which has created. Memory management is controlled with temp_buffer(shared by all backends) in postgresql.conf.
You should check UNLOGGED tables of same family, these tables are visible to all the backends and data shared across backends.
Since, data is not written to WAL's you should get better performance.