Hi, some responses:
1) All measurements were from OU Moodle 2.3 - we have very few core changes in 2.3 (none that should affect performance), but we do have oodles of custom plugins. We can't run tests against core Moodle 2.3 because this is using copies of our live data which is all based on our plugins.
2) Regarding the course view, I don't think this should be taken as a huge cause for concern compared to the others because although the course view page is a standard page, we have a custom course format and custom blocks so it is not really any more standard than any others here. (We also turned off many of the standard blocks.) By the way, ForumNG does make a DB request on the course view page (to check unread posts) but this does not use a transaction.
3) Regarding popularity of these pages, we actually chose the requests that are most popular on our live system (& are measured in our performance tracking system) to select the things tested, so yes all of these are very popular requests.
4) I was also surprised to see that the decrease was so uniform, because for example, although ForumNG does use transactions whenever it saves stuff that requires more than one query, when you just look at a page, I would have thought (have not checked in detail) it doesn't use transactions. However, bear in mind this was a test simulating realistic but high load, so we sent many requests in parallel - if the requests that DO use transactions put a slight extra load on the database, that might cause small delays for the ones that don't.
5) Possibly we do use transactions in some places even when doing read-only requests, this is something we could track by displaying something and looking at pages, if we wanted to optimise performance.
As I understand it, the plan is that the cacheing system in 2.4 should stop it doing those annoying table-structure checks it does on Postgres, and some other requests, which I would have thought should be enough to get back the performance lost here. Unfortunately, we won't be in a position to run performance tests against 2.4 to verify this until the necessary work has been done to include it in the OU's version, which won't be until well after it comes out. (Obviously, since we're doing our 2.3 tests now.)