Looking techempower's benchmark code, specifically the "dbs" and "update" functions (which are weighted highly), I think there's some optimization that could be done, like using .values() and .update() in more places.
https://github.com/TechEmpower/FrameworkBenchmarks/blob/mast...
Django ends up getting benchmarked against "uvicorn" which just uses raw sql, so yeah, of course raw sql is faster. Django has a raw sql option too, but they're not using it for the benchmark.
https://github.com/TechEmpower/FrameworkBenchmarks/blob/mast...