Not necessarily. I ran sysbench with InnoDB and manually switched off transactions, and it was a lot slower. I don't know why - didn't look into it.
upscaledb does use transactions. I.e. if you insert a row with a primary and a secondary index then upscaledb inserts two key/value pairs in two databases. All these operations are wrapped in Transactions. They are just not yet supported on SQL level.
In InnoDB everything is a transaction. If you do not begin/commit then each statement will be its own transaction.
Batching a group of statements together in a small transaction is usually better because it reduces log flushing. ACID only needs to be guaranteed on commit. Similarly, applying transactions in parallel is faster because of group commit.
To be fair, that's normal, if unfortunate, competitive behavior. "We meant to do that" is the rule until there's running code correcting the initial mistake.
Less forgivable is training a couple generations of developers that all the other mistakes they made are the Right Way...