What will be best (for performance) transaction isolation level? There, are two types of queries that are executed in my app:

DELETE FROM tbl1 WHERE user_id = 1;
INSERT INTO tbl1 VALUES (...), (...), ...;


and

UPDATE tbl2 WHERE id = 1 SET ...;
DELETE FROM tbl3 WHERE tbl2_id = 1;
INSERT INTO tbl3 VALUES (...), (...), ...;
DELETE FROM tbl4 WHERE tbl2_id = 1;
INSERT INTO tbl4 VALUES (...), (...), ...;


The ORM that I am using automatically sets transaction isolation level to REPEATABLE READ and I was wondering if it is a right choice for best performance. My goal is to only execute all or nothing (from 2 transaction above) and I don't care about any reads...

So which isolation level will be best for best performance in my case?
READ COMMITTED imposes fewer overheads as PostgreSQL does not have to do dependency tracking.

In practice the difference is likely to be minimal. 

Isolation level should be selected based on correctness, not performance. It's not possible to determine whether READ COMMITTED is sufficient from the queries provided, but I don't see a strong reason to suspect it not to be.

There are almost certainly many other ways to improve performance before playing with things like isolation levels anyway.